Class JerseyResourceContext
java.lang.Object
org.glassfish.jersey.server.internal.JerseyResourceContext
- All Implemented Interfaces:
ResourceContext,ExtendedResourceContext
Jersey implementation of JAX-RS
resource context.- Author:
- Marek Potociar
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T> voidbindResource(Class<T> resourceClass) BindsresourceClassinto HK2 context as singleton.<T> voidbindResourceIfSingleton(T resource) BindsresourceClassinto HK2 context as singleton.<T> TgetResource(Class<T> resourceClass) Returnresource modelfrom which the current jersey application is built.<T> TinitResource(T resource) voidsetResourceModel(ResourceModel resourceModel) Set theresource modeof the application associated with this context.<T> voidunsafeBindResource(Class<T> resourceClass, ContractProvider providerModel) Bind a resource class in a HK2 context.voidunsafeBindResource(Object resource, ContractProvider providerModel) Bind a resource instance in a InjectionManager.
-
Constructor Details
-
JerseyResourceContext
public JerseyResourceContext(Function<Class<?>, ?> getOrCreateInstance, Consumer<Object> injectInstance, Consumer<org.glassfish.jersey.internal.inject.Binding> registerBinding) Creates a new JerseyResourceContext.- Parameters:
getOrCreateInstance- function to create or get existing instance.injectInstance- consumer to inject instances into an unmanaged instance.registerBinding- consumer to register a new binding into injection manager.
-
-
Method Details
-
getResource
- Specified by:
getResourcein interfaceResourceContext
-
initResource
public <T> T initResource(T resource) - Specified by:
initResourcein interfaceResourceContext
-
bindResource
BindsresourceClassinto HK2 context as singleton. The bound class is then cached internally so that any sub-sequent attempt to bind that class as a singleton is silently ignored.- Type Parameters:
T- type of the resource class.- Parameters:
resourceClass- resource class that should be bound. If the class is not annotated withSingleton annotationit will be ignored by this method.
-
bindResourceIfSingleton
public <T> void bindResourceIfSingleton(T resource) BindsresourceClassinto HK2 context as singleton. The bound class is then cached internally so that any sub-sequent attempt to bind that class as a singleton is silently ignored.- Parameters:
resource- singleton resource instance that should be bound as singleton. If the class is not annotated withSingleton annotationit will be ignored by this method.
-
unsafeBindResource
Bind a resource instance in a InjectionManager. The bound resource instance is internally cached to make sure any sub-sequent attempts to service the class are silently ignored.WARNING: This version of method is not synchronized as well as the cache is not checked for existing bindings before the resource is bound and cached.
- Parameters:
resource- resource instance to be bound.providerModel- provider model for the resource class. If notnull, the class wil be bound as a contract provider too.
-
unsafeBindResource
Bind a resource class in a HK2 context. The bound resource class is internally cached to make sure any sub-sequent attempts to bind the class are silently ignored.WARNING: This version of method is not synchronized as well as the cache is not checked for existing bindings before the resource is bound and cached.
- Type Parameters:
T- resource class type.- Parameters:
resourceClass- resource class to be bound.providerModel- provider model for the class. If notnull, the class wil be bound as a contract provider too.
-
getResourceModel
Description copied from interface:ExtendedResourceContextReturnresource modelfrom which the current jersey application is built.- Specified by:
getResourceModelin interfaceExtendedResourceContext- Returns:
- Resource model with all resources including resources created
by
resource processor.
-
setResourceModel
Set theresource modeof the application associated with this context.- Parameters:
resourceModel- Resource model on which theapplicationis based.
-