Class ResourceMethod
java.lang.Object
org.glassfish.jersey.server.model.ResourceMethod
- All Implemented Interfaces:
NameBound,Consuming,Producing,ResourceModelComponent,Suspendable
public final class ResourceMethod
extends Object
implements ResourceModelComponent, Producing, Consuming, Suspendable, NameBound
Model of a method available on a resource. Covers resource method, sub-resource
method and sub-resource locator.
- Author:
- Marek Potociar
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classResource method model builder.static enumResource method classification based on the recognized JAX-RS resource method types. -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(ResourceModelVisitor visitor) A component should call the visitor back with an appropriate visitor interface method to give it a chance to process.List<? extends ResourceModelComponent>Should return all existing resource model sub-components.Get the consumed media types supported by the component.Get the associated HTTP method.Get the invocable method model.Collection<Class<? extends Annotation>>Get the collection of name bindings attached to this component.Get the parent resource for this resource method model.Get the produced media types supported by the component.longGet the suspend timeout value in the giventime unit.Get the suspendtimeout valuetime unit.getType()Get the JAX-RS method type.booleanGet the flag indicating whether the resource method is extended or is a core of exposed RESTful API.booleanCheck if the component is marked to be executed asynchronously by using an internal Jerseyexecutor service.booleanCheck if the component is bound or not.booleanisSse()Check whether the resource method will be producing Server-sent event stream.booleanCheck if the component is marked for suspending.toString()
-
Method Details
-
getParent
Get the parent resource for this resource method model.May return
nullin case the resource method is not bound to an existing resource. This is typical for resource method models returned directly from theResourceMethod.Builder.build()method.- Returns:
- parent resource, or
nullif there is no parent resource associated with the method. - Since:
- 2.1
-
getType
Get the JAX-RS method type.- Returns:
- the JAX-RS method type.
-
getHttpMethod
Get the associated HTTP method.May return
nullin case the method represents a sub-resource locator.- Returns:
- the associated HTTP method, or
nullin case this method represents a sub-resource locator.
-
getInvocable
Get the invocable method model.- Returns:
- invocable method model.
-
isExtended
public boolean isExtended()Get the flag indicating whether the resource method is extended or is a core of exposed RESTful API.Extended resource model components are helper components that are not considered as a core of a RESTful API. These can be for example
OPTIONSresource methods added bymodel processorsorapplication.wadlresource producing the WADL. Both resource are rather supportive than the core of RESTful API.If not set the resource will not be defined as extended by default.
- Returns:
trueif the method is extended.- Since:
- 2.5.1
- See Also:
-
getConsumedTypes
Description copied from interface:ConsumingGet the consumed media types supported by the component.- Specified by:
getConsumedTypesin interfaceConsuming- Returns:
- immutable collection of supported consumed media types.
-
getProducedTypes
Description copied from interface:ProducingGet the produced media types supported by the component.- Specified by:
getProducedTypesin interfaceProducing- Returns:
- immutable collection of supported produced media types.
-
getSuspendTimeout
public long getSuspendTimeout()Description copied from interface:SuspendableGet the suspend timeout value in the giventime unit.- Specified by:
getSuspendTimeoutin interfaceSuspendable- Returns:
- suspend timeout value.
-
getSuspendTimeoutUnit
Description copied from interface:SuspendableGet the suspendtimeout valuetime unit.- Specified by:
getSuspendTimeoutUnitin interfaceSuspendable- Returns:
- time unit of the suspend timeout value.
-
isSuspendDeclared
public boolean isSuspendDeclared()Description copied from interface:SuspendableCheck if the component is marked for suspending.- Specified by:
isSuspendDeclaredin interfaceSuspendable- Returns:
trueif the component is marked for suspending,falseotherwise.
-
isSse
public boolean isSse()Check whether the resource method will be producing Server-sent event stream.- Returns:
trueif the resource method produces Server-sent event stream,falseotherwise.
-
isManagedAsyncDeclared
public boolean isManagedAsyncDeclared()Description copied from interface:SuspendableCheck if the component is marked to be executed asynchronously by using an internal Jerseyexecutor service.- Specified by:
isManagedAsyncDeclaredin interfaceSuspendable- Returns:
trueif the component is marked for managed asynchronous execution,falseotherwise.
-
getComponents
Description copied from interface:ResourceModelComponentShould return all existing resource model sub-components.- Specified by:
getComponentsin interfaceResourceModelComponent- Returns:
- list of all sub-components
-
accept
Description copied from interface:ResourceModelComponentA component should call the visitor back with an appropriate visitor interface method to give it a chance to process.- Specified by:
acceptin interfaceResourceModelComponent- Parameters:
visitor- resource model visitor.
-
isNameBound
public boolean isNameBound()Description copied from interface:NameBoundCheck if the component is bound or not.- Specified by:
isNameBoundin interfaceNameBound- Returns:
trueif the component is bound,falseotherwise.
-
getNameBindings
Description copied from interface:NameBoundGet the collection of name bindings attached to this component.- Specified by:
getNameBindingsin interfaceNameBound- Returns:
- collection of name binding annotation types.
-
toString
-