|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT |
@Target(value=METHOD) @Retention(value=RUNTIME) @Documented public @interface LinkResource
Use this to mark JAX-RS methods that should be included in the REST service discovery. All parameters are optional and may be guessed from the method, whenever possible.
Optional Element Summary | |
---|---|
java.lang.String |
constraint
EL expression that should return a boolean indicating whether or not this service link should be used. |
java.lang.String[] |
pathParameters
List of path parameter EL from the leftmost URI path parameter to the rightmost. |
java.lang.String |
rel
The link relation. |
java.lang.Class<?> |
value
The type of entity that should receive links for this service. |
public abstract java.lang.Class<?> value
Collection
or a Response
.
public abstract java.lang.String rel
GET
for ResourceFacade
entities or methods that return a Collection
GET
for non-ResourceFacade
and non-Collection
entitiesDELETE
POST
PUT
public abstract java.lang.String[] pathParameters
List of path parameter EL from the leftmost URI path parameter to the rightmost. These can be
normal constant string values or EL expressions (${foo.bar}) that will resolve using either the
default EL context, or the context specified by a @LinkELProvider
annotation. The default context
resolves any non-qualified variable to properties of the response entity for whom we're discovering
links, and has an extra binding for the "this" variable which is the response entity as well.
If there are too many parameters for the current path, only the leftmost useful ones will be used.
Defaults to using discovery of values from the entity itself with @ResourceID
,
@ResourceIDs
, JAXB's @XmlID or JPA's @Id and @ParentResource
.
This is not used for ResourceFacade
entities, which provide their own list of path parameters.
public abstract java.lang.String constraint
EL expression that should return a boolean indicating whether or not this service link should be used.
This is useful for security constraints limiting access to resources. Defaults to using the
@RolesAllowed
annotation using the current
SecurityContext
to check the current user's permissions.
This can be a normal constant boolean value ("true" or "false") or an EL expression
(${foo.bar}) that will resolve using either the
default EL context, or the context specified by a @LinkELProvider
annotation.
For entities that are not ResourceFacade
, the default context
resolves any non-qualified variable to properties of the response entity for whom we're discovering
links, and has an extra binding for the "this" variable which is the response entity as well.
For entities that are a ResourceFacade
, the default context
has single binding for the "this" variable which is the ResourceFacade
's entity type
(Class
instance).
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT |