org.almendra.janet.cas.node
Class AgentDispatcher
java.lang.Object
org.almendra.janet.cas.node.AgentDispatcher
- All Implemented Interfaces:
- java.rmi.Remote, INamedObject, IAgentDispatcher
public class AgentDispatcher
- extends java.lang.Object
- implements INamedObject, IAgentDispatcher
- Author:
- Oliver Plohmann
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LOG_EVENT_ILLEGAL_AGENT_NAME
public static final java.lang.String LOG_EVENT_ILLEGAL_AGENT_NAME
- See Also:
- Constant Field Values
LOG_EVENT_NO_SUCH_AGENT
public static final java.lang.String LOG_EVENT_NO_SUCH_AGENT
- See Also:
- Constant Field Values
LOGGER_OBJECT_NAME
public static final java.lang.String LOGGER_OBJECT_NAME
- See Also:
- Constant Field Values
LOG_EVENT_RECEIVED_COMMAND
public static final java.lang.String LOG_EVENT_RECEIVED_COMMAND
- See Also:
- Constant Field Values
agentsByName
protected java.util.Map agentsByName
name
protected java.lang.String name
logger
protected Logger logger
node
protected Node node
lock
protected EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock lock
AgentDispatcher
protected AgentDispatcher()
AgentDispatcher
public AgentDispatcher(Node node,
Logger logger,
java.lang.String nodeName)
setLogger
protected void setLogger(Logger parentLogger)
registeredLogEvents
protected java.util.List registeredLogEvents()
- Returns:
setName
public void setName(java.lang.String name)
- Parameters:
name
- The name to set.
accept
public void accept(CommandEnvelope commandEnvelope)
throws java.lang.IllegalArgumentException
- Specified by:
accept
in interface IAgentDispatcher
- Throws:
java.lang.IllegalArgumentException
signalCommandArrived
protected void signalCommandArrived(CommandEnvelope commandEnvelope)
- Parameters:
commandEnvelope
-
monitorCommandReceived
protected void monitorCommandReceived(CommandEnvelope env)
- Parameters:
commandEnvelope
-
monitorCommandReceivedAndWaiting
protected void monitorCommandReceivedAndWaiting(CommandEnvelope env)
- Parameters:
commandEnvelope
-
acceptResponse
protected void acceptResponse(CommandEnvelope commandEnvelope,
IAgent agent)
- Parameters:
commandEnvelope
-
logReceivedCommand
protected void logReceivedCommand(CommandEnvelope commandEnvelope)
- Parameters:
commandEnvelope
-
getAgent
protected IAgent getAgent(java.lang.String destinationAgentName)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
checkDestinationAgentName
protected boolean checkDestinationAgentName(java.lang.String destinationAgentName)
throws java.lang.IllegalArgumentException
- Parameters:
destinationAgentName
-
- Throws:
java.lang.IllegalArgumentException
add
protected void add(IAgent agent)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
exists
protected int exists(LocalAgentPath path)
existsExactly
protected boolean existsExactly(LocalAgentPath path)
remove
protected IAgent remove(java.lang.String qualifiedAgentName)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
remove
protected IAgent remove(IAgent agent)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
stopAndRemove
protected void stopAndRemove(java.lang.String qualifiedAgentName)
getName
public java.lang.String getName()
- Description copied from interface:
INamedObject
- All objects that have a user-defined name must implement this method.
- Specified by:
getName
in interface INamedObject
- Specified by:
getName
in interface IAgentDispatcher
- Returns:
- name
getAllAgentNames
protected java.util.List getAllAgentNames(java.lang.String applicationName,
java.lang.String capabilityName)
- Parameters:
string
- string2
-
- Returns:
isLocalAndIsIdle
public boolean isLocalAndIsIdle(AgentPath agentPath)
getQueueSize
public long getQueueSize(LocalAgentPath agentPath)
throws java.rmi.RemoteException
- Specified by:
getQueueSize
in interface IAgentDispatcher
- Returns:
-
- Throws:
java.rmi.RemoteException