org.almendra.janet.cas.node.interpreters
Class DeregisterNodeTrait

java.lang.Object
  extended by org.almendra.janet.cas.node.interpreters.DeregisterNodeTrait

public class DeregisterNodeTrait
extends java.lang.Object

Author:
Oliver

Constructor Summary
DeregisterNodeTrait()
          Creates a new DeregisterNodeTrait object.
 
Method Summary
 void deregisterCentral(CommandAccessor cmdAccessor)
           
 void deregisterNode(CommandAccessor cmdAccessor)
           
protected  void deregisterNodeFinally(CommandAccessor cmdAccessor, java.lang.String nodeName)
          Add a command to the local system agent's schedulerAnchor to remove the reference of the node to be deregistered.
protected  void sendEventNodeAboutToDeregister(CommandAccessor cmdAccessor, java.lang.String nodeName)
           
 void unbind(RegistryLocation registryLocation, java.lang.String rmiNodeName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DeregisterNodeTrait

public DeregisterNodeTrait()
Creates a new DeregisterNodeTrait object.

Method Detail

deregisterNode

public void deregisterNode(CommandAccessor cmdAccessor)

deregisterCentral

public void deregisterCentral(CommandAccessor cmdAccessor)

sendEventNodeAboutToDeregister

protected void sendEventNodeAboutToDeregister(CommandAccessor cmdAccessor,
                                              java.lang.String nodeName)

deregisterNodeFinally

protected void deregisterNodeFinally(CommandAccessor cmdAccessor,
                                     java.lang.String nodeName)
Add a command to the local system agent's schedulerAnchor to remove the reference of the node to be deregistered. The command will be executed after the one it was spawned from has finished execution. This prevents the reference to the node to be removed before the acks to the system agent of the node to be deregistered have been sent away.

Parameters:
cmdAccessor -

unbind

public void unbind(RegistryLocation registryLocation,
                   java.lang.String rmiNodeName)
            throws java.rmi.AccessException,
                   java.rmi.RemoteException,
                   java.rmi.NotBoundException
Throws:
java.rmi.AccessException
java.rmi.RemoteException
java.rmi.NotBoundException