Class RuntimeModelBuilder
java.lang.Object
org.glassfish.jersey.server.internal.routing.RuntimeModelBuilder
This is a common base for root resource and sub-resource runtime model
builder.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Value<RuntimeLocatorModelBuilder> private final MessageBodyWorkersprivate final ProcessingProvidersprivate final ResourceMethodInvoker.Builder -
Constructor Summary
ConstructorsConstructorDescriptionRuntimeModelBuilder(JerseyResourceContext resourceContext, javax.ws.rs.core.Configuration config, MessageBodyWorkers messageBodyWorkers, Collection<ValueParamProvider> valueSuppliers, ProcessingProviders processingProviders, ResourceMethodInvoker.Builder resourceMethodInvokerBuilder, Iterable<ModelProcessor> modelProcessors, Function<Class<?>, ?> createServiceFunction) Create a new instance of the runtime model builder. -
Method Summary
Modifier and TypeMethodDescriptionbuildModel(RuntimeResourceModel resourceModel, boolean subResourceMode) Build a runtime model of routers based on theresourceModel.private EndpointcreateInflector(ResourceMethod method) private RoutercreateMethodRouter(ResourceMethod resourceMethod) private List<MethodRouting> createResourceMethodRouters(RuntimeResource runtimeResource, boolean subResourceMode) private RoutercreateRootRouter(PathMatchingRouterBuilder lastRoutedBuilder, boolean subResourceMode) private ResourcegetLocatorResource(RuntimeResource resource) private PushMatchedTemplateRoutergetTemplateRouter(boolean subResourceMode, UriTemplate parentTemplate, UriTemplate childTemplate) private PushMatchedTemplateRoutergetTemplateRouterForChildLocator(boolean subResourceMode, RuntimeResource child) private PathToRouterBuilderstartNextRoute(PathMatchingRouterBuilder currentRouterBuilder, PathPattern routingPattern)
-
Field Details
-
resourceMethodInvokerBuilder
-
messageBodyWorkers
-
processingProviders
-
locatorBuilder
-
-
Constructor Details
-
RuntimeModelBuilder
public RuntimeModelBuilder(JerseyResourceContext resourceContext, javax.ws.rs.core.Configuration config, MessageBodyWorkers messageBodyWorkers, Collection<ValueParamProvider> valueSuppliers, ProcessingProviders processingProviders, ResourceMethodInvoker.Builder resourceMethodInvokerBuilder, Iterable<ModelProcessor> modelProcessors, Function<Class<?>, ?> createServiceFunction) Create a new instance of the runtime model builder.- Parameters:
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.
-
-
Method Details
-
createMethodRouter
-
createInflector
-
createRootRouter
private Router createRootRouter(PathMatchingRouterBuilder lastRoutedBuilder, boolean subResourceMode) -
buildModel
Build a runtime model of routers based on theresourceModel.- Parameters:
resourceModel- Resource model from which the runtime model should be built.subResourceMode- True if theresourceModelis a sub resource model returned from sub resource locator.- Returns:
- Root router of the router structure representing the resource model.
-
getTemplateRouterForChildLocator
private PushMatchedTemplateRouter getTemplateRouterForChildLocator(boolean subResourceMode, RuntimeResource child) -
getTemplateRouter
private PushMatchedTemplateRouter getTemplateRouter(boolean subResourceMode, UriTemplate parentTemplate, UriTemplate childTemplate) -
getLocatorResource
-
createResourceMethodRouters
private List<MethodRouting> createResourceMethodRouters(RuntimeResource runtimeResource, boolean subResourceMode) -
startNextRoute
private PathToRouterBuilder startNextRoute(PathMatchingRouterBuilder currentRouterBuilder, PathPattern routingPattern)
-