## org.opencyc.uml.statemachine
Class StateMachine

    java.lang.Object
      |
      +--org.opencyc.uml.core.Element
            |
            +--org.opencyc.uml.core.ModelElement
                  |
                  +--org.opencyc.uml.statemachine.StateMachine

public class StateMachine
extends org.opencyc.uml.core.ModelElement

StateMachine from the UML State_Machines package.

Author:
  Stephen L. Reed

  Copyright 2001 Cycorp, Inc., license is open source GNU LGPL.

  the license

  www.opencyc.org

  OpenCyc at SourceForge

  THIS SOFTWARE AND KNOWLEDGE BASE CONTENT ARE PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OPENCYC ORGANIZATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE AND KNOWLEDGE BASE CONTENT, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Field Summary
`protected java.lang.Object` `context` The context Classifier of this state machine, which contains the variables that distinguish the state, and the operations which can be performed upon state transitions.
`protected SubmachineState` `submachineState` the submachine state for this state machine
`protected State` `top` the top state of this state machine
`protected java.util.ArrayList` `transition` the Transitions for this state machine

Fields inherited from class org.opencyc.uml.core.ModelElement
`comment, name, namespace`

Constructor Summary
`StateMachine()` Constructs a new StateMachine object.

Method Summary
`java.lang.Object` `getContext()` Gets the context of this state machine
`SubmachineState` `getSubmachineState()` Gets the submachine state for this state machine
`State` `getTop()` Gets the top state of this state machine
`java.util.List` `getTransition()` Gets the Transitions for this state machine
`void` `setContext(java.lang.Object context)` Sets the context of this state machine
`void` `setSubmachineState(SubmachineState submachineState)` Sets the submachine state for this state machine
`void` `setTop(State top)` Sets the top state of this state machine
`void` `setTransition(java.util.ArrayList transition)` Sets the Transition for this state machine

Methods inherited from class org.opencyc.uml.core.ModelElement
`equals, getComment, getName, getNamespace, setComment, setName, setNamespace, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### context

    protected java.lang.Object context

  The context Classifier of this state machine, which contains the variables that distinguish the state, and the operations which can be performed upon state transitions. Note that java Object directly represents UML Classifier for ease of interpretation.

### top

    protected State top

  the top state of this state machine

### transition

    protected java.util.ArrayList transition

  the Transitions for this state machine

### submachineState

    protected SubmachineState submachineState

  the submachine state for this state machine

Constructor Detail

### StateMachine

    public StateMachine()

  Constructs a new StateMachine object.

Method Detail

### getContext

    public java.lang.Object getContext()

  Gets the context of this state machine
  Returns:
    the context of this state machine

### setContext

    public void setContext(java.lang.Object context)

  Sets the context of this state machine
  Parameters:
    `context` - the context of this state machine

### getTop

    public State getTop()

  Gets the top state of this state machine
  Returns:
    the top state of this state machine

### setTop

    public void setTop(State top)

  Sets the top state of this state machine
  Parameters:
    `top` - the top state of this state machine

### getTransition

    public java.util.List getTransition()

  Gets the Transitions for this state machine
  Returns:
    the Transitions for this state machine

### setTransition

    public void setTransition(java.util.ArrayList transition)

  Sets the Transition for this state machine
  Parameters:
    `transition` - the Transitions for this state machine

### getSubmachineState

    public SubmachineState getSubmachineState()

  Gets the submachine state for this state machine
  Returns:
    the submachine state for this state machine

### setSubmachineState

    public void setSubmachineState(SubmachineState submachineState)

  Sets the submachine state for this state machine
  Parameters:
    `submachineState` - the submachine state for this state machine