jason.infra.jade
Class JadeAgArch

Package class diagram package JadeAgArch
java.lang.Object
  extended by jade.core.Agent
      extended by jason.infra.jade.JadeAg
          extended by jason.infra.jade.JadeAgArch
All Implemented Interfaces:
jade.core.TimerListener, AgArchInfraTier, java.io.Serializable, java.lang.Runnable

public class JadeAgArch
extends JadeAg
implements AgArchInfraTier

Implementation of the Jade Architecture to run Jason agents

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class jade.core.Agent
jade.core.Agent.Interrupted
 
Field Summary
static java.lang.String dfName
          name of the "jason agent" service in DF
protected  AgArch userAgArch
          the user customisation of the architecture
 
Fields inherited from class jason.infra.jade.JadeAg
ASKALL, ASKHOW, conversationIds, logger, running, rwid, TELLHOW, UNACHIEVE, UNTELL, UNTELLHOW
 
Fields inherited from class jade.core.Agent
AP_ACTIVE, AP_DELETED, AP_IDLE, AP_INITIATED, AP_MAX, AP_MIN, AP_SUSPENDED, AP_WAITING, D_ACTIVE, D_MAX, D_MIN, D_RETIRED, D_SUSPENDED, D_UNKNOWN, MSG_QUEUE_CLASS
 
Constructor Summary
JadeAgArch()
           
 
Method Summary
 void act(ActionExec action, java.util.List<ActionExec> feedback)
          Executes the action action and, when finished, add it back in feedback actions.
 boolean canSleep()
          Returns true whether the agent can sleep according to the arch
 void checkMail()
          Reads the agent's mailbox and adds messages into the agent's circumstance
 void doDelete()
           
 java.lang.String getAgName()
          Gets the agent's name
 RuntimeServicesInfraTier getRuntimeServices()
          Gets an object with infrastructure runtime services
 void informCycleFinished(boolean breakpoint, int cycle)
          Informs the infrastructure tier controller that the agent has finished its reasoning cycle (used in sync mode).
protected  AgentParameters parseParameters()
           
 java.util.List<Literal> perceive()
          Gets the agent's perception as a list of Literals
protected  void setup()
           
 void sleep()
          Put the agent in "sleep" mode
 void stopAg()
          Stops the agent
protected  void takeDown()
           
protected  java.lang.Object translateContentToJason(jade.lang.acl.ACLMessage m)
          returns the content of the message m and implements some pro-processing of the content, if necessary
 void wake()
          Removes the agent from the "sleep" mode
 
Methods inherited from class jason.infra.jade.JadeAg
aclToKqml, addAllAgsAsReceivers, ask, broadcast, isRunning, jasonToACL, kqmlToACL, sendMsg
 
Methods inherited from class jade.core.Agent
addBehaviour, afterClone, afterMove, beforeClone, beforeMove, blockingReceive, blockingReceive, blockingReceive, blockingReceive, changeStateTo, clean, createMessageQueue, doActivate, doClone, doMove, doSuspend, doTimeOut, doWait, doWait, doWake, getAgentState, getAID, getAMS, getArguments, getBootProperties, getContainerController, getContentManager, getCurQueueSize, getDefaultDF, getHap, getHelper, getLocalName, getName, getO2AObject, getProperty, getQueueSize, getState, here, isRestarting, join, notifyChangeBehaviourState, notifyRestarted, postMessage, putBack, putO2AObject, receive, receive, removeBehaviour, removeTimer, restartLater, restore, restoreBufferedState, run, send, setArguments, setEnabledO2ACommunication, setGenerateBehaviourEvents, setO2AManager, setQueueSize, waitUntilStarted, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jason.architecture.AgArchInfraTier
broadcast, isRunning, sendMsg
 

Field Detail

dfName

public static java.lang.String dfName
name of the "jason agent" service in DF


userAgArch

protected AgArch userAgArch
the user customisation of the architecture

Constructor Detail

JadeAgArch

public JadeAgArch()
Method Detail

setup

protected void setup()
Overrides:
setup in class jade.core.Agent

parseParameters

protected AgentParameters parseParameters()
                                   throws jason.mas2j.parser.ParseException,
                                          java.io.IOException
Throws:
jason.mas2j.parser.ParseException
java.io.IOException

doDelete

public void doDelete()
Overrides:
doDelete in class JadeAg

takeDown

protected void takeDown()
Overrides:
takeDown in class jade.core.Agent

stopAg

public void stopAg()
Description copied from interface: AgArchInfraTier
Stops the agent

Specified by:
stopAg in interface AgArchInfraTier

sleep

public void sleep()
Description copied from interface: AgArchInfraTier
Put the agent in "sleep" mode

Specified by:
sleep in interface AgArchInfraTier

wake

public void wake()
Description copied from interface: AgArchInfraTier
Removes the agent from the "sleep" mode

Specified by:
wake in interface AgArchInfraTier

getAgName

public java.lang.String getAgName()
Description copied from interface: AgArchInfraTier
Gets the agent's name

Specified by:
getAgName in interface AgArchInfraTier

canSleep

public boolean canSleep()
Description copied from interface: AgArchInfraTier
Returns true whether the agent can sleep according to the arch

Specified by:
canSleep in interface AgArchInfraTier

checkMail

public void checkMail()
Description copied from interface: AgArchInfraTier
Reads the agent's mailbox and adds messages into the agent's circumstance

Specified by:
checkMail in interface AgArchInfraTier

translateContentToJason

protected java.lang.Object translateContentToJason(jade.lang.acl.ACLMessage m)
returns the content of the message m and implements some pro-processing of the content, if necessary


perceive

public java.util.List<Literal> perceive()
Description copied from interface: AgArchInfraTier
Gets the agent's perception as a list of Literals

Specified by:
perceive in interface AgArchInfraTier

act

public void act(ActionExec action,
                java.util.List<ActionExec> feedback)
Description copied from interface: AgArchInfraTier
Executes the action action and, when finished, add it back in feedback actions.

Specified by:
act in interface AgArchInfraTier

getRuntimeServices

public RuntimeServicesInfraTier getRuntimeServices()
Description copied from interface: AgArchInfraTier
Gets an object with infrastructure runtime services

Specified by:
getRuntimeServices in interface AgArchInfraTier

informCycleFinished

public void informCycleFinished(boolean breakpoint,
                                int cycle)
Informs the infrastructure tier controller that the agent has finished its reasoning cycle (used in sync mode).

breakpoint is true in case the agent selected one plan with the "breakpoint" annotation.