Next: Controlling of (System) Agents
Up: AgentSystem Class
Previous: Creation of a System
  Contents
The Agents are created different. One difference is that an Agent can, when
the AgentClassLoader supports it, be loaded over the net from
a ftp or web server. Remember that this is still not implemented in this version
of TAgents. This is also valid for the third possibility to create an
Agent, to fetch the classes from another Agent System. So we will only have
a look at the creation of an Agent with its class files in the current CLASSPATH.
The parameters are the name of the class (like with a System Agent) and an Authority
for the Agent.
The first step is to create a new AgentID for the Agent arising.
This step has to be done first to check the security for this Agent before instantiating
it. So the next call goes to the AgentSecurityManager to check
if the Agent is allowed to execute here (checkExecution()). Now the
Agent can be created. The biggest part is taken over by the AgentLoader
which is called now to instantiate the new Agent. It calls the AgentClassLoader
to get a new Agent class back to make it easy to be used for Agents from other
sources. Then the Agent gets its AgentHelper and the AgentLoader is instructed
to initialize and start the Agent. The the AgentLoader is
put with its ID into the agents Hashtable. At last
the System tells every admin System Agent that there has been created a new
Agent to keep their lists of Agents up to date.
For details which is done at initializing and starting of a System Agent, see
the Section
![[*]](/usr/share/latex2html/icons/crossref.png)
.
Next: Controlling of (System) Agents
Up: AgentSystem Class
Previous: Creation of a System
  Contents
Thomas Letsch
2001-02-21