## org.eclipse.jetty.rewrite.handler
Class PatternRule

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

Direct Known Subclasses:
  CookiePatternRule, HeaderPatternRule, RedirectPatternRule, ResponsePatternRule, RewritePatternRule

    public abstract class PatternRule

extends Rule

Abstract rule that use a `PathMap` for pattern matching. It uses the servlet pattern syntax.

Field Summary
`protected java.lang.String` `_pattern`

Fields inherited from class org.eclipse.jetty.rewrite.handler.Rule
`_handling, _terminating`

Constructor Summary
`PatternRule()`

Method Summary
`protected abstract java.lang.String` `apply(java.lang.String target, HttpServletRequest request, HttpServletResponse response)` Apply the rule to the request
`java.lang.String` `getPattern()`
`java.lang.String` `matchAndApply(java.lang.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.
`void` `setPattern(java.lang.String pattern)` Sets the rule pattern.
`java.lang.String` `toString()` Returns the rule pattern.

Methods inherited from class org.eclipse.jetty.rewrite.handler.Rule
`isHandling, isTerminating, setHandling, setTerminating`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### _pattern

    protected java.lang.String _pattern

Constructor Detail

### PatternRule

    public PatternRule()

Method Detail

### getPattern

    public java.lang.String getPattern()

### setPattern

    public void setPattern(java.lang.String pattern)

  Sets the rule pattern.

  Parameters:
    `pattern` - the pattern

### matchAndApply

    public java.lang.String matchAndApply(java.lang.String target,
                                          HttpServletRequest request,
                                          HttpServletResponse response)
                                   throws java.io.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 class `Rule`
  Parameters:
    `target` - The target of the request
  Returns:
    The new target if the rule has matched, else null
  Throws:
    `java.io.IOException` - TODO

### apply

    protected abstract java.lang.String apply(java.lang.String target,
                                              HttpServletRequest request,
                                              HttpServletResponse response)
                                       throws java.io.IOException

  Apply the rule to the request

  Parameters:
    `target` - field to attempt match
    `request` - request object
    `response` - response object
  Returns:
    The target (possible updated)
  Throws:
    `java.io.IOException` - exceptions dealing with operating on request or response objects

### toString

    public java.lang.String toString()

  Returns the rule pattern.

  Overrides:
    `toString` in class `Rule`

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