public class ResourceBinderImpl extends Object implements ResourceBinder
| Modifier and Type | Field and Description |
|---|---|
protected static Comparator<ObjectFactory<AbstractResourceDescriptor>> |
RESOURCE_COMPARATOR
Resource's comparator.
|
| Constructor and Description |
|---|
ResourceBinderImpl() |
| Modifier and Type | Method and Description |
|---|---|
void |
addResource(Class<?> resourceClass,
javax.ws.rs.core.MultivaluedMap<String,String> properties)
Register supplied class as per-request root resource if it has valid
JAX-RS annotations and no one resource with the same UriPattern already
registered.
|
void |
addResource(ObjectFactory<AbstractResourceDescriptor> resourceFactory)
Register supplied root resource if no one resource with the same
UriPattern already registered.
|
void |
addResource(Object resource,
javax.ws.rs.core.MultivaluedMap<String,String> properties)
Register supplied Object as singleton root resource if it has valid JAX-RS
annotations and no one resource with the same UriPattern already
registered.
|
void |
addResource(String uriPattern,
Class<?> resourceClass,
javax.ws.rs.core.MultivaluedMap<String,String> properties)
Register supplied class as per-request root resource if it has valid JAX-RS annotations and no one resource with the same
uriPattern already registered. |
void |
addResource(String uriPattern,
Object resource,
javax.ws.rs.core.MultivaluedMap<String,String> properties)
Register supplied object as singleton root resource if it has valid JAX-RS annotations and no one resource with the same
uriPattern already registered. |
void |
clear()
Clear the list of resources.
|
ObjectFactory<AbstractResourceDescriptor> |
getMatchedResource(String requestPath,
List<String> parameterValues)
Get root resource matched to
requestPath. |
List<ObjectFactory<AbstractResourceDescriptor>> |
getResources()
Get list of all registered root resources.
|
int |
getSize() |
ObjectFactory<AbstractResourceDescriptor> |
removeResource(Class<?> clazz)
Remove root resource of supplied class from root resource collection.
|
ObjectFactory<AbstractResourceDescriptor> |
removeResource(String path)
Remove root resource with specified UriTemplate from root resource
collection.
|
protected static final Comparator<ObjectFactory<AbstractResourceDescriptor>> RESOURCE_COMPARATOR
public void addResource(Class<?> resourceClass, javax.ws.rs.core.MultivaluedMap<String,String> properties)
ResourceBinderaddResource in interface ResourceBinderresourceClass - class of candidate to be root resourceproperties - optional resource properties. It may contains additional
info about resource, e.g. description of resource, its
responsibility, etc. This info can be retrieved
ObjectModel.getProperties(). This parameter may be
nullObjectModel.getProperties(),
ObjectModel.getProperty(String)public void addResource(String uriPattern, Class<?> resourceClass, javax.ws.rs.core.MultivaluedMap<String,String> properties)
ResourceBinderuriPattern already registered. Resource class doesn't need to be annotated with @Path annotation (but may be).
Anyway uriPattern parameter overwrites value of @Path annotation.addResource in interface ResourceBinderuriPattern - class of candidate to be root resourceresourceClass - class of candidate to be root resourceproperties - optional resource properties. It may contains additional
info about resource, e.g. description of resource, its
responsibility, etc. This info can be retrieved
ObjectModel.getProperties(). This parameter may be
nullObjectModel.getProperties(),
ObjectModel.getProperty(String)public void addResource(Object resource, javax.ws.rs.core.MultivaluedMap<String,String> properties)
ResourceBinderaddResource in interface ResourceBinderresource - candidate to be root resourceproperties - optional resource properties. It may contains additional
info about resource, e.g. description of resource, its
responsibility, etc. This info can be retrieved
ObjectModel.getProperties(). This parameter may be
nullObjectModel.getProperties(),
ObjectModel.getProperty(String)public void addResource(String uriPattern, Object resource, javax.ws.rs.core.MultivaluedMap<String,String> properties)
ResourceBinderuriPattern already registered. Resource class doesn't need to be annotated with @Path annotation (but may be).
Anyway uriPattern parameter overwrite value of @Path annotation.addResource in interface ResourceBinderresource - candidate to be root resourceproperties - optional resource properties. It may contains additional
info about resource, e.g. description of resource, its
responsibility, etc. This info can be retrieved
ObjectModel.getProperties(). This parameter may be
nullObjectModel.getProperties(),
ObjectModel.getProperty(String)public void addResource(ObjectFactory<AbstractResourceDescriptor> resourceFactory)
ResourceBinderaddResource in interface ResourceBinderresourceFactory - root resourcepublic void clear()
public ObjectFactory<AbstractResourceDescriptor> getMatchedResource(String requestPath, List<String> parameterValues)
requestPath.getMatchedResource in interface ResourceBinderrequestPath - request pathparameterValues - see ApplicationContext.getParameterValues()requestPath or
nullpublic List<ObjectFactory<AbstractResourceDescriptor>> getResources()
ResourceBindergetResources in interface ResourceBinderpublic int getSize()
getSize in interface ResourceBinderpublic ObjectFactory<AbstractResourceDescriptor> removeResource(Class<?> clazz)
ResourceBinderremoveResource in interface ResourceBinderclazz - root resource classnull if resource of specified
class not foundpublic ObjectFactory<AbstractResourceDescriptor> removeResource(String path)
ResourceBinderremoveResource in interface ResourceBinderpath - root resource pathnull if resource for specified
template not foundCopyright © 2012–2016 Codenvy, S.A.. All rights reserved.