Class RedirectRegexRule


public class RedirectRegexRule extends RegexRule
Issues a (3xx) Redirect response whenever the rule finds a match via regular expression.

The replacement string may use $n" to replace the nth capture group.

All redirects are part of the 3xx Redirection status code set.

Defaults to 302 Found

  • Field Details

    • _location

      protected String _location
  • Constructor Details

    • RedirectRegexRule

      public RedirectRegexRule()
    • RedirectRegexRule

      public RedirectRegexRule(@Name("regex") String regex, @Name("location") String location)
  • Method Details

    • setLocation

      public void setLocation(String location)
      Sets the redirect location.
      Parameters:
      location - the URI to redirect to
    • setStatusCode

      public void setStatusCode(int statusCode)
      Sets the redirect status code.
      Parameters:
      statusCode - the 3xx redirect status code
    • apply

      protected String apply(String target, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, Matcher matcher) throws IOException
      Description copied from class: RegexRule
      Apply this rule to the request/response pair. Called by RegexRule.matchAndApply(String, HttpServletRequest, HttpServletResponse) if the regex matches.
      Specified by:
      apply in class RegexRule
      Parameters:
      target - field to attempt match
      request - request object
      response - response object
      matcher - 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
    • toString

      public String toString()
      Returns the redirect status code and replacement.
      Overrides:
      toString in class RegexRule