Package org.restlet.routing
Class Extractor
- java.lang.Object
-
- org.restlet.Restlet
-
- org.restlet.routing.Filter
-
- org.restlet.routing.Extractor
-
- All Implemented Interfaces:
Uniform
public class Extractor extends Filter
Filter extracting attributes from a call. Multiple extractions can be defined, based on the query string of the resource reference, on the request form (ex: posted from a browser) or on cookies.
Concurrency note: instances of this class or its subclasses can be invoked by several threads at the same time and therefore must be thread-safe. You should be especially careful when storing state in member variables.- Author:
- Jerome Louvel
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected int
beforeHandle(Request request, Response response)
Allows filtering before its handling by the target Restlet.void
extractFromCookie(java.lang.String attribute, java.lang.String cookieName, boolean first)
Extracts an attribute from the request cookies.void
extractFromEntity(java.lang.String attribute, java.lang.String parameter, boolean first)
Extracts an attribute from the request entity form.void
extractFromQuery(java.lang.String attribute, java.lang.String parameter, boolean first)
Extracts an attribute from the query string of the resource reference.-
Methods inherited from class org.restlet.routing.Filter
afterHandle, doHandle, getNext, handle, hasNext, setNext, setNext, start, stop
-
Methods inherited from class org.restlet.Restlet
createFinder, finalize, getApplication, getAuthor, getContext, getDescription, getFinderClass, getLogger, getName, getOwner, handle, handle, handle, isStarted, isStopped, setAuthor, setContext, setDescription, setFinderClass, setName, setOwner
-
-
-
-
Method Detail
-
beforeHandle
protected int beforeHandle(Request request, Response response)
Allows filtering before its handling by the target Restlet. By default it extracts the attributes from form parameters (query, cookies, entity) and finally puts them in the request's attributes (Message.getAttributes()
).- Overrides:
beforeHandle
in classFilter
- Parameters:
request
- The request to filter.response
- The response to filter.- Returns:
- The continuation status.
-
extractFromCookie
public void extractFromCookie(java.lang.String attribute, java.lang.String cookieName, boolean first)
Extracts an attribute from the request cookies.- Parameters:
attribute
- The name of the request attribute to set.cookieName
- The name of the cookies to extract.first
- Indicates if only the first cookie should be set. Otherwise as a List instance might be set in the attribute value.
-
extractFromEntity
public void extractFromEntity(java.lang.String attribute, java.lang.String parameter, boolean first)
Extracts an attribute from the request entity form.- Parameters:
attribute
- The name of the request attribute to set.parameter
- The name of the entity form parameter to extract.first
- Indicates if only the first cookie should be set. Otherwise as a List instance might be set in the attribute value.
-
extractFromQuery
public void extractFromQuery(java.lang.String attribute, java.lang.String parameter, boolean first)
Extracts an attribute from the query string of the resource reference.- Parameters:
attribute
- The name of the request attribute to set.parameter
- The name of the query string parameter to extract.first
- Indicates if only the first cookie should be set. Otherwise as a List instance might be set in the attribute value.
-
-