org.eclipse.jetty.rewrite.handler

## Class Rule

- java.lang.Object
- - org.eclipse.jetty.rewrite.handler.Rule

- Direct Known Subclasses:
    HeaderRule, LegacyRule, MsieSslRule, PatternRule, RegexRule, RuleContainer, ValidUrlRule

      public abstract class Rule
      extends Object

  An abstract rule for creating rewrite rules.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `Rule.ApplyURI` Interface used to apply a changed target if `RuleContainer.setRewriteRequestURI(boolean)` is true.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected boolean` | `_handling`
    `protected boolean` | `_terminating`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Rule()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isHandling()` Returns the handling flag value.
    `boolean` | `isTerminating()` Returns the terminating flag value.
    `abstract String` | `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` | `setHandling(boolean handling)` Set the handling flag value.
    `void` | `setTerminating(boolean terminating)` Sets terminating to true or false.
    `String` | `toString()` Returns the handling and terminating flag values.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### _terminating

          protected boolean _terminating

    - #### _handling

          protected boolean _handling

  - ### Constructor Detail

    - #### Rule

          public Rule()

  - ### Method Detail

    - #### matchAndApply

          public abstract String matchAndApply(String target,
                             javax.servlet.http.HttpServletRequest request,
                             javax.servlet.http.HttpServletResponse response)
                                        throws IOException

      This method calls tests the rule against the request/response pair and if the Rule applies, then the rule's action is triggered.
      Parameters:
        `target` - The target of the request
        `request` -
        `response` -
      Returns:
        The new target if the rule has matched, else null
      Throws:
        `IOException` - TODO

    - #### setTerminating

          public void setTerminating(boolean terminating)

      Sets terminating to true or false. If true, this rule will terminate the loop if this rule has been applied.
      Parameters:
        `terminating` -

    - #### isTerminating

          public boolean isTerminating()

      Returns the terminating flag value.
      Returns:
        `true` if the rule needs to terminate; `false` otherwise.

    - #### isHandling

          public boolean isHandling()

      Returns the handling flag value.
      Returns:
        `true` if the rule handles the request and nested handlers should not be called.

    - #### setHandling

          public void setHandling(boolean handling)

      Set the handling flag value.
      Parameters:
        `handling` - true if the rule handles the request and nested handlers should not be called.

    - #### toString

          public String toString()

      Returns the handling and terminating flag values.
      Overrides:
        `toString` in class `Object`

Copyright © 1995-2016 Mort Bay Consulting. All Rights Reserved.