Overview | Package | Class | Tree | Deprecated | Index | Help
| bea Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## theory.smart.foundation
Interface Workflow

All Known Implementing Classes:
  StateMachine, TroubleTicketWorkflow, OrderWorkflow, EBusinessSessionWorkflow

public interface Workflow
extends BusinessSmartComponent

A Business Smart Component (BSC) Workflow provides access to a remote instance of a BSC Workflow Implementation. A workflow defines an abstract interface to an object that implements a set of states and legal transitions between those states. This is a powerful metaphor that represents a variety of decision support structures. An implementation of a Workflow is the StateMachine class in The Theory Center's Axiom package. The Theory Center's SmartGenerator generates a workflow based on that StateMachine, directly from a State Diagram

See Also:
  `theory.smart.axiom.StateMachine`

Method Summary
`java.lang.String` | `doTransition(java.lang.String transitionName)` Atempt to execute the specified transition and return the resulting state.
`WorkflowContext` | `getContext()` This method returns a Workflow context that can be used to later restore a Workflow.
`java.lang.String` | `getCurrentStateName()` Get the name of the current state
`java.lang.String` | `getInitialStateName()` Get the name of the initial state
`java.lang.String[]` | `getStateNames()` Get all State names in an array of Strings.
`java.lang.String[]` | `getTransitionNames()` Get all transition names in an array of Strings.
`java.lang.String` | `lookAheadTransition(java.lang.String transition)` Given the name of the transition, look ahead the transition and return the predicted new state.
`void` | `reset()` Reset the current workflow state to the initial state
`void` | `setContext(WorkflowContext workflowContext)` Set the new context for the underlying workflow engine.

Method Detail

### doTransition

    public java.lang.String doTransition(java.lang.String transitionName)
                                  throws IllegalWorkflowTransitionException

  Atempt to execute the specified transition and return the resulting state. If the specified transition is not allowed by the Workflow specification an InvalidWorkflowTransitionException will be thrown.
  Parameters:
    `transition` - the name of the transition to be performed
  Returns:
    new state.
  Throws:
    IllegalWorkflowTransitionException - if the transition is invalid

### getContext

    public WorkflowContext getContext()

  This method returns a Workflow context that can be used to later restore a Workflow. WorkflowContext is serializable and thus the WorkflowContext is the mechanism by which a Workflow is persisted. This method should be used only by the classes that implement the Workflow interface.
  Returns:
    WorkflowContext

### getCurrentStateName

    public java.lang.String getCurrentStateName()

  Get the name of the current state
  Returns:
    current state name

### getInitialStateName

    public java.lang.String getInitialStateName()

  Get the name of the initial state
  Returns:
    initial state name

### getStateNames

    public java.lang.String[] getStateNames()

  Get all State names in an array of Strings.
  Returns:
    String[] an array of Strings

### getTransitionNames

    public java.lang.String[] getTransitionNames()

  Get all transition names in an array of Strings.
  Returns:
    String[] an array of Strings

### lookAheadTransition

    public java.lang.String lookAheadTransition(java.lang.String transition)
                                         throws IllegalWorkflowTransitionException

  Given the name of the transition, look ahead the transition and return the predicted new state. If transition is invalid for the current state of the state machine, throw IllegalWorkflowTransitionException.
  Parameters:
    `transition` - the name of the transition to be performed
  Returns:
    predicted new state.
  Throws:
    IllegalWorkflowTransitionException - if the transition is invalid

### reset

    public void reset()

  Reset the current workflow state to the initial state

### setContext

    public void setContext(WorkflowContext workflowContext)

  Set the new context for the underlying workflow engine. This method should be used only by the classes that implement the Workflow interface.
  Parameters:
    `WorkflowContext` - the new context for the underlying workflow engine.

Overview | Package | Class | Tree | Deprecated | Index | Help
| bea Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

© Copyright 2000 bea Systems, Inc. All rights reserved.