Class RequestParameterMapper

java.lang.Object
org.apache.commons.chain.generic.LookupCommand
org.apache.commons.chain.web.servlet.RequestParameterMapper
All Implemented Interfaces:
Command, Filter

public class RequestParameterMapper extends LookupCommand implements Command

Command that uses a specified request parameter to select a Command from the appropriate Catalog, and execute it. To use this command, you would typically map an instance of ChainProcessor to a wildcard pattern like "*.execute" and then arrange that this is the default command to be executed. In such an environment, a request for the context-relative path "/foo.execute?command=bar" would cause the "/bar" command to be loaded and executed.

Author:
Craig R. McClanahan
  • Field Details

    • catalogKey

      private String catalogKey
    • parameter

      private String parameter
  • Constructor Details

    • RequestParameterMapper

      public RequestParameterMapper()
  • Method Details

    • getCatalogKey

      public String getCatalogKey()

      Return the context key under which our Catalog has been stored.

      Returns:
      The context key for the Catalog.
    • setCatalogKey

      public void setCatalogKey(String catalogKey)
      Deprecated.
      Use catalogName to specify the name of the catalog in the catalog factory

      Set the context key under which our Catalog has been stored.

      Parameters:
      catalogKey - The new catalog key
    • getParameter

      public String getParameter()
      Deprecated.
      Use catalogName to specify the name of the catalog in the catalog factory

      Return the name of the request parameter to use for selecting the Command to be executed.

      Returns:
      The name of the request parameter.
    • setParameter

      public void setParameter(String parameter)

      Set the name of the request parameter to use for selecting the Command to be executed.

      Parameters:
      parameter - The new parameter name
    • getCommandName

      protected String getCommandName(Context context)

      Look up the specified request paramater for this request, and use it to select an appropriate Command to be executed.

      Overrides:
      getCommandName in class LookupCommand
      Parameters:
      context - Context for the current request
      Returns:
      The name of the Command instance
      Since:
      Chain 1.2
    • getCatalog

      protected Catalog getCatalog(Context context)

      Return the Catalog to look up the Command in.

      Overrides:
      getCatalog in class LookupCommand
      Parameters:
      context - Context for this request
      Returns:
      The catalog.
      Throws:
      IllegalArgumentException - if no Catalog can be found
      Since:
      Chain 1.2