Package org.apache.struts2

# Interface ActionProxyFactory

All Known Implementing Classes:
  `DefaultActionProxyFactory`, `PrefixBasedActionProxyFactory`, `StrutsActionProxyFactory`

public interface ActionProxyFactory
The `ActionProxyFactory` is used to create `ActionProxy`s to be executed.

It is the entry point to XWork that is used by a dispatcher to create an `ActionProxy` to execute for a particular namespace and action name.

Author:
  Jason Carreira
See Also:
  - `DefaultActionProxyFactory`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ActionProxy`
  `createActionProxy(String namespace, String actionName, String methodName, Map<String,Object> extraContext)`
  Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including having an `ActionInvocation` instance associated.
  `ActionProxy`
  `createActionProxy(String namespace, String actionName, String methodName, Map<String,Object> extraContext, boolean executeResult, boolean cleanupContext)`
  Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including having an `ActionInvocation` instance associated.
  `ActionProxy`
  `createActionProxy(ActionInvocation actionInvocation, String namespace, String actionName, String methodName, boolean executeResult, boolean cleanupContext)`
  Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including passed `ActionInvocation` instance.

- ## Method Details

  - ### createActionProxy

    ActionProxy createActionProxy(String namespace, String actionName, String methodName, Map<String,Object> extraContext)
    Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including having an `ActionInvocation` instance associated.

    Note: This is the most used create method.

    Parameters:
      `namespace` - the namespace of the action, can be `null`
      `actionName` - the name of the action
      `methodName` - the name of the method to execute
      `extraContext` - a Map of extra parameters to be provided to the ActionProxy, can be `null`
    Returns:
      ActionProxy the created action proxy
    Since:
      2.1.1

  - ### createActionProxy

    ActionProxy createActionProxy(String namespace, String actionName, String methodName, Map<String,Object> extraContext, boolean executeResult, boolean cleanupContext)
    Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including having an `ActionInvocation` instance associated.
    Parameters:
      `namespace` - the namespace of the action, can be `null`
      `actionName` - the name of the action
      `methodName` - the name of the method to execute
      `extraContext` - a Map of extra parameters to be provided to the ActionProxy, can be `null`
      `executeResult` - flag which tells whether the result should be executed after the action
      `cleanupContext` - flag which tells whether the original context should be preserved during execution of the proxy.
    Returns:
      ActionProxy the created action proxy
    Since:
      2.1.1

  - ### createActionProxy

    ActionProxy createActionProxy(ActionInvocation actionInvocation, String namespace, String actionName, String methodName, boolean executeResult, boolean cleanupContext)
    Creates an `ActionProxy` for the given namespace and action name by looking up the configuration.The ActionProxy should be fully initialized when it is returned, including passed `ActionInvocation` instance.
    Parameters:
      `actionInvocation` - the action invocation instance to associate with
      `namespace` - the namespace of the action, can be `null`
      `actionName` - the name of the action
      `methodName` - the name of the method to execute
      `executeResult` - flag which tells whether the result should be executed after the action
      `cleanupContext` - flag which tells whether the original context should be preserved during execution of the proxy.
    Returns:
      ActionProxy the created action proxy
    Since:
      2.1.1