ist.palcom.assemblies
Class Assembly

java.lang.Object
  extended by ist.palcom.services.AbstractService
      extended by ist.palcom.assemblies.Assembly
All Implemented Interfaces:
Service, IHgraphNode
Direct Known Subclasses:
ScriptedAssembly

public class Assembly
extends AbstractService

An Assembly is a service that manages a set of connections, and that can have a script coordinating services. The assembly info is read from disk and stored on disk for later use. The infos are stored after each update, for robustness.


Field Summary
 PRDAssemblyVer assemblyVer
          The AssemblyInfo for this assembly.
protected  ist.palcom.assemblies.Assembly.CommandThread commandThread
           
protected  boolean[] connectionEstablished
           
protected  ist.palcom.assemblies.Assembly.DebugService debugService
           
 
Fields inherited from class ist.palcom.services.AbstractService
_node, connectionsMonitor, context, info, siid
 
Fields inherited from interface ist.palcom.hgraph.IHgraphNode
CHILD_NAME_CLASH, CIRCULARITY_CLASH, COMMAND_OR_NODE_MISSING, ERROR, HANDLER_MISSING, INVOKATOR_MISSING, LISTENER_MISSING, NODE_NOT_CHILD, PATH_MISSING, SIBLING_ALREADY_EXISTS, SIBLING_NONEXISTENT, SIBLING_REFERENCE_ALREADY_EXISTS, SIBLING_REFERENCE_NONEXISTENT, STATUS_OK, VALUE_ALREADY_EXISTS, VALUE_NOT_PRESENT
 
Constructor Summary
Assembly(AssemblyDeviceContext context, PRDAssemblyVer assemblyInfo, int period, LocalSID localSID)
           
 
Method Summary
protected  boolean allConnectionsEstablished()
          for self-test
protected  void commandReceived(CommandEvent event)
          Handle a CommandEvent received from a ServiceDescription.
 void doRequestConnection(java.util.ArrayList l)
          send connection requests to resource manager
 void doRequestConnection(PRDData d)
           
 void doRequestConnections()
           
 void doRequestDisconnection(java.util.ArrayList l)
           
 void doRequestDisconnection(PRDData d)
          send cancel connection requests to resource manager
 void doRequestDisconnections()
           
protected  SelfTester getSelfTester()
           
 ServiceID getServiceID()
           
protected  void logClear()
           
protected  void logMsg(java.lang.String msg)
           
 void replaceServiceDecl(ServiceDecl oldDecl, ServiceDecl newDecl)
           
protected  void setSelfTestResult(java.lang.String s)
           
 void setThisReferencesToDeviceID()
           
 void start()
          Start the assembly.
 void stop()
          Stop the assembly.
 
Methods inherited from class ist.palcom.services.AbstractService
addNodeChild, addServiceProxyListener, connectionClosed, connectionCreated, connectTo, disconnectFrom, getChildIterator, getConnections, getFuncFunc, getNodeName, getNodeParent, getPath, getRemoteServiceProxy, getSelector, getServiceInfo, getServiceInstanceID, getServiceProxy, getSiblingFunc, getValueFunc, hasChildNamed, isAncestorOf, remoteServiceProxyIterator, removeNodeChild, removeServiceProxyListener, sendToAll, setGroupID, setLocalSID, setName, setNodeName, setNodeParent, setServiceInstanceID, setServiceProxy, setStatus, setTopic, toXML, toXMLFull, toXMLFullRecursively, toXMLRecursively, updatePath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

connectionEstablished

protected boolean[] connectionEstablished

assemblyVer

public PRDAssemblyVer assemblyVer
The AssemblyInfo for this assembly.


commandThread

protected ist.palcom.assemblies.Assembly.CommandThread commandThread

debugService

protected ist.palcom.assemblies.Assembly.DebugService debugService
Constructor Detail

Assembly

public Assembly(AssemblyDeviceContext context,
                PRDAssemblyVer assemblyInfo,
                int period,
                LocalSID localSID)
         throws java.io.IOException
Throws:
java.io.IOException
Method Detail

getServiceID

public ServiceID getServiceID()
Specified by:
getServiceID in class AbstractService
Returns:
the ServiceID of the service.

setSelfTestResult

protected void setSelfTestResult(java.lang.String s)

getSelfTester

protected SelfTester getSelfTester()

allConnectionsEstablished

protected boolean allConnectionsEstablished()
for self-test

Returns:
true if all declared connections are established

start

public void start()
           throws java.io.IOException
Start the assembly.

Overrides:
start in class AbstractService
Throws:
java.io.IOException

stop

public void stop()
          throws java.io.IOException
Stop the assembly.

Overrides:
stop in class AbstractService
Throws:
java.io.IOException

doRequestDisconnection

public void doRequestDisconnection(java.util.ArrayList l)

doRequestConnection

public void doRequestConnection(java.util.ArrayList l)
send connection requests to resource manager

Parameters:
l - a list of Decl nodes

doRequestDisconnection

public void doRequestDisconnection(PRDData d)
send cancel connection requests to resource manager

Parameters:
d - a Decl node

doRequestConnection

public void doRequestConnection(PRDData d)

doRequestConnections

public void doRequestConnections()

doRequestDisconnections

public void doRequestDisconnections()

replaceServiceDecl

public void replaceServiceDecl(ServiceDecl oldDecl,
                               ServiceDecl newDecl)

commandReceived

protected void commandReceived(CommandEvent event)
Handle a CommandEvent received from a ServiceDescription.


logMsg

protected void logMsg(java.lang.String msg)

logClear

protected void logClear()

setThisReferencesToDeviceID

public void setThisReferencesToDeviceID()