Class CompactPathRule
java.lang.Object
org.eclipse.jetty.rewrite.handler.Rule
org.eclipse.jetty.rewrite.handler.CompactPathRule
Rewrites the URI by compacting to remove occurrences of // and /../.
Optionally decode the path before compacting.
Optionally canonicalize path before compacting.
| isDecoding | isCanonicalizing | Input Path | Resulting Path |
|---|---|---|---|
| false (default) | false (default) | //foo/bar//baz |
/foo/bar/baz |
| false (default) | false (default) | //foo/../bar//baz |
/bar/baz |
| true | true | //foo/../bar//baz |
/bar/baz |
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordstatic interfaceNested classes/interfaces inherited from class Rule
Rule.Handler, Rule.HttpURIHandler -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(CompactPathRule.Listener listener) booleanbooleanmatchAndApply(Rule.Handler input) Tests whether the given inputHandler(which wraps aRequest) matches the rule, and if so returns an outputHandlerthat applies the rule logic.booleanremoveListener(CompactPathRule.Listener listener) voidsetCanonicalizing(boolean canonicalizing) voidsetDecoding(boolean decoding) Methods inherited from class Rule
isTerminating, setTerminating, toString
-
Constructor Details
-
CompactPathRule
public CompactPathRule()
-
-
Method Details
-
addListener
-
removeListener
-
isCanonicalizing
public boolean isCanonicalizing() -
setCanonicalizing
public void setCanonicalizing(boolean canonicalizing) -
isDecoding
public boolean isDecoding() -
setDecoding
public void setDecoding(boolean decoding) -
matchAndApply
Description copied from class:RuleTests whether the given input
Handler(which wraps aRequest) matches the rule, and if so returns an outputHandlerthat applies the rule logic.If the input does not match,
nullis returned.- Specified by:
matchAndApplyin classRule- Parameters:
input- the inputHandlerthat wraps theRequest- Returns:
- an output
Handlerthat wraps the inputHandler, ornullif the rule does not match - Throws:
IOException- if applying the rule fails
-