org.primordion.xholon.samples
Class XhTestFsmOrthog

java.lang.Object
  extended byorg.primordion.xholon.base.Xholon
      extended byorg.primordion.xholon.base.XholonWithPorts
          extended byorg.primordion.xholon.samples.XhTestFsmOrthog
All Implemented Interfaces:
CeTestFsm, IXholon

public class XhTestFsmOrthog
extends XholonWithPorts
implements CeTestFsm

Test FSM. Test the Xholon implementation of Orthogonal finite state machines (FSM).

Since:
0.2 (Created on November 19, 2005)

For now I'm using CeTestFsm.java, because so far names are the same in Fsm and FsmOrthog.

Author:
Ken Webb

Field Summary
static int FAIL
           
static int LAB_DONE
           
static int P_PARTNER
           
static int PASS
           
static int PROJECT_DONE
           
 java.lang.String roleName
           
 int state
           
static int TEST_SCENARIO_1
           
static int TEST_SCENARIO_2
           
static int TEST_SCENARIO_3
           
static int TEST_SCENARIO_4
           
static int TEST_SCENARIO_5
           
 
Fields inherited from class org.primordion.xholon.base.XholonWithPorts
port
 
Fields inherited from class org.primordion.xholon.base.Xholon
DEFAULT_LEVEL, interaction, interactionsEnabled
 
Fields inherited from interface org.primordion.xholon.samples.CeTestFsm
FsmXholonCE, TestFsmSystemCE, TestHarnessCE, XholonClassCE
 
Fields inherited from interface org.primordion.xholon.base.IXholon
DEFAULT_SIZE_MSG_Q, NINCLUDE_PSC, NINCLUDE_PSx, NINCLUDE_PxC, NINCLUDE_Pxx, NINCLUDE_xSC, NINCLUDE_xSx, NINCLUDE_xxC, NINCLUDE_xxx
 
Constructor Summary
XhTestFsmOrthog()
          Constructor.
 
Method Summary
 void act()
          Do some action during this time step.
 java.lang.String getRoleName()
          Get name of the role played by this Xholon within a specific context.
static int getTestScenario()
          Get which test scenario is being run.
 void initialize()
          Initialize the tree node.
 void performActivity(int activityId, IMessage msg)
          Do the UML2 Activity identified by the activityId.
 boolean performGuard(int activityId, IMessage msg)
          Do the UML2 Activity identified by the activityId.
 void processReceivedMessage(Message msg)
          Process a received ROOM/UML2 message taken from the message queue.
 void setRoleName(java.lang.String roleName)
          Set name of the role played by this Xholon within a specific context.
static void setTestScenario(int testScen)
          Set which test scenario to run.
 java.lang.String toString()
           
 
Methods inherited from class org.primordion.xholon.base.XholonWithPorts
configure, getMaxPorts, getPort, isActiveObject, isBound, isContainer, isPassiveObject, postConfigure, setMaxPorts, setPorts, terminate
 
Methods inherited from class org.primordion.xholon.base.Xholon
appendChild, appendChild, appendChild, cleanup, configure, createStructure, decVal, decVal, depth, draw, getChildNodes, getFirstChild, getFirstSibling, getId, getLastChild, getLastSibling, getName, getNeighbors, getNextId, getNextSibling, getNthChild, getNthSibling, getNumChildren, getNumSiblings, getParentNode, getPreviousSibling, getRootNode, getSiblings, getSizeMessageQ, getUid, getVal_boolean, getVal_byte, getVal_char, getVal_double, getVal_float, getVal_int, getVal_long, getVal_Object, getVal_short, getVal_String, getVal, getXhc, getXhcId, getXhcName, getXhType, handleNodeSelection, hasAncestor, hasChildNodes, hasChildOrSiblingNodes, hasNextSibling, hasParentNode, height, incVal, incVal, initStatics, inOrderPrint, insertAfter, insertBefore, insertFirstChild, isExternal, isInternal, isLeaf, isRootNode, performActivity, performBooleanActivity, performBooleanActivity, performDoubleActivity, performVoidActivity, postAct, postOrderPrint, postReconfigure, preAct, preConfigure, preOrderPrint, preReconfigure, print, println, processMessageQ, reconfigure, remove, removeChild, resetNextId, sendMessage, sendMessage, sendMessage, setAttributeVal, setFactory, setFirstChild, setId, setNextSibling, setParentChildLinks, setParentNode, setParentSiblingLinks, setSizeMessageQ, setUid, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVariableValue, setXhc, swapNode, treeSize, writeXml
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

P_PARTNER

public static final int P_PARTNER
See Also:
Constant Field Values

LAB_DONE

public static final int LAB_DONE
See Also:
Constant Field Values

PROJECT_DONE

public static final int PROJECT_DONE
See Also:
Constant Field Values

PASS

public static final int PASS
See Also:
Constant Field Values

FAIL

public static final int FAIL
See Also:
Constant Field Values

TEST_SCENARIO_1

public static final int TEST_SCENARIO_1
See Also:
Constant Field Values

TEST_SCENARIO_2

public static final int TEST_SCENARIO_2
See Also:
Constant Field Values

TEST_SCENARIO_3

public static final int TEST_SCENARIO_3
See Also:
Constant Field Values

TEST_SCENARIO_4

public static final int TEST_SCENARIO_4
See Also:
Constant Field Values

TEST_SCENARIO_5

public static final int TEST_SCENARIO_5
See Also:
Constant Field Values

state

public int state

roleName

public java.lang.String roleName
Constructor Detail

XhTestFsmOrthog

public XhTestFsmOrthog()
Constructor.

Method Detail

setTestScenario

public static void setTestScenario(int testScen)
Set which test scenario to run.

Parameters:
testScen - The test scenario.

getTestScenario

public static int getTestScenario()
Get which test scenario is being run.

Returns:
The test scenario.

initialize

public void initialize()
Description copied from interface: IXholon
Initialize the tree node. Typically this is only used to re-initialize a node, such as when it is reused through the TreeNodeFactoryStatic.

Specified by:
initialize in interface IXholon
Overrides:
initialize in class XholonWithPorts

setRoleName

public void setRoleName(java.lang.String roleName)
Description copied from interface: IXholon
Set name of the role played by this Xholon within a specific context.

Specified by:
setRoleName in interface IXholon
Overrides:
setRoleName in class Xholon

getRoleName

public java.lang.String getRoleName()
Description copied from interface: IXholon
Get name of the role played by this Xholon within a specific context.

Specified by:
getRoleName in interface IXholon
Overrides:
getRoleName in class Xholon

act

public void act()
Description copied from interface: IXholon
Do some action during this time step. Typically all nodes in the tree will do their pre-actions (optional), then all will do their actions, and then all will do their post-actions (optional).

Specified by:
act in interface IXholon
Overrides:
act in class Xholon

processReceivedMessage

public void processReceivedMessage(Message msg)
Description copied from interface: IXholon
Process a received ROOM/UML2 message taken from the message queue. All sent messages are placed in queues before they are processed.

Specified by:
processReceivedMessage in interface IXholon
Overrides:
processReceivedMessage in class Xholon

performActivity

public void performActivity(int activityId,
                            IMessage msg)
Description copied from interface: IXholon
Do the UML2 Activity identified by the activityId. This is code called during a state Transition, or while entering, exiting, or within a State.

Specified by:
performActivity in interface IXholon
Overrides:
performActivity in class Xholon

performGuard

public boolean performGuard(int activityId,
                            IMessage msg)
Description copied from interface: IXholon
Do the UML2 Activity identified by the activityId. This is code called before a Transition from a State or Choice, to check the Guard conditions.

Specified by:
performGuard in interface IXholon
Overrides:
performGuard in class Xholon

toString

public java.lang.String toString()
Overrides:
toString in class Xholon