final class RuntimeLocatorModelBuilder
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private static class |
RuntimeLocatorModelBuilder.LocatorCacheKey |
Modifier and Type | Field and Description |
---|---|
private com.google.common.cache.LoadingCache<RuntimeLocatorModelBuilder.LocatorCacheKey,LocatorRouting> |
cache |
private javax.ws.rs.core.Configuration |
config |
private java.util.function.Function<java.lang.Class<?>,?> |
createServiceFunction |
private boolean |
disableValidation |
private boolean |
enableJerseyResourceCaching |
private boolean |
ignoreValidationErrors |
private static java.util.logging.Logger |
LOGGER |
private MessageBodyWorkers |
messageBodyWorkers |
private java.lang.Iterable<ModelProcessor> |
modelProcessors |
private JerseyResourceContext |
resourceContext |
private RuntimeModelBuilder |
runtimeModelBuilder |
private java.util.Collection<ValueParamProvider> |
valueSuppliers |
Constructor and Description |
---|
RuntimeLocatorModelBuilder(javax.ws.rs.core.Configuration config,
MessageBodyWorkers messageBodyWorkers,
java.util.Collection<ValueParamProvider> valueSuppliers,
JerseyResourceContext resourceContext,
RuntimeModelBuilder runtimeModelBuilder,
java.lang.Iterable<ModelProcessor> modelProcessors,
java.util.function.Function<java.lang.Class<?>,?> createServiceFunction)
Create a new instance of the runtime model builder for sub-resource locators.
|
Modifier and Type | Method and Description |
---|---|
private LocatorRouting |
buildRouting(Resource subResource) |
private LocatorRouting |
createRouting(java.lang.Class<?> locatorClass) |
private ResourceModel |
enhance(ResourceModel subResourceModel) |
(package private) Router |
getRouter(ResourceMethod resourceMethod)
Obtain a sub-resource locator router for given resource method.
|
(package private) LocatorRouting |
getRouting(java.lang.Class<?> locatorClass)
Build (or obtain from cache) a resource model and router for given sub-resource locator class.
|
(package private) LocatorRouting |
getRouting(Resource subresource)
Build (or obtain from cache) a resource model and router for given sub-resource injectionManager
resource . |
(package private) boolean |
isCached(java.lang.Class<?> srlClass)
Check if the model builder contains a cached [locator, router] pair for a given sub-resource locator class.
|
private void |
validateResource(ResourceModelComponent component) |
private void |
validateSubResource(ResourceModel subResourceModel) |
private static final java.util.logging.Logger LOGGER
private final javax.ws.rs.core.Configuration config
private final RuntimeModelBuilder runtimeModelBuilder
private final MessageBodyWorkers messageBodyWorkers
private final java.util.Collection<ValueParamProvider> valueSuppliers
private final JerseyResourceContext resourceContext
private final java.lang.Iterable<ModelProcessor> modelProcessors
private final java.util.function.Function<java.lang.Class<?>,?> createServiceFunction
private final com.google.common.cache.LoadingCache<RuntimeLocatorModelBuilder.LocatorCacheKey,LocatorRouting> cache
private final boolean disableValidation
private final boolean ignoreValidationErrors
private final boolean enableJerseyResourceCaching
RuntimeLocatorModelBuilder(javax.ws.rs.core.Configuration config, MessageBodyWorkers messageBodyWorkers, java.util.Collection<ValueParamProvider> valueSuppliers, JerseyResourceContext resourceContext, RuntimeModelBuilder runtimeModelBuilder, java.lang.Iterable<ModelProcessor> modelProcessors, java.util.function.Function<java.lang.Class<?>,?> createServiceFunction)
config
- configuration of the application.messageBodyWorkers
- message body workers registred in an application.valueSuppliers
- all value registered value providers.resourceContext
- resource context to bind sub-resource locator singleton instances.runtimeModelBuilder
- runtime model builder to build routers for locator models.modelProcessors
- all registered model processors.createServiceFunction
- function that is able to create and initialize new service.Router getRouter(ResourceMethod resourceMethod)
resourceMethod
- resource method to obtain the router for.LocatorRouting getRouting(java.lang.Class<?> locatorClass)
locatorClass
- sub-resource locator class to built model and router for.LocatorRouting getRouting(Resource subresource)
resource
.subresource
- sub-resource injectionManager resource to built model and router for.boolean isCached(java.lang.Class<?> srlClass)
srlClass
- sub-resource locator class.true
if the [locator, router] pair for the sub-resource locator class is present in the cache,
false
otherwise.private LocatorRouting createRouting(java.lang.Class<?> locatorClass)
private LocatorRouting buildRouting(Resource subResource)
private void validateResource(ResourceModelComponent component)
private ResourceModel enhance(ResourceModel subResourceModel)
private void validateSubResource(ResourceModel subResourceModel)