Package org.restlet.routing
Class Validator
- java.lang.Object
-
- org.restlet.Restlet
-
- org.restlet.routing.Filter
-
- org.restlet.routing.Validator
-
- All Implemented Interfaces:
Uniform
public class Validator extends Filter
Filter validating attributes from a call. Validation is verified based on regex pattern matching.
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.- See Also:
Pattern
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classValidator.ValidateInfoInternal class holding validation information.
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<Validator.ValidateInfo>validationsThe list of attribute validations.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intbeforeHandle(Request request, Response response)Allows filtering before its handling by the target Restlet.private java.util.List<Validator.ValidateInfo>getValidations()Returns the list of attribute validations.voidvalidate(java.lang.String attribute, boolean required, java.lang.String format)Checks the request attributes for presence or format.voidvalidateFormat(java.lang.String attribute, java.lang.String format)Checks the request attributes for format only.voidvalidatePresence(java.lang.String attribute)Checks the request attributes for presence only.-
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
-
-
-
-
Field Detail
-
validations
private volatile java.util.List<Validator.ValidateInfo> validations
The list of attribute validations.
-
-
Method Detail
-
beforeHandle
protected int beforeHandle(Request request, Response response)
Allows filtering before its handling by the target Restlet. By default it parses the template variable, adjust the base reference, then extracts the attributes from form parameters (query, cookies, entity) and finally tries to validate the variables as indicated by thevalidate(String, boolean, String)method.- Overrides:
beforeHandlein classFilter- Parameters:
request- The request to filter.response- The response to filter.- Returns:
- The
Filter.CONTINUEstatus.
-
getValidations
private java.util.List<Validator.ValidateInfo> getValidations()
Returns the list of attribute validations.- Returns:
- The list of attribute validations.
-
validate
public void validate(java.lang.String attribute, boolean required, java.lang.String format)Checks the request attributes for presence or format. If the check fails, then a response status CLIENT_ERROR_BAD_REQUEST is returned with the proper status description.- Parameters:
attribute- Name of the attribute to look for.required- Indicates if the attribute presence is required.format- Format of the attribute value, using Regex pattern syntax.
-
validateFormat
public void validateFormat(java.lang.String attribute, java.lang.String format)Checks the request attributes for format only. If the check fails, then a response status CLIENT_ERROR_BAD_REQUEST is returned with the proper status description.- Parameters:
attribute- Name of the attribute to look for.format- Format of the attribute value, using Regex pattern syntax.
-
validatePresence
public void validatePresence(java.lang.String attribute)
Checks the request attributes for presence only. If the check fails, then a response status CLIENT_ERROR_BAD_REQUEST is returned with the proper status description.- Parameters:
attribute- Name of the attribute to look for.
-
-