DRCL J-Sim API

drcl.ruv
Class TclAction

java.lang.Object
  extended bydrcl.DrclObj
      extended bydrcl.comp.Component
          extended bydrcl.comp.Extension
              extended bydrcl.ruv.TclAction
All Implemented Interfaces:
java.lang.Cloneable, ObjectCloneable, ObjectDuplicable, java.io.Serializable

public class TclAction
extends Extension

The component executes a Tcl script upon receipt of an event. One needs to call init(Interp, Object) to initialize the component with appropriate Tcl interpreter and sets up actions (Tcl scripts) to take with addAction(Object, String) and/or setUniversalAction(String).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class drcl.comp.Component
Component.Locks
 
Field Summary
 
Fields inherited from class drcl.comp.Component
FLAG_COMPONENT_NOTIFICATION, FLAG_DEBUG_ENABLED, FLAG_DIRECT_OUTPUT_ENABLED, FLAG_ENABLED, FLAG_ERROR_ENABLED, FLAG_EVENT_ENABLED, FLAG_GARBAGE_DISPLAY_ENABLED, FLAG_GARBAGE_ENABLED, FLAG_PORT_NOTIFICATION, FLAG_STARTED, FLAG_STOPPED, FLAG_TRACE_ENABLED, FLAG_UNDEFINED_START, id, infoPort, locks, name, parent, PortGroup_DEFAULT_GROUP, PortGroup_EVENT, PortGroup_SERVICE, Root, Trace_DATA, Trace_SEND
 
Constructor Summary
TclAction()
           
TclAction(java.lang.String id_)
           
 
Method Summary
 void addAction(java.lang.Object signal_, java.lang.String action_)
          Sets the Tcl script to execute in response to signal_ received.
 java.util.Map getActionMap()
          Returns the action map.
 java.lang.String getUniversalAction()
           
 java.lang.String info()
          Returns information regarding this component.
 void init(tcl.lang.Interp interp_, java.lang.Object lock_)
          Initializes the component.
 void setActionMap(java.util.Map map_)
          Sets the action map that associates the signals with actions.
 void setUniversalAction(java.lang.String action_)
          Sets the Tcl script to execute in response to any signal received.
 
Methods inherited from class drcl.comp.Extension
isExtensionEnabled, setExtensionEnabled
 
Methods inherited from class drcl.comp.Component
addComponent, addComponent, addEventPort, addEventPort, addForkPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addServerPort, addServerPort, cancelFork, connect, containsComponent, containsComponent, containsPort, debug, disconnectAll, disconnectAllPeers, disconnectAllPorts, drop, drop, duplicate, error, error, expose, exposeEventPorts, exposePort, exposePort, exposePort, exposePort, exposePort, findAvailable, findAvailable, findAvailable, fork, forkAt, getAllComponents, getAllPorts, getAllPorts, getAllWiresInside, getAllWiresInsideOut, getAllWiresOut, getComponent, getComponentFlag, getComponentFlag, getContract, getContractHT, getContractHT, getDebugFlagsInBinary, getDebugLevelNames, getID, getName, getParent, getPort, getPort, getRoot, getTime, iduplicate, isAncestorOf, isContainer, isDebugEnabled, isDebugEnabledAt, isDirectlyRelatedTo, isDirectOutputEnabled, isEnabled, isErrorNoticeEnabled, isEventExportEnabled, isGarbageDisplayEnabled, isGarbageEnabled, isPortRemovable, isStarted, isStopped, isTraceEnabled, lock, notify, notifyAll, operate, reboot, removeAll, removeAllComponents, removeAllPorts, removeAllPorts, removeComponent, removeComponent, removePort, removePort, removePort, reset, resume, run, sduplicate, send, sendAt, setComponentFlag, setComponentFlag, setDebugEnabled, setDebugEnabled, setDebugEnabledAt, setDebugEnabledAt, setDebugEnabledAt, setDirectOutputEnabled, setDirectOutputEnabled, setEnabled, setErrorNoticeEnabled, setErrorNoticeEnabled, setEventExportEnabled, setEventExportEnabled, setExecutionBoundary, setGarbageDisplayEnabled, setGarbageDisplayEnabled, setGarbageEnabled, setGarbageEnabled, setID, setID, setName, setPort, setPort, setTraceEnabled, setTraceEnabled, sleepFor, sleepUntil, stop, toString, unexpose, unlock, useLocalForkManager, useLocalForkManager, wait
 
Methods inherited from class drcl.DrclObj
clone
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TclAction

public TclAction()

TclAction

public TclAction(java.lang.String id_)
Method Detail

init

public void init(tcl.lang.Interp interp_,
                 java.lang.Object lock_)
Initializes the component. Usually, lock_ is the drcl.ruv.Shell object that contains the interpreter if the Shell has its own thread to accept commands from a terminal. If the interpreter is dedicated to this purpose, then lock_ can be the interpreter itself.

Parameters:
interp_ - the Jacl interpreter instance.
lock_ - to make sure only one thread is accessing interp_ at a time.

addAction

public void addAction(java.lang.Object signal_,
                      java.lang.String action_)
Sets the Tcl script to execute in response to signal_ received.

Parameters:
action_ - the Tcl script to execute.

setUniversalAction

public void setUniversalAction(java.lang.String action_)
Sets the Tcl script to execute in response to any signal received. This action is executed after the designated action (to the signal) is executed.


getUniversalAction

public java.lang.String getUniversalAction()

setActionMap

public void setActionMap(java.util.Map map_)
Sets the action map that associates the signals with actions.


getActionMap

public java.util.Map getActionMap()
Returns the action map.


info

public java.lang.String info()
Description copied from class: Component
Returns information regarding this component. Subclasses should override this method to provide useful information at run time.

Overrides:
info in class Component

DRCL J-Sim API

Copyright © 1998-2003 Distributed Real-time Computing Lab (DRCL). All Rights Reserved.     ~ To J-Sim Home ~