org.baswell.routes
Annotation Type Routes


@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface Routes

Route metadata for all route methods within the class.


Optional Element Summary
 java.lang.String defaultContentType
           Default content type returned for routes in this class.
 MediaType[] defaultRespondsToMedia
           The default type of media all routes in this class know how to serve.
 boolean[] defaultReturnedStringIsContent
           If true by default strings returned from routes of this annotated class are sent back as the content.
 java.lang.String forwardPath
           If provided this value will be prepended to all forward paths returned by routes of the annotated class.
 boolean[] routeUnannotatedPublicMethods
           Should public methods be candidates for HTTP routes if they aren't annotated with Route? If true only unannotated, public methods of the immediate class will be used.
 java.lang.String[] tags
           Tags to apply to all routes within the annotated class.
 java.lang.String[] value
           The base matching URI paths.
 

value

public abstract java.lang.String[] value

The base matching URI paths. If provided these values will be prepended to all Route.value() paths. Multiple values can be specified here here so that a routes class supports multiple root urls.

Default:
{}

forwardPath

public abstract java.lang.String forwardPath

If provided this value will be prepended to all forward paths returned by routes of the annotated class.

See Also:
RoutesConfiguration.rootForwardPath
Default:
""

defaultRespondsToMedia

public abstract MediaType[] defaultRespondsToMedia

The default type of media all routes in this class know how to serve. Overridden by Route.respondsToMediaRequests().

Default:
{}

routeUnannotatedPublicMethods

public abstract boolean[] routeUnannotatedPublicMethods

Should public methods be candidates for HTTP routes if they aren't annotated with Route? If true only unannotated, public methods of the immediate class will be used. Public, unannotated methods of extended classes will not be candidates (ex. Object.equals(Object). If this attribute is not explicitly set then the RoutesConfiguration.routeUnannotatedPublicMethods will be used.

This should be used as a single value. Only the first value in the array will be used.

See Also:
RoutesConfiguration.routeUnannotatedPublicMethods
Default:
{}

defaultContentType

public abstract java.lang.String defaultContentType

Default content type returned for routes in this class. This can be overridden in Route.contentType(), or by explicitly calling ServletResponse.setContentType(String) in the route method.

Default:
""

defaultReturnedStringIsContent

public abstract boolean[] defaultReturnedStringIsContent

If true by default strings returned from routes of this annotated class are sent back as the content. If false by default returned strings are interpreted as file paths that the request is forwarded to. This can be overridden in Route.returnedStringIsContent().

This should be used as a single value. Only the first value in the array will be used.

See Also:
RoutesConfiguration.defaultReturnedStringIsContent, Route.returnedStringIsContent()
Default:
{}

tags

public abstract java.lang.String[] tags

Tags to apply to all routes within the annotated class. If a route method defines its own tags, they will be added to the tags defined here. Tags defined here will be added to any tags defined explicitly in Route.tags().

See Also:
BeforeRoute.exceptTags(), BeforeRoute.onlyTags(), AfterRoute.exceptTags(), AfterRoute.onlyTags()
Default:
{}