public class RuntimeResource extends Object implements ResourceModelComponent
resources
with the same path
regular expression. Runtime resource is constructed from resources
creating
the resource model
.
Runtime resource can have child runtime resources which are groups of child resources of all resources constructing this
runtime resource.
The following example shows how Runtime resource structure is built from Resource model:
@Path("{foo}") public class TemplateResourceFoo { @GET @Path("child") public String getFoo() {...} @Path("{x}") @GET public String getX() {...} @Path("{y}") @POST public String postY(String entity) {...} } @Path("{bar}") public class TemplateResourceBar { @Path("{z}") @PUT public String putZ(String entity) {...} }Will be represented by RuntimeResources:
line | RuntimeResource regex | Grouped Resources (paths) | Parent RuntimeResource (line) |
---|---|---|---|
1 | "/([^/]+?)" | Resource("{foo}"), Resource("{bar}") | no parent |
2 | "child" | Child Resource("child") | 1 |
3 | "/([^/]+?)" | Child Resource("{x}"), Child Resource("{y}"), Child Resource("{z}") | 1 |
Modifier and Type | Field and Description |
---|---|
static Comparator<RuntimeResource> |
COMPARATOR
Comparator of RuntimeResources based on rules respecting resource matching algorithm.
|
Modifier and Type | Method and Description |
---|---|
void |
accept(ResourceModelVisitor visitor)
A component should call the visitor back with an appropriate
visitor interface method to give it a chance to process.
|
List<RuntimeResource> |
getChildRuntimeResources()
Get child runtime resources of this resource.
|
List<? extends ResourceModelComponent> |
getComponents()
Should return all existing resource model sub-components.
|
String |
getFullPathRegex()
Get full regular expression of this runtime resource prefixed by regular expression of parent if present.
|
RuntimeResource |
getParent()
Get parent of this runtime resource.
|
List<Resource> |
getParentResources()
|
PathPattern |
getPathPattern()
Get path pattern for matching purposes.
|
String |
getRegex()
Get regular expression of path pattern of this runtime resource.
|
ResourceMethod |
getResourceLocator()
Return the resource locator of this resource.
|
List<ResourceMethod> |
getResourceLocators()
Get resource locators of all
resources of this runtime resource. |
List<ResourceMethod> |
getResourceMethods()
Get resource methods (excluding resource locators) of all
resources of this runtime resource. |
List<Resource> |
getResources()
Get resources creating this runtime resource.
|
public static final Comparator<RuntimeResource> COMPARATOR
public List<RuntimeResource> getChildRuntimeResources()
public String getRegex()
public List<ResourceMethod> getResourceMethods()
resources
of this runtime resource.public List<ResourceMethod> getResourceLocators()
resources
of this runtime resource.
Note that valid RuntimeResource should have only one resource locator. This method is used for validation purposes.public ResourceMethod getResourceLocator()
public RuntimeResource getParent()
public PathPattern getPathPattern()
public String getFullPathRegex()
public List<Resource> getParentResources()
resources
of resources
from this runtime resource. The returned list
is ordered so that the position of the parent resource in the returned list is the same as position of its child resource
in list returned by getResources()
. Simply said the order of lists returned
from getParentResources()
and getResources()
from parent-child point of view is the same. If the resource
has no parent then the element null
is in the list.null
elements if
this runtime resource is the parent resource.public List<Resource> getResources()
public void accept(ResourceModelVisitor visitor)
ResourceModelComponent
accept
in interface ResourceModelComponent
visitor
- resource model visitor.public List<? extends ResourceModelComponent> getComponents()
ResourceModelComponent
getComponents
in interface ResourceModelComponent
Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.