Class RewriteRegexRule
- java.lang.Object
-
- org.eclipse.jetty.rewrite.handler.Rule
-
- org.eclipse.jetty.rewrite.handler.RegexRule
-
- org.eclipse.jetty.rewrite.handler.RewriteRegexRule
-
- All Implemented Interfaces:
Rule.ApplyURI
public class RewriteRegexRule extends RegexRule implements Rule.ApplyURI
Rewrite the URI by matching with a regular expression. The replacement string may use $n" to replace the nth capture group. If the replacement string contains ? character, then it is split into a path and query string component. The replacement query string may also contain $Q, which is replaced with the original query string. The returned target contains only the path.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.rewrite.handler.Rule
Rule.ApplyURI
-
-
Field Summary
-
Fields inherited from class org.eclipse.jetty.rewrite.handler.Rule
_handling, _terminating
-
-
Constructor Summary
Constructors Constructor Description RewriteRegexRule()RewriteRegexRule(String regex, String replacement)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Stringapply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher)Apply this rule to the request/response pair.voidapplyURI(org.eclipse.jetty.server.Request request, String oldURI, String newURI)voidsetReplacement(String replacement)Whenever a match is found, it replaces with this value.StringtoString()Returns the replacement string.-
Methods inherited from class org.eclipse.jetty.rewrite.handler.RegexRule
getRegex, matchAndApply, setRegex
-
Methods inherited from class org.eclipse.jetty.rewrite.handler.Rule
isHandling, isTerminating, setHandling, setTerminating
-
-
-
-
Method Detail
-
setReplacement
public void setReplacement(String replacement)
Whenever a match is found, it replaces with this value.- Parameters:
replacement- the replacement string.
-
apply
public String apply(String target, HttpServletRequest request, HttpServletResponse response, Matcher matcher) throws IOException
Description copied from class:RegexRuleApply this rule to the request/response pair. Called byRegexRule.matchAndApply(String, HttpServletRequest, HttpServletResponse)if the regex matches.- Specified by:
applyin classRegexRule- 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
-
applyURI
public void applyURI(org.eclipse.jetty.server.Request request, String oldURI, String newURI) throws IOException- Specified by:
applyURIin interfaceRule.ApplyURI- Throws:
IOException
-
-