org.springframework.webflow.action
Class CompositeAction

java.lang.Object
  extended by org.springframework.webflow.action.AbstractAction
      extended by org.springframework.webflow.action.CompositeAction
All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean, Action

public class CompositeAction
extends AbstractAction

An action that will execute an ordered chain of other actions when executed.

The event id of the last not-null result returned by the executed actions will be used as the result event id of the composite action. Lacking that, the action will return the "success" event.

The resulting event will have an "actionResults" event attribute with a list of all events returned by the executed actions, including the null events. This allows you to relate an executed action and its result event by their index in the list.

This is the classic GoF composite design pattern.

Author:
Keith Donald

Field Summary
static String ACTION_RESULTS_ATTRIBUTE_NAME
          The resulting event whill have an attribute of this name which holds a list of all events returned by the executed actions.
 
Constructor Summary
CompositeAction(Action[] actions)
          Create a composite action composed of given actions.
 
Method Summary
 Event doExecute(RequestContext context)
          Template hook method subclasses should override to encapsulate their specific action execution logic.
 boolean isStopOnError()
          Returns the stop on error flag.
 void setStopOnError(boolean stopOnError)
          Sets the stop on error flag.
 String toString()
           
 
Methods inherited from class org.springframework.webflow.action.AbstractAction
afterPropertiesSet, execute, getEventFactorySupport
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ACTION_RESULTS_ATTRIBUTE_NAME

public static final String ACTION_RESULTS_ATTRIBUTE_NAME
The resulting event whill have an attribute of this name which holds a list of all events returned by the executed actions. ("actionResults")

See Also:
Constant Field Values
Constructor Detail

CompositeAction

public CompositeAction(Action[] actions)
Create a composite action composed of given actions.

Parameters:
actions - the actions
Method Detail

isStopOnError

public boolean isStopOnError()
Returns the stop on error flag.


setStopOnError

public void setStopOnError(boolean stopOnError)
Sets the stop on error flag. This determines whether or not execution should stop with the first action that returns an error event. In the error case, the composite action will also return the "error" event.


doExecute

public Event doExecute(RequestContext context)
                throws Exception
Description copied from class: AbstractAction
Template hook method subclasses should override to encapsulate their specific action execution logic.

Parameters:
context - the action execution context, for accessing and setting data in "flow scope" or "request scope"
Returns:
the action result event
Throws:
Exception - an unrecoverable exception occured, either checked or unchecked

toString

public String toString()
Overrides:
toString in class Object