org.primordion.xholon.samples
Class XhTestFsm

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

public class XhTestFsm
extends XholonWithPorts
implements CeTestFsm

Test FSM. Test all finite state machine (FSM) features supported by Xholon.

Since:
0.2 (Created on November 16, 2005)
Author:
Ken Webb

Field Summary
static int P_PARTNER
           
 java.lang.String roleName
           
static int SIG1
           
static int SIG2
           
static int SIG3
           
 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
XhTestFsm()
          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

SIG1

public static final int SIG1
See Also:
Constant Field Values

SIG2

public static final int SIG2
See Also:
Constant Field Values

SIG3

public static final int SIG3
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

XhTestFsm

public XhTestFsm()
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