org.jboss.resteasy.links
Annotation Type LinkResource


@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.

Author:
Stéphane Épardaud

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.
 

value

public abstract java.lang.Class<?> value
The type of entity that should receive links for this service. Defaults to the request's body entity type, or the response entity type if they are not a Collection or a Response.

Default:
java.lang.Void.class

rel

public abstract java.lang.String rel
The link relation. This defaults as follows:
list
GET for ResourceFacade entities or methods that return a Collection
self
GET for non-ResourceFacade and non-Collection entities
remove
DELETE
add
POST
update
PUT

Default:
""

pathParameters

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.

Default:
{}

constraint

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).

Default:
""


Copyright © 2010. All Rights Reserved.