ABLE, Version 1.1b

com.ibm.able.platform.agents
Interface FipaAccAgent

All Known Implementing Classes:
FipaAccAgentAppl

public abstract interface FipaAccAgent
extends FipaAgent

This class defines the base interface, or behavior, which all FIPA ACC agents must support.

Version:
$Revision: 1.2 $, $Date: 2000/02/08 15:13:58 $

Method Summary
 void forward(FipaAclMessage theAclMessage)
          Forward a message to the agent(s) addressed on the envelope.
 void forward(java.lang.String theAclMessage)
          Forward a message to the agent(s) addressed on the envelope.
 
Methods inherited from interface com.ibm.able.platform.agents.FipaAgent
destroyAgent, executeAgent, invokeAgent, moveAgent, msgAcceptProposal, msgAgree, msgCancel, msgCfp, msgConfirm, msgDisconfirm, msgFailure, msgInform, msgInformIf, msgInformRef, msgNotUnderstood, msgPropose, msgQueryIf, msgQueryRef, msgRefuse, msgRejectProposal, msgRequest, msgRequestWhen, msgRequestWhenever, msgSubscribe, quitAgent, resumeAgent, suspendAgent, waitAgent, wakeUpAgent
 
Methods inherited from interface com.ibm.able.agents.AbleAgent
addEventConnection, getAgentAddr, getAgentHost, getAgentName, getDataSource, getNumEpochs, getProcessList, isActiveDataSource, removeEventConnection, setActiveDataSource, setProcessList
 
Methods inherited from interface com.ibm.able.AbleBean
addAbleEventListener, addDestBufferConnection, addPropertyChangeListener, addPropertyConnection, addSourceBufferConnection, dataChanged, flushAbleEventQueue, getAbleEventListeners, getAbleEventProcessingEnabled, getAbleEventQueueSize, getComment, getDestBufferConnections, getFileName, getInputBuffer, getInputBuffer, getInputBufferAsStringArray, getInputBufferContents, getLogger, getName, getOutputBuffer, getOutputBuffer, getOutputBufferAsStringArray, getOutputBufferContents, getParent, getPropertyConnectionManager, getSleepTime, getSourceBufferConnections, getState, hasInputBuffer, hasOutputBuffer, init, init, isChanged, isConnectable, isDataFlowEnabled, isTimerEventProcessingEnabled, notifyAbleEventListeners, process, processBufferConnections, propertyChange, quitAll, quitEnabledEventProcessing, removeAbleEventListener, removeAllBufferConnections, removeDestBufferConnection, removePropertyChangeListener, removePropertyConnection, removeSourceBufferConnection, reset, restartEnabledEventProcessing, restoreFromFile, restoreFromFile, resumeAll, resumeEnabledEventProcessing, saveToFile, saveToFile, setAbleEventProcessingEnabled, setChanged, setComment, setDataFlowEnabled, setFileName, setInputBuffer, setInputBuffer, setLogger, setName, setOutputBuffer, setOutputBuffer, setParent, setSleepTime, setState, setTimerEventProcessingEnabled, startEnabledEventProcessing, suspendAll, suspendEnabledEventProcessing
 
Methods inherited from interface com.ibm.able.AbleBeanContainer
addBean, containsBean, containsBean, getBean, getBeans, removeAllBeans, removeBean
 
Methods inherited from interface com.ibm.able.beans.AbleSensorManager
addSensor, getSensors, invokeSensor, removeSensor, setSensors
 
Methods inherited from interface com.ibm.able.beans.AbleEffectorManager
addEffector, getEffectors, invokeEffector, removeEffector, setEffectors
 
Methods inherited from interface com.ibm.able.AbleEventListener
handleAbleEvent
 
Methods inherited from interface com.ibm.able.AbleEventQueueProcessor
processAbleEvent, processNoEventProcessingEnabledSituation, processTimerEvent
 

Method Detail

forward

public void forward(FipaAclMessage theAclMessage)
             throws java.rmi.RemoteException
Forward a message to the agent(s) addressed on the envelope.

This version of forward() takes an AclMessage object whose :content slot can be either an AbleEvent object or any arbitrary object. If the content slot contains an instance of an AbleEvent, then that event is forwarded to each recipient by calling each recipient's handleAbleEvent() method and passing the AbleEvent as an argument.

If the content slot contains an arbitrary object (that isn't an instance of an AbleEvent), then an AbleEvent object is created such that the event action is derived from the Fipa.AclMessageType and the AclMessage itself is set to be the event's action argument. This newly created AbleEvent is then forwarded to each recipient by calling each recipient's handleAbleEvent() method and passing the AbleEvent as an argument.

Parameters:
theAclMessage - an AclMessage object whose ":content" slot is either
  1. a valid AbleEvent object where the "action" of the event object is the name of a method in the recipient, and the "argObject" is some object required by the method. For example, an event for an AMS might have "register" as the action and a FipaAmsAgentDefinition object as the argument.
  2. any Java Object other than an AbleEvent. In this case, an AbleEvent is constructed based on the information in the AclMessage itself, and that event is forwarded on to each recipient.

Throws:
java.rmi.RemoteException - On any error.

forward

public void forward(java.lang.String theAclMessage)
             throws java.rmi.RemoteException
Forward a message to the agent(s) addressed on the envelope.

This version of forward() takes a string KQML message, parses it, and creates the necessary structures which are forwarded on to the recipients.

Parameters:
theAclMessage - a message in KQML format.

Throws:
java.rmi.RemoteException - On any error.

ABLE, Version 1.1b

ABLE: Produced by Joe, Don, and Jeff who say, 'Thanks for your support.'