final class RuntimeModelBuilder
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private Value<RuntimeLocatorModelBuilder> |
locatorBuilder |
private MessageBodyWorkers |
messageBodyWorkers |
private ProcessingProviders |
processingProviders |
private ResourceMethodInvoker.Builder |
resourceMethodInvokerBuilder |
Constructor and Description |
---|
RuntimeModelBuilder(JerseyResourceContext resourceContext,
javax.ws.rs.core.Configuration config,
MessageBodyWorkers messageBodyWorkers,
java.util.Collection<ValueParamProvider> valueSuppliers,
ProcessingProviders processingProviders,
ResourceMethodInvoker.Builder resourceMethodInvokerBuilder,
java.lang.Iterable<ModelProcessor> modelProcessors,
java.util.function.Function<java.lang.Class<?>,?> createServiceFunction)
Create a new instance of the runtime model builder.
|
Modifier and Type | Method and Description |
---|---|
Router |
buildModel(RuntimeResourceModel resourceModel,
boolean subResourceMode)
Build a runtime model of routers based on the
resourceModel . |
private Endpoint |
createInflector(ResourceMethod method) |
private Router |
createMethodRouter(ResourceMethod resourceMethod) |
private java.util.List<MethodRouting> |
createResourceMethodRouters(RuntimeResource runtimeResource,
boolean subResourceMode) |
private Router |
createRootRouter(PathMatchingRouterBuilder lastRoutedBuilder,
boolean subResourceMode) |
private Resource |
getLocatorResource(RuntimeResource resource) |
private PushMatchedTemplateRouter |
getTemplateRouter(boolean subResourceMode,
UriTemplate parentTemplate,
UriTemplate childTemplate) |
private PushMatchedTemplateRouter |
getTemplateRouterForChildLocator(boolean subResourceMode,
RuntimeResource child) |
private PathToRouterBuilder |
startNextRoute(PathMatchingRouterBuilder currentRouterBuilder,
PathPattern routingPattern) |
private final ResourceMethodInvoker.Builder resourceMethodInvokerBuilder
private final MessageBodyWorkers messageBodyWorkers
private final ProcessingProviders processingProviders
private final Value<RuntimeLocatorModelBuilder> locatorBuilder
public RuntimeModelBuilder(JerseyResourceContext resourceContext, javax.ws.rs.core.Configuration config, MessageBodyWorkers messageBodyWorkers, java.util.Collection<ValueParamProvider> valueSuppliers, ProcessingProviders processingProviders, ResourceMethodInvoker.Builder resourceMethodInvokerBuilder, java.lang.Iterable<ModelProcessor> modelProcessors, java.util.function.Function<java.lang.Class<?>,?> createServiceFunction)
resourceContext
- Jersey resource context.config
- configuration of the application.messageBodyWorkers
- message body messageBodyWorkers.processingProviders
- processing providers.resourceMethodInvokerBuilder
- method invoker builder.modelProcessors
- all registered model processors.createServiceFunction
- function that is able to create and initialize new service.private Router createMethodRouter(ResourceMethod resourceMethod)
private Endpoint createInflector(ResourceMethod method)
private Router createRootRouter(PathMatchingRouterBuilder lastRoutedBuilder, boolean subResourceMode)
public Router buildModel(RuntimeResourceModel resourceModel, boolean subResourceMode)
resourceModel
.resourceModel
- Resource model from which the runtime model should be built.subResourceMode
- True if the resourceModel
is a sub resource model returned from sub resource locator.private PushMatchedTemplateRouter getTemplateRouterForChildLocator(boolean subResourceMode, RuntimeResource child)
private PushMatchedTemplateRouter getTemplateRouter(boolean subResourceMode, UriTemplate parentTemplate, UriTemplate childTemplate)
private Resource getLocatorResource(RuntimeResource resource)
private java.util.List<MethodRouting> createResourceMethodRouters(RuntimeResource runtimeResource, boolean subResourceMode)
private PathToRouterBuilder startNextRoute(PathMatchingRouterBuilder currentRouterBuilder, PathPattern routingPattern)