Class FlowModel

java.lang.Object
org.springframework.webflow.engine.model.AbstractModel
org.springframework.webflow.engine.model.FlowModel
All Implemented Interfaces:
Model

public class FlowModel extends AbstractModel
Model support for flows.

Defines exactly one flow definition. A flow is composed of one or more states that define the steps of a conversation. One of those steps is the start state, which defines the conversation's starting point.
A flow may also exhibit the following characteristics:

  • Be annotated with attributes that define descriptive properties that may affect flow execution. (See AttributeModel)
  • Be secured (See SecuredModel)
  • Be a persistence context for managing persistent objects during the course of flow execution. (See PersistenceContextModel)
  • Instantiate a set of instance variables when started. (See VarModel)
  • Map input provided by callers that start it (See InputModel)
  • Return output to callers that end it. (See OutputModel)
  • Execute actions at start time and end time. (See EvaluateModel, RenderModel and SetModel)
  • Define transitions shared by all states. (See TransitionModel)
  • Handle exceptions thrown by during flow execution. (See ExceptionHandlerModel)
  • Import one or more local bean definition files defining custom flow artifacts (such as actions, exception handlers, view factories, transition criteria, etc). (See BeanImportModel)
Author:
Scott Andrews
  • Constructor Details

    • FlowModel

      public FlowModel()
      Create a flow model
  • Method Details

    • isMergeableWith

      public boolean isMergeableWith(Model model)
      Description copied from interface: Model
      Determine if the model is able to be merged into the current model
      Parameters:
      model - the model to compare
      Returns:
      true if able to merge
    • merge

      public void merge(Model model)
      Description copied from interface: Model
      Merge the model into the current model
      Parameters:
      model - the model to merge with
    • createCopy

      public Model createCopy()
      Description copied from interface: Model
      Create a deep copy of this model. Needed when merging models and collections.
      Returns:
      a deep copy of this model
    • getAbstract

      public String getAbstract()
      Returns:
      the abstract
    • setAbstract

      public void setAbstract(String abztract)
      Parameters:
      abztract - the abstract to set
    • getParent

      public String getParent()
      Returns:
      the parent
    • setParent

      public void setParent(String parent)
      Parameters:
      parent - the parent to set
    • getStartStateId

      public String getStartStateId()
      Returns:
      the id of the flow's start state
    • setStartStateId

      public void setStartStateId(String startStateId)
      Parameters:
      startStateId - the id of the flow's start state to set
    • getAttributes

      public LinkedList<AttributeModel> getAttributes()
      Returns:
      the attributes
    • setAttributes

      public void setAttributes(LinkedList<AttributeModel> attributes)
      Parameters:
      attributes - the attributes to set
    • getSecured

      public SecuredModel getSecured()
      Returns:
      the secured
    • setSecured

      public void setSecured(SecuredModel secured)
      Parameters:
      secured - the secured to set
    • getPersistenceContext

      public PersistenceContextModel getPersistenceContext()
      Returns:
      the persistence context
    • setPersistenceContext

      public void setPersistenceContext(PersistenceContextModel persistenceContext)
      Parameters:
      persistenceContext - the persistence context to set
    • getVars

      public LinkedList<VarModel> getVars()
      Returns:
      the vars
    • setVars

      public void setVars(LinkedList<VarModel> vars)
      Parameters:
      vars - the vars to set
    • getInputs

      public LinkedList<InputModel> getInputs()
      Returns:
      the input mappings
    • setInputs

      public void setInputs(LinkedList<InputModel> inputs)
      Parameters:
      inputs - the input mappings to set
    • getOutputs

      public LinkedList<OutputModel> getOutputs()
      Returns:
      the output mappings
    • setOutputs

      public void setOutputs(LinkedList<OutputModel> outputs)
      Parameters:
      outputs - the output mappings to set
    • getOnStartActions

      public LinkedList<AbstractActionModel> getOnStartActions()
      Returns:
      the on start actions
    • setOnStartActions

      public void setOnStartActions(LinkedList<AbstractActionModel> onStartActions)
      Parameters:
      onStartActions - the on start actions to set
    • getStates

      public LinkedList<AbstractStateModel> getStates()
      Returns:
      the states
    • getStateById

      public AbstractStateModel getStateById(String id)
      Get the state model for an identifier
      Parameters:
      id - the state identifier to find
      Returns:
      the state or null if the identifier was not found
    • setStates

      public void setStates(LinkedList<AbstractStateModel> states)
      Parameters:
      states - the states to set
    • getGlobalTransitions

      public LinkedList<TransitionModel> getGlobalTransitions()
      Returns:
      the global transitions
    • setGlobalTransitions

      public void setGlobalTransitions(LinkedList<TransitionModel> globalTransitions)
      Parameters:
      globalTransitions - the global transitions to set
    • getOnEndActions

      public LinkedList<AbstractActionModel> getOnEndActions()
      Returns:
      the on end actions
    • setOnEndActions

      public void setOnEndActions(LinkedList<AbstractActionModel> onEndActions)
      Parameters:
      onEndActions - the on end actions to set
    • getExceptionHandlers

      public LinkedList<ExceptionHandlerModel> getExceptionHandlers()
      Returns:
      the exception handlers
    • setExceptionHandlers

      public void setExceptionHandlers(LinkedList<ExceptionHandlerModel> exceptionHandlers)
      Parameters:
      exceptionHandlers - the exception handlers to set
    • getBeanImports

      public LinkedList<BeanImportModel> getBeanImports()
      Returns:
      the bean imports
    • setBeanImports

      public void setBeanImports(LinkedList<BeanImportModel> beanImports)
      Parameters:
      beanImports - the bean imports to set