public final class ApplicationHandler extends Object
Container implementations use the ApplicationHandler API to process requests
by invoking the handle(requestContext)
method on a configured application handler instance.
ApplicationHandler provides two implementations of config that can be injected
into the application classes. The first is resource config which implements Configuration itself
and is configured by the user. The resource config is not modified by this application handler so the future reloads of the
application is not disrupted by providers found on a classpath. This config can
be injected only as ResourceConfig or Application. The second one can be injected into the
Configuration parameters / fields and contains info about all the properties / provider classes / provider instances
from the resource config and also about all the providers found during processing classes registered under
server properties. After the application handler is initialized both configurations are marked as
read-only.
ResourceConfig,
Configuration,
ContainerProvider| Constructor and Description |
|---|
ApplicationHandler()
Create a new Jersey application handler using a default configuration.
|
ApplicationHandler(Application application)
Create a new Jersey server-side application handler configured by an instance
of a
JAX-RS Application sub-class. |
ApplicationHandler(Class<? extends Application> jaxrsApplicationClass)
Create a new Jersey server-side application handler configured by a
JAX-RS Application (sub-)class. |
| Modifier and Type | Method and Description |
|---|---|
Future<ContainerResponse> |
apply(ContainerRequest requestContext)
Invokes a request and returns the
response future. |
Future<ContainerResponse> |
apply(ContainerRequest request,
OutputStream outputStream)
Invokes a request and returns the
response future. |
ResourceConfig |
getConfiguration()
Get the application configuration.
|
ServiceLocator |
getServiceLocator()
Returns
ServiceLocator relevant to current application. |
void |
handle(ContainerRequest requestContext)
The main request/response processing entry point for Jersey container implementations.
|
void |
registerAdditionalBinders(Iterable<Binder> binders)
Registers HK2 binders into the HK2 service register.
|
public ApplicationHandler()
public ApplicationHandler(Class<? extends Application> jaxrsApplicationClass)
JAX-RS Application (sub-)class.jaxrsApplicationClass - JAX-RS Application (sub-)class that will be
instantiated and used to configure the new Jersey
application handler.public ApplicationHandler(Application application)
JAX-RS Application sub-class.application - an instance of a JAX-RS Application (sub-)class that
will be used to configure the new Jersey application handler.public void registerAdditionalBinders(Iterable<Binder> binders)
binders - binders to be registered.public Future<ContainerResponse> apply(ContainerRequest requestContext)
response future.requestContext - request data.public Future<ContainerResponse> apply(ContainerRequest request, OutputStream outputStream)
response future.request - request data.outputStream - response output stream.public void handle(ContainerRequest requestContext)
The method invokes the request processing of the provided
container request context and uses the
container response writer to suspend & resume the processing
as well as write the response back to the container.
The the security context stored in the container request context
is bound as an injectable instance in the scope of the processed request context.
Also, any custom scope injections
are initialized in the current request scope.
requestContext - container request context of the current request.public ServiceLocator getServiceLocator()
ServiceLocator relevant to current application.ServiceLocator instance.public ResourceConfig getConfiguration()
Copyright © 2007-2012 Oracle Corporation. All Rights Reserved. Use is subject to license terms.