Class ValidUrlRule
java.lang.Object
org.eclipse.jetty.rewrite.handler.Rule
org.eclipse.jetty.rewrite.handler.ValidUrlRule
This rule can be used to protect against invalid unicode characters in a url making it into applications.
The logic is as follows.
- if decoded uri character is an iso control character return code/reason
- if no UnicodeBlock is found for character return code/reason
- if character is in UnicodeBlock.SPECIALS return code/reason
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jetty.rewrite.handler.Rule
Rule.ApplyURI
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) String
(package private) String
private static final Logger
Fields inherited from class org.eclipse.jetty.rewrite.handler.Rule
_handling, _terminating
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
isValidChar
(int codepoint) matchAndApply
(String target, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) This method calls tests the rule against the request/response pair and if the Rule applies, then the rule's action is triggered.void
Sets the response status code.void
Sets the reason for the response status code.toString()
Returns the handling and terminating flag values.Methods inherited from class org.eclipse.jetty.rewrite.handler.Rule
isHandling, isTerminating, setHandling, setTerminating
-
Field Details
-
Constructor Details
-
ValidUrlRule
public ValidUrlRule()
-
-
Method Details
-
setCode
Sets the response status code.- Parameters:
code
- response code
-
setReason
Sets the reason for the response status code. Reasons will only reflect if the code value is greater or equal to 400.- Parameters:
reason
- the reason
-
matchAndApply
public String matchAndApply(String target, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws IOException Description copied from class:Rule
This method calls tests the rule against the request/response pair and if the Rule applies, then the rule's action is triggered.- Specified by:
matchAndApply
in classRule
- Parameters:
target
- The target of the requestrequest
- the requestresponse
- the response- Returns:
- The new target if the rule has matched, else null
- Throws:
IOException
- if unable to match the rule
-
isValidChar
protected boolean isValidChar(int codepoint) -
toString
Description copied from class:Rule
Returns the handling and terminating flag values.
-