The origin IP address of the request.
Collection of subscriptions to ContainerBlueprint events. We keep this around so we can remove the subscriptions when the container is destroyed.
If true, the response lifecycle will not time out and send errors.
The native Node.js request.
The cookie manager for the request.
Collection of factories registered with this container.
The fully-qualified URL of the request.
Collection of singleton instances produced by this container.
True if the request was made via XMLHttpRequest.
The media types accepted by the client.
The HTTP verb of the request.
Input parsed from the request
The URL path, stripped of query params.
The request HTTP protocol version.
The inferred query data.
The raw parsed query data from the request.
The associated response.
True if the request was made via TLS.
The native Node.js response.
Collection of static-class overrides registered with this container.
Files parsed from the request.
The URL suffix of the request.
Collection of created objects that should have lifecycle events called on them, if they still exist.
Collection of callbacks waiting for a dependency key to be resolved.
The 100 most recent dependency keys that were
make'd. Used to help with
debugging cyclic dependency errors.
List of dependency keys currently being
make'd as a reverse stack.
This is used to detect dependency cycles.
Set to true when we're realizing a container.
Used to prevent infinite recursion when
getContainer() is accidentally called
from somewhere within the
Get the UniversalPath instance for a file uploaded in the given field on the request.
Get a collection of dependency keys required by the given target, if it is registered with this container.
Get the static class overriding the base class.
Returns true if a static override exists for the given base class.
Create an instance of the given target. The target can either be a DependencyKey registered with this container (in which case, the singleton value will be returned), or an instantiable class.
If the instantiable class has the Injectable decorator, its injectable parameters will be automatically injected into the instance.
Get the registered instance of the static override of a given class.
Given a factory and manually-provided parameters, resolve the dependencies for the factory and produce its value.
Register a basic instantiable class as a standard Factory with this container.
Register a given factory with the container.
Register a basic instantiable class as a standard Factory with this container, identified by a string name rather than static class.
unique name to identify the factory in the container
Register a static class as an override of some base class.
Find the factory for the given key, if one is registered with this container.
Resolve the dependency key. If a singleton value for that key already exists in this container, return that value. Otherwise, use the factory and given parameters to produce and return the value.
Execute a closure on this container, disabling parent-resolution. Effectively, the closure will have access to this container as if it were NOT a scoped container, and only contained its factories.
Create a new scoped container based on a parent container instance.
Given a Container instance, apply the ContainerBlueprint to it.
A class that represents an HTTP request from a client.