DRCL JavaSim API

drcl.ruv
Class Shell

java.lang.Object
  |
  +--drcl.DrclObj
        |
        +--drcl.comp.Component
              |
              +--drcl.ruv.Shell
All Implemented Interfaces:
java.lang.Cloneable, ObjectDuplicable, java.io.Serializable
Direct Known Subclasses:
ShellPython, ShellTcl

public abstract class Shell
extends Component

The base class for all shell classes. Properties

Ports (in addition to those defined in drcl.comp.Component): The class defines a default "command" port to receives commands.

See Also:
Serialized Form

Inner classes inherited from class drcl.comp.Component
Component.LockPack
 
Field Summary
protected static java.lang.String COMMAND_EXIT
           
protected static java.lang.String COMMAND_QUIT
           
protected  Port port
           
protected  Port result
           
 
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, lockHead, name, parent, PortGroup_DEFAULT_GROUP, PortGroup_EVENT, PortGroup_SERVICE, Root, Trace_DATA, Trace_SEND
 
Constructor Summary
Shell()
           
Shell(java.lang.String id_)
           
 
Method Summary
protected abstract  java.lang.String _autocomplete(java.lang.String cmd_, int pos_)
          Subclasses should override this method to provide autocomplete function.
 void duplicate(java.lang.Object source_)
          Duplicates the content of source_, including ID, name, child components and connections among them, to this component.
 java.lang.String eval(java.io.BufferedReader r_)
           
protected abstract  java.lang.String eval(java.lang.String cmd_)
           
 java.lang.String evalFile(java.lang.String script_, java.lang.String[] args_)
           
 void evalResource(java.lang.String resource_)
          Script is from resource.
protected  java.lang.String getIncompletePrompt()
           
protected  java.lang.String getPrompt()
           
 java.lang.String info()
          Returns information regarding this component.
protected abstract  void init()
           
protected abstract  boolean isCommandComplete(java.lang.String cmd_)
           
protected  boolean isResultAffirmative(java.lang.String result_)
           
 void print(java.lang.String msg_)
           
 void println(java.lang.String msg_)
           
 void process(java.lang.Object data_, Port inPort_)
          The main callback method of a component.
 void reset()
          Resets the component for being used anew.
protected abstract  void setArguments(java.lang.String[] args_)
           
protected  void setPrompt(java.lang.String prompt_)
           
protected  java.lang.String waitUntil()
           
 void waitUntil(java.lang.String cmd_)
           
 
Methods inherited from class drcl.comp.Component
_resume, _start, _stop, addComponent, addComponent, addEventPort, addEventPort, addForkPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addServerPort, addServerPort, cancelFork, componentAdded, componentRemoved, connect, containsComponent, containsComponent, containsPort, debug, disconnectAll, disconnectAllPeers, disconnectAllPorts, drop, drop, error, error, expose, exposeEventPorts, exposePort, exposePort, exposePort, exposePort, exposePort, findAvailable, findAvailable, findAvailable, finishing, fork, forkAt, getAllComponents, getAllPorts, getAllPorts, getAllWiresInside, getAllWiresInsideOut, getAllWiresOut, getComponent, getComponentFlag, getComponentFlag, getContract, getContractHT, getContractHT, getDebugFlagsInBinary, getDebugLevelNames, getForkManager, getID, getName, getParent, getPort, getPort, getRoot, getRuntime, getTime, iduplicate, isAncestorOf, isComponentNotificationEnabled, isContainer, isDebugEnabled, isDebugEnabledAt, isDirectOutputEnabled, isEnabled, isErrorNoticeEnabled, isEventExportEnabled, isGarbageDisplayEnabled, isGarbageEnabled, isPortNotificationEnabled, isPortRemovable, isStarted, isStopped, isTraceEnabled, lock, notify, notifyAll, operate, portAdded, portRemoved, reboot, removeAll, removeAllComponents, removeAllPorts, removeAllPorts, removeComponent, removeComponent, removePort, removePort, removePort, resume, run, sduplicate, send, sendAt, setComponentFlag, setComponentFlag, setComponentNotificationEnabled, setContract, setDebugEnabled, setDebugEnabled, setDebugEnabledAt, setDebugEnabledAt, setDebugEnabledAt, setDirectOutputEnabled, setDirectOutputEnabled, setEnabled, setErrorNoticeEnabled, setErrorNoticeEnabled, setEventExportEnabled, setEventExportEnabled, setExecutionBoundary, setGarbageDisplayEnabled, setGarbageDisplayEnabled, setGarbageEnabled, setGarbageEnabled, setID, setID, setName, setPort, setPort, setPortNotificationEnabled, setPortRemovable, setRuntime, 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, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

COMMAND_QUIT

protected static final java.lang.String COMMAND_QUIT

COMMAND_EXIT

protected static final java.lang.String COMMAND_EXIT

port

protected Port port

result

protected Port result
Constructor Detail

Shell

public Shell()
      throws java.lang.Exception

Shell

public Shell(java.lang.String id_)
      throws java.lang.Exception
Method Detail

reset

public void reset()
Description copied from class: Component
Resets the component for being used anew. All the internal variables must be set to the initial state. All the ports and child components are reset as well.
Overrides:
reset in class Component

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

setPrompt

protected void setPrompt(java.lang.String prompt_)

getPrompt

protected java.lang.String getPrompt()

process

public void process(java.lang.Object data_,
                    Port inPort_)
Description copied from class: Component
The main callback method of a component. Being invoked when data arrives at a port of its.
Overrides:
process in class Component
Following copied from class: drcl.comp.Component
Parameters:
data_ - the arrival data.
inPort_ - the port where the data arrives.

duplicate

public void duplicate(java.lang.Object source_)
Description copied from class: Component
Duplicates the content of source_, including ID, name, child components and connections among them, to this component. Subclasses need to override this method to copy its own variables.
Overrides:
duplicate in class Component

init

protected abstract void init()
                      throws java.lang.Exception

eval

protected abstract java.lang.String eval(java.lang.String cmd_)
                                  throws java.lang.Exception

isCommandComplete

protected abstract boolean isCommandComplete(java.lang.String cmd_)

setArguments

protected abstract void setArguments(java.lang.String[] args_)
                              throws java.lang.Exception

getIncompletePrompt

protected java.lang.String getIncompletePrompt()

evalFile

public final java.lang.String evalFile(java.lang.String script_,
                                       java.lang.String[] args_)
                                throws java.lang.Exception

evalResource

public final void evalResource(java.lang.String resource_)
                        throws java.lang.Exception
Script is from resource.

eval

public java.lang.String eval(java.io.BufferedReader r_)
                      throws java.lang.Exception

waitUntil

public void waitUntil(java.lang.String cmd_)

isResultAffirmative

protected boolean isResultAffirmative(java.lang.String result_)

waitUntil

protected java.lang.String waitUntil()
                              throws java.lang.Exception

print

public void print(java.lang.String msg_)

println

public void println(java.lang.String msg_)

_autocomplete

protected abstract java.lang.String _autocomplete(java.lang.String cmd_,
                                                  int pos_)
                                           throws java.lang.Exception
Subclasses should override this method to provide autocomplete function. Basically this method finds the partial path from the particial command that the user has typed and then execute autocomplete commands in Commands or a wrap-up version of which to return the common prefix string of all matched components or ports.
See Also:
Commands.autocomplete(String, Paths[], Shell)

DRCL JavaSim API

Copyright © 2001 - DRCL, OSU     ~ Back to JavaSim Home ~