Package cmion.level3
Class AgentMindConnector
java.lang.Object
ion.Meta.Element
cmion.architecture.CmionComponent
cmion.level3.AgentMindConnector
- Direct Known Subclasses:
FAtiMAConnector,FAtiMARetainer,SuperSimpleMigratingByInviteMindConnector,SuperSimpleMigratingMindConnector,SuperSimpleMindConnector
This abstract class describes the functionality an agent mind interface should provide.
A concrete implementation of an AgentMind connector has to implement the abstract methods
of this class. The FAtiMA connector subclasses this class but other subclasses for different
agent minds are possible. The class SuperSimpleMind exemplifies how another mind could be
integrated.
-
Field Summary
Fields inherited from class cmion.architecture.CmionComponent
architecture -
Constructor Summary
ConstructorsConstructorDescriptionAgentMindConnector(IArchitecture architecture) create a new Agent Mind Connector -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract voidinforms the mind that the architecture is ready for the mind executing actionsabstract voidsends a command to the mind telling it to resume decision making and action executionfinal voidcancel(MindAction mindAction) cancels a currently executing mind action (if such an action is currently running)abstract booleanreturns whether the mind is sleeping or notfinal voidnewAction(MindAction mindAction) call this if the mind decides to execute a new action, this will schedule an ION request with the competency manager to execute the actionvoidabstract method overridden from ION.meta.elementprotected abstract voidinforms mind of the success of the cancellation of an executed actionprotected abstract voidinforms mind of the failure of a recently executed actionprotected abstract voidinforms mind of the success of a recently executed actionprotected abstract voidprocessEntityAdded(String entityName) informs the mind that a new entity (agent or object) has been added to the world modelprotected abstract voidprocessEntityRemoved(String entityName) informs the mind that an entity (agent or object) has been removed from the world modelprotected abstract voidprocessPropertyChanged(String entityName, String propertyName, String propertyValue, boolean persistent) informs the mind that a property of an agent or object in the world model has changedprotected abstract voidprocessPropertyRemoved(String entityName, String propertyName) informs the mind that a property of an agent or object in the world model has been removedprotected abstract voidprocessRawMessage(String message) in this message a mind can parse raw messages containing specialised communication / perceptions / requestsprotected abstract voidprocessRemoteAction(MindAction remoteAction) sends a remoteAction (an action that another agent/user has performed) to the mindfinal voidin this method the mind connector registers its request and event handlers with IONabstract voidsends a command to the connected mind, making it pause any decision making processes and action execution, while the mind is paused it should not send any actionMethods inherited from class cmion.architecture.CmionComponent
getArchitecture, isConnected, raiseMethods inherited from class ion.Meta.Element
destroy, getEventFilters, getEventHandlers, getRequestFilters, getRequestHandlers, getSimulation, getUID, schedule, wasDestroyed
-
Constructor Details
-
AgentMindConnector
create a new Agent Mind Connector
-
-
Method Details
-
sendMindToSleep
public abstract void sendMindToSleep()sends a command to the connected mind, making it pause any decision making processes and action execution, while the mind is paused it should not send any action -
isMindSleeping
public abstract boolean isMindSleeping()returns whether the mind is sleeping or not -
awakeMind
public abstract void awakeMind()sends a command to the mind telling it to resume decision making and action execution -
processRemoteAction
sends a remoteAction (an action that another agent/user has performed) to the mind -
processActionSuccess
informs mind of the success of a recently executed action -
processActionFailure
informs mind of the failure of a recently executed action -
processActionCancellation
informs mind of the success of the cancellation of an executed action -
processEntityAdded
informs the mind that a new entity (agent or object) has been added to the world model -
processEntityRemoved
informs the mind that an entity (agent or object) has been removed from the world model -
processPropertyChanged
protected abstract void processPropertyChanged(String entityName, String propertyName, String propertyValue, boolean persistent) informs the mind that a property of an agent or object in the world model has changed -
processPropertyRemoved
informs the mind that a property of an agent or object in the world model has been removed -
processRawMessage
in this message a mind can parse raw messages containing specialised communication / perceptions / requests -
architectureReady
protected abstract void architectureReady()informs the mind that the architecture is ready for the mind executing actions -
registerHandlers
public final void registerHandlers()in this method the mind connector registers its request and event handlers with ION- Specified by:
registerHandlersin classCmionComponent
-
newAction
call this if the mind decides to execute a new action, this will schedule an ION request with the competency manager to execute the action -
cancel
cancels a currently executing mind action (if such an action is currently running) -
onDestroy
public void onDestroy()abstract method overridden from ION.meta.element- Overrides:
onDestroyin classCmionComponent
-