public class JerseyResourceContext extends Object implements ExtendedResourceContext
resource context
.Constructor and Description |
---|
JerseyResourceContext(Function<Class<?>,?> getOrCreateInstance,
Consumer<Object> injectInstance,
Consumer<org.glassfish.jersey.internal.inject.Binding> registerBinding)
Creates a new JerseyResourceContext.
|
Modifier and Type | Method and Description |
---|---|
<T> void |
bindResource(Class<T> resourceClass)
Binds
resourceClass into HK2 context as singleton. |
<T> void |
bindResourceIfSingleton(T resource)
Binds
resourceClass into HK2 context as singleton. |
<T> T |
getResource(Class<T> resourceClass) |
ResourceModel |
getResourceModel()
Return
resource model from which the current jersey application is built. |
<T> T |
initResource(T resource) |
void |
setResourceModel(ResourceModel resourceModel)
Set the
resource mode of the application associated with this context. |
<T> void |
unsafeBindResource(Class<T> resourceClass,
ContractProvider providerModel)
Bind a resource class in a HK2 context.
|
void |
unsafeBindResource(Object resource,
ContractProvider providerModel)
Bind a resource instance in a InjectionManager.
|
public JerseyResourceContext(Function<Class<?>,?> getOrCreateInstance, Consumer<Object> injectInstance, Consumer<org.glassfish.jersey.internal.inject.Binding> registerBinding)
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.public <T> T getResource(Class<T> resourceClass)
getResource
in interface ResourceContext
public <T> T initResource(T resource)
initResource
in interface ResourceContext
public <T> void bindResource(Class<T> resourceClass)
resourceClass
into 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.T
- type of the resource class.resourceClass
- resource class that should be bound. If the class is not
annotated with Singleton annotation
it
will be ignored by this method.public <T> void bindResourceIfSingleton(T resource)
resourceClass
into 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.resource
- singleton resource instance that should be bound as singleton. If the class is not
annotated with Singleton annotation
it
will be ignored by this method.public void unsafeBindResource(Object resource, ContractProvider providerModel)
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.
resource
- resource instance to be bound.providerModel
- provider model for the resource class. If not null
, the class
wil be bound as a contract provider too.public <T> void unsafeBindResource(Class<T> resourceClass, ContractProvider providerModel)
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.
T
- resource class type.resourceClass
- resource class to be bound.providerModel
- provider model for the class. If not null
, the class
wil be bound as a contract provider too.public ResourceModel getResourceModel()
ExtendedResourceContext
resource model
from which the current jersey application is built.getResourceModel
in interface ExtendedResourceContext
resource processor
.public void setResourceModel(ResourceModel resourceModel)
resource mode
of the application associated with this context.resourceModel
- Resource model on which the application
is based.Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.