|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
Every agent must have an implementor of this intereface, or they probably won't work.
The implementors of this interface should be thought of as being directories of object references which can be accessed from various parts of the agent to get at the other parts.
Numerous doubts have been expressed about this strategy, because it promotes tight coupleing between the components of the agent, but moving away from it seems likely to be an extensive peice of work, so it was decided (who am I kidding? I decided) that it would be a good idea to refactor this as an interface to at least promote the possibilitiy that different component sets could be added/used.
ZeusAgentContext| Method Summary | |
void |
addFacilitator(java.lang.String agent)
|
void |
addNameserver(Address address)
|
AddressBook |
AddressBook()
|
BasicAgent |
Agent()
|
BasicAgentUI |
AgentUI()
|
Clock |
Clock()
|
Time |
currentTime()
|
Engine |
Engine()
|
ExecutionMonitor |
ExecutionMonitor()
|
ExternalDb |
ExternalDb()
|
java.util.Vector |
facilitators()
|
GenSym |
GenSym()
|
double |
getAcceptTimeout()
|
AddressBook |
getAddressBook()
|
double |
getAddressBookRefresh()
|
double |
getAddressTimeout()
|
BasicAgent |
getAgent()
|
BasicAgentUI |
getAgentUI()
|
Clock |
getClock()
|
long |
getClockStep()
|
Engine |
getEngine()
|
boolean |
getExecuteEarliest()
|
ExecutionMonitor |
getExecutionMonitor()
|
ExternalDb |
getExternalDb()
|
double |
getFacilitatorRefresh()
|
java.util.Vector |
getFacilitators()
|
double |
getFacilitatorTimeout()
|
GenSym |
getGenSym()
|
InTray |
getInTray()
|
MailBox |
getMailBox()
|
MsgHandler |
getMsgHandler()
|
java.util.Vector |
getNameservers()
|
OntologyDb |
getOntologyDb()
|
OrganisationDb |
getOrganisationDb()
|
Planner |
getPlanner()
|
ProtocolDb |
getProtocolDb()
|
java.util.Hashtable |
getQueryTable()
|
double |
getRegistrationTimeout()
|
double |
getReplanPeriod()
|
ResourceDb |
getResourceDb()
|
ReteEngine |
getReteEngine()
|
boolean |
getSharePlan()
|
TaskDb |
getTaskDb()
|
TransportFactory |
getTransportFactory()
|
ZeusExternal |
getZeusExternal()
|
MailBox |
MailBox()
|
MsgHandler |
MsgHandler()
|
java.util.Vector |
nameservers()
|
java.lang.String |
newId()
|
java.lang.String |
newId(java.lang.String tag)
|
double |
now()
|
OntologyDb |
OntologyDb()
|
OrganisationDb |
OrganisationDb()
|
Planner |
Planner()
|
ProtocolDb |
ProtocolDb()
|
java.util.Hashtable |
queryTable()
|
void |
removeFacilitator(java.lang.String agent)
|
void |
removeNameserver(java.lang.String address)
|
ResourceDb |
ResourceDb()
|
ReteEngine |
ReteEngine()
|
void |
set(AddressBook addressBook)
set the addressBook for this agent |
void |
set(BasicAgent agent)
set a reference to the agent object into this context object |
void |
set(BasicAgentUI agentUI)
|
void |
set(Clock clock)
setting the clock is a vital activity for a Zeus agent, basically by getting a Clock that is set to the Agency time (provided by the ANServer) the agent are able to co-ordinate their actions |
void |
set(Engine engine)
|
void |
set(ExecutionMonitor monitor)
|
void |
set(ExternalDb externalDb)
|
void |
set(MailBox mbox)
|
void |
set(MsgHandler msgHandler)
|
void |
set(OntologyDb ontologyDb)
|
void |
set(OrganisationDb db)
|
void |
set(Planner planner)
|
void |
set(ProtocolDb protocolDb)
|
void |
set(ResourceDb resourceDb)
|
void |
set(ReteEngine reteEngine)
|
void |
set(TaskDb taskDb)
|
void |
set(ZeusExternal zeusExternal)
the ZeusExternal is the user defined part of the agent that is called by the agent class when it is run |
void |
setAcceptTimeout(double val)
|
void |
setAddressBookRefresh(double val)
|
void |
setAddressTimeout(double val)
|
void |
setExecuteEarliest(boolean execute_earliest)
|
void |
setFacilitatorRefresh(double val)
|
void |
setFacilitators(java.util.Vector input)
|
void |
setFacilitatorTimeout(double val)
|
void |
setNameservers(java.util.Vector input)
|
void |
setRegistrationTimeout(double val)
|
void |
setReplanPeriod(double val)
|
void |
setSharePlan(boolean share_plan)
|
TaskDb |
TaskDb()
|
Time |
time(long ctm)
|
java.lang.String |
whatami()
return the type of agent, originally one of "Nameserver", "Facilitator", "Visualiser", "DbProxy" or "Agent" |
java.lang.String |
whereAmI()
whereAmI should return the deployed address of the agent - probably implemented as a TCP/IP address .... would be better implemented from a config file |
java.lang.String |
whoami()
return the name of the agent |
ZeusExternal |
ZeusExternal()
|
| Method Detail |
public void setFacilitators(java.util.Vector input)
public void addFacilitator(java.lang.String agent)
public void removeFacilitator(java.lang.String agent)
public void setNameservers(java.util.Vector input)
public void addNameserver(Address address)
public void removeNameserver(java.lang.String address)
public void set(AddressBook addressBook)
public void set(ProtocolDb protocolDb)
public void set(MailBox mbox)
public void set(MsgHandler msgHandler)
public void set(Engine engine)
public void set(ReteEngine reteEngine)
public void set(ExecutionMonitor monitor)
public void set(Planner planner)
public void set(OrganisationDb db)
public void set(TaskDb taskDb)
public void set(ResourceDb resourceDb)
public void set(OntologyDb ontologyDb)
public void set(BasicAgent agent)
public void set(BasicAgentUI agentUI)
public void set(ZeusExternal zeusExternal)
public void set(ExternalDb externalDb)
public void set(Clock clock)
public double now()
public Time currentTime()
public Time time(long ctm)
public long getClockStep()
public java.lang.String newId()
public java.lang.String newId(java.lang.String tag)
public java.lang.String whatami()
public java.lang.String whoami()
public java.util.Hashtable queryTable()
public java.util.Vector facilitators()
public java.util.Vector nameservers()
public AddressBook AddressBook()
public MailBox MailBox()
public MsgHandler MsgHandler()
public ReteEngine ReteEngine()
public Engine Engine()
public ExecutionMonitor ExecutionMonitor()
public Planner Planner()
public OrganisationDb OrganisationDb()
public TaskDb TaskDb()
public ResourceDb ResourceDb()
public OntologyDb OntologyDb()
public ExternalDb ExternalDb()
public ProtocolDb ProtocolDb()
public ZeusExternal ZeusExternal()
public BasicAgentUI AgentUI()
public BasicAgent Agent()
public GenSym GenSym()
public Clock Clock()
public java.util.Hashtable getQueryTable()
public java.util.Vector getFacilitators()
public java.util.Vector getNameservers()
public AddressBook getAddressBook()
public MailBox getMailBox()
public MsgHandler getMsgHandler()
public ReteEngine getReteEngine()
public Engine getEngine()
public ExecutionMonitor getExecutionMonitor()
public Planner getPlanner()
public OrganisationDb getOrganisationDb()
public TaskDb getTaskDb()
public ResourceDb getResourceDb()
public OntologyDb getOntologyDb()
public ExternalDb getExternalDb()
public ProtocolDb getProtocolDb()
public ZeusExternal getZeusExternal()
public BasicAgentUI getAgentUI()
public BasicAgent getAgent()
public GenSym getGenSym()
public Clock getClock()
public TransportFactory getTransportFactory()
public boolean getSharePlan()
public boolean getExecuteEarliest()
public double getAddressBookRefresh()
public double getAddressTimeout()
public double getReplanPeriod()
public double getRegistrationTimeout()
public double getFacilitatorTimeout()
public double getAcceptTimeout()
public double getFacilitatorRefresh()
public void setSharePlan(boolean share_plan)
public void setExecuteEarliest(boolean execute_earliest)
public void setAddressBookRefresh(double val)
public void setAddressTimeout(double val)
public void setReplanPeriod(double val)
public void setRegistrationTimeout(double val)
public void setFacilitatorTimeout(double val)
public void setAcceptTimeout(double val)
public void setFacilitatorRefresh(double val)
public InTray getInTray()
public java.lang.String whereAmI()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||