Class RegexRule
- java.lang.Object
-
- org.eclipse.jetty.rewrite.handler.Rule
-
- org.eclipse.jetty.rewrite.handler.RegexRule
-
- Direct Known Subclasses:
HeaderRegexRule,RedirectRegexRule,RewriteRegexRule,TerminatingRegexRule
public abstract class RegexRule extends Rule
Abstract rule to use as a base class for rules that match with a regular expression.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.rewrite.handler.Rule
Rule.ApplyURI
-
-
Field Summary
Fields Modifier and Type Field Description protected Pattern_regex-
Fields inherited from class org.eclipse.jetty.rewrite.handler.Rule
_handling, _terminating
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Stringapply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher)Apply this rule to the request/response pair.StringgetRegex()StringmatchAndApply(String target, HttpServletRequest request, 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.voidsetRegex(String regex)Sets the regular expression string used to match with string URI.StringtoString()Returns the regular expression string.-
Methods inherited from class org.eclipse.jetty.rewrite.handler.Rule
isHandling, isTerminating, setHandling, setTerminating
-
-
-
-
Field Detail
-
_regex
protected Pattern _regex
-
-
Constructor Detail
-
RegexRule
protected RegexRule()
-
RegexRule
protected RegexRule(String pattern)
-
-
Method Detail
-
setRegex
public void setRegex(String regex)
Sets the regular expression string used to match with string URI.- Parameters:
regex- the regular expression.
-
getRegex
public String getRegex()
- Returns:
- get the regular expression
-
matchAndApply
public String matchAndApply(String target, HttpServletRequest request, HttpServletResponse response) throws IOException
Description copied from class:RuleThis method calls tests the rule against the request/response pair and if the Rule applies, then the rule's action is triggered.- Specified by:
matchAndApplyin 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
-
apply
protected abstract String apply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher) throws IOException
Apply this rule to the request/response pair. Called bymatchAndApply(String, HttpServletRequest, HttpServletResponse)if the regex matches.- Parameters:
target- field to attempt matchrequest- request objectresponse- response objectmatcher- The Regex matcher that matched the request (with capture groups available for replacement).- Returns:
- The target (possible updated).
- Throws:
IOException- exceptions dealing with operating on request or response objects
-
-