Next: String create_agent(String agentname, String
Up: VoyagerMasaGatewayStationaryAgent
Previous: Konstruktor
Die run()-Methode wird von der Oberklasse Agent geerbt und
überschrieben. Sie wird beim Start des
VoyagerMasaGatewayStationaryAgent automatisch vom MASA System
gestartet. Zunächst wird überprüft, ob der
VoyagerMasaGatewayStationaryAgent als global definiert
ist. Ist er nicht als global deklariert wird er in den
suspend-Status versetzt und bricht die run()-Methode
ab. Damit ist der VoyagerMasaGatewayStationaryAgent als unbrauchbar markiert und muß nach einer anschließenden Terminierung neu gestartet werden. Nach einer erfolgreichen Kontrolle seiner Eigenschaft bezüglich der Globalität wird im MASA Namensverzeichnis auf Ebene der globalen Agenten ein neues Namensverzeichnis für Voyager Agenten angelegt (s.Abb.4.5).
Abbildung 4.5:
Namensverzeichnis ``Voyager'' in MASA
|
Anschließend wird eine Instanz des VoyagerAgentManager erstellt
und beim MASA System registriert. Eine Referenz auf das MASA System
Objekt wird mit _agentManager.getAgentSystemService()
ermittelt, wobei _agentManager als Attribut in jedem MASA
Agenten den MASA AgentManager referenziert. An das MASA System
Objekt kann nun die Nachricht registerAgentManager() mit dem
instanzierten VoyagerAgentManager und dem Agentensystemtyp für
Voyager geschickt werden. Der Agentsystemtyp ist als short-Variable
definiert und wird im Makefile.DEF von MASA für Voyager mit
de.unimuenchen.informatik.mnm.masa.voyager.type =
``Agentensystemtyp'' gesetzt und kann dann aus der gleichnamigen
Java-Property ausgewertet werden . Der Standardwert für MASA ist 4,
der für Voyager ist mit 5 festgelegt. Eine Referenz auf den im MASA
registrierten VoyagerAgentManager wird in
_voyagerAgentManager gespeichert. Nach der erfolgreichen
Registrierung des VoyagerAgentManagers wird die
main()-Methode des NamingGateways in einem eigenen Thread
gestartet. Dazu wird die Liste der Voyager Server, die im Attribut
_voyagerServer (s. oben ``Konstruktor'' in 4.4.2) gespeichert sind, übergeben.
Next: String create_agent(String agentname, String
Up: VoyagerMasaGatewayStationaryAgent
Previous: Konstruktor
Copyright Munich Network Management Team