Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
| ABLE 2.3.0 07/13/2005 14:21:00
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.ibm.conversation
Interface CpStateMachine

All Known Implementing Classes:
  BasicCpStateMachine

public interface CpStateMachine

The CpStateMachine interface represents a state machine for a conversation policy.

Note that neither the "current role" nor the "current state" of the policy is stored here. The CpStateMachine thus describes only the state-transition structure of the conversation policy, which does not change during its execution. This permits a single CpStateMachine instance to be shared among several ConversationPolicyHandlers.

See Also:
  `CpStateMachineHandler`

Method Summary
`void` | `addRole(java.lang.String newRole)` Adds the given role to the set of roles supported by the policy.
`void` | `addState(CpState newState)` Adds the given state to the policy state machine.
`void` | `clear()` Removes all roles, states, and transitions that have been added to this state machine.
`java.util.Collection` | `getDecisionLogicCallbackNames(java.lang.String role)` Returns a Collection containing the names of all states that are decision-logic callback points for the given role.
`CpState` | `getInitialState()` Returns the initial state of the policy.
`java.lang.String` | `getInitialStateName()` Returns the name of the policy's initial state.
`int` | `getNumStates()` Returns the number of states in the policy state machine.
`java.lang.String` | `getPolicyName()` Returns the name of the policy.
`java.util.Collection` | `getRoles()` Returns a Collection containing the roles supported by the policy.
`CpState` | `getState(java.lang.String name)` Returns the state with the given name.
`java.util.Collection` | `getStates()` Returns a Collection containing all the states in the policy state machine.
`CpStateTransition` | `getTransition(java.lang.String stateName, java.lang.String transitionName)` Returns the transition with the given transitionName whose source is the given stateName.
`boolean` | `hasRole(java.lang.String testRole)` Indicates whether the given string is one of the roles supported by the policy.
`boolean` | `hasState(java.lang.String testState)` Indicates whether the given string is the name of one of the states.
`CpState` | `newState(int stateType)` Creates and returns a new CpState of the given state type.
`CpStateTransition` | `newTransition(int transitionType)` Creates and returns a new CpStateTransition of the given transition type.
`void` | `setInitialStateName(java.lang.String newName)` Sets the name of the policy's initial state.
`void` | `setPolicyName(java.lang.String newName)` Sets the name of the policy.

Method Detail

### getPolicyName

    public java.lang.String getPolicyName()

  Returns the name of the policy.

  Returns:
    The policy's name, of `null` if undefined.

### setPolicyName

    public void setPolicyName(java.lang.String newName)

  Sets the name of the policy.

  Parameters:
    `newName` - The new name of the policy.

### getRoles

    public java.util.Collection getRoles()

  Returns a Collection containing the roles supported by the policy.

  Each entry in the Collection is a String.

  Returns:
    The roles defined by the policy.

### hasRole

    public boolean hasRole(java.lang.String testRole)

  Indicates whether the given string is one of the roles supported by the policy.

  Parameters:
    `testRole` - The string to test
  Returns:
    true if testRole is one of the roles supported by the policy, false if not.

### addRole

    public void addRole(java.lang.String newRole)

  Adds the given role to the set of roles supported by the policy.

  Parameters:
    `newRole` - The role to be added.

### getInitialState

    public CpState getInitialState()

  Returns the initial state of the policy.

  Returns:
    The initial state of the policy, or `null` if undefined.

### getInitialStateName

    public java.lang.String getInitialStateName()

  Returns the name of the policy's initial state.

  Returns:
    The name of the policy's initial state, or `null` if undefined.

### setInitialStateName

    public void setInitialStateName(java.lang.String newName)

  Sets the name of the policy's initial state.

  Parameters:
    `newName` - The name of the new initial state.

### getNumStates

    public int getNumStates()

  Returns the number of states in the policy state machine.

  Returns:
    The number of states in the policy.

### getDecisionLogicCallbackNames

    public java.util.Collection getDecisionLogicCallbackNames(java.lang.String role)

  Returns a Collection containing the names of all states that are decision-logic callback points for the given role. This will be a subset of the state names defined in the policy.

  Each entry in the Collection is a String.

  Parameters:
    `role` - The role
  Returns:
    The callback names for the given role.

### getStates

    public java.util.Collection getStates()

  Returns a Collection containing all the states in the policy state machine.

  Each entry in the Collection is a `CpState`.

  Returns:
    The states in the policy.

### hasState

    public boolean hasState(java.lang.String testState)

  Indicates whether the given string is the name of one of the states.

  Parameters:
    `testState` - The string to test
  Returns:
    true if testState is the name of a state, false if not.

### getState

    public CpState getState(java.lang.String name)

  Returns the state with the given name.

  Parameters:
    `name` - The state's name.
  Returns:
    The state with the given name, or `null` if not found.

### addState

    public void addState(CpState newState)

  Adds the given state to the policy state machine.

  Parameters:
    `newState` - The state to be added.

### getTransition

    public CpStateTransition getTransition(java.lang.String stateName,
                                           java.lang.String transitionName)

  Returns the transition with the given transitionName whose source is the given stateName.

  Parameters:
    `stateName` - The name of the source state.
    `transitionName` - The name of the transition.
  Returns:
    The transition matching the args, or `null` if not found.

### clear

    public void clear()

  Removes all roles, states, and transitions that have been added to this state machine.

### newState

    public CpState newState(int stateType)

  Creates and returns a new CpState of the given state type.

  Parameters:
    `stateType` - The state type.
  Returns:
    The new state.
  See Also:
    `for possible state types.`

### newTransition

    public CpStateTransition newTransition(int transitionType)

  Creates and returns a new CpStateTransition of the given transition type.

  See `CpStateTransition` for possible transition types.

  Parameters:
    `transitionType` - The transition type.
  Returns:
    The new transition.

Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
| ABLE 2.3.0 07/13/2005 14:21:00
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

(C) Copyright IBM Corporation 1999, 2005