Interface RewriteMap

All Known Implementing Classes:
InternalRewriteMap.Escape, InternalRewriteMap.LowerCase, InternalRewriteMap.Unescape, InternalRewriteMap.UpperCase, RandomizedTextRewriteMap

public interface RewriteMap
Interface for user defined lookup/replacement logic that can be defined in a rewrite.config file by a RewriteMap directive. Such a map can then be used by a RewriteRule defined in the same file.

An example rewrite.config file could look like:

 RewriteMap uc example.UpperCaseMap

 RewriteRule ^/(.*)$ ${uc:$1}
 
One parameter can be optionally appended to the RewriteMap directive. This could be used – for example – to specify a name of a file, that contains a lookup table used by the implementation of the map.
  • Method Summary

    Modifier and Type
    Method
    Description
    Maps a key to a replacement value.
    The method is free to return null to indicate, that the default value from the RewriteRule directive should be used.
    Optional parameter that can be defined through the RewriteMap directive in the rewrite.config file.
    default void
    setParameters(String... params)
    Optional parameters that can be defined through the RewriteMap directive in the rewrite.config file.
  • Method Details

    • setParameters

      String setParameters(String params)
      Optional parameter that can be defined through the RewriteMap directive in the rewrite.config file.
      Parameters:
      params - the optional parameter
      Returns:
      value is currently ignored
    • setParameters

      default void setParameters(String... params)
      Optional parameters that can be defined through the RewriteMap directive in the rewrite.config file.

      This method will be called, if there are more than one parameters defined.

      Parameters:
      params - the optional parameters
    • lookup

      String lookup(String key)
      Maps a key to a replacement value.
      The method is free to return null to indicate, that the default value from the RewriteRule directive should be used.
      Parameters:
      key - used by the actual implementation to generate a mapped value
      Returns:
      mapped value or null