Package org.apache.struts2.dispatcher.mapper

# Interface ActionMapper

All Known Implementing Classes:
  `CompositeActionMapper`, `DefaultActionMapper`, `PrefixBasedActionMapper`, `Restful2ActionMapper`, `RestfulActionMapper`

public interface ActionMapper

The ActionMapper interface provides a mapping between HTTP requests and action invocation requests and vice-versa.

When given an HttpServletRequest, the ActionMapper may return null if no action invocation request matches, or it may return an `ActionMapping` that describes an action invocation for the framework to try.

The ActionMapper is not required to guarantee that the `ActionMapping` returned be a real action or otherwise ensure a valid request. Accordingly, most ActionMappers do not need to consult the Struts configuration just to determine if a request should be mapped.

Just as requests can be mapped from HTTP to an action invocation, the opposite is true as well. However, because HTTP requests (when shown in HTTP responses) must be in String form, a String is returned rather than an actual request object.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ActionMapping`
  `getMapping(jakarta.servlet.http.HttpServletRequest request, ConfigurationManager configManager)`
  Expose the ActionMapping for the current request
  `ActionMapping`
  `getMappingFromActionName(String actionName)`
  Expose the ActionMapping for the specified action name
  `String`
  `getUriFromActionMapping(ActionMapping mapping)`
  Convert an ActionMapping into a URI string

- ## Method Details

  - ### getMapping

    ActionMapping getMapping(jakarta.servlet.http.HttpServletRequest request, ConfigurationManager configManager)
    Expose the ActionMapping for the current request
    Parameters:
      `request` - The servlet request
      `configManager` - The current configuration manager
    Returns:
      The appropriate action mapping or null if mapping cannot be determined

  - ### getMappingFromActionName

    ActionMapping getMappingFromActionName(String actionName)
    Expose the ActionMapping for the specified action name
    Parameters:
      `actionName` - The name of the action that may have other information embedded in it
    Returns:
      The appropriate action mapping
    Since:
      2.1.1

  - ### getUriFromActionMapping

    String getUriFromActionMapping(ActionMapping mapping)
    Convert an ActionMapping into a URI string
    Parameters:
      `mapping` - The action mapping
    Returns:
      The URI string that represents this mapping