next up previous contents
Next: String create_agent(String agentname, String Up: VoyagerMasaGatewayStationaryAgent Previous: Konstruktor

void run

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
\begin{figure}
 \begin{center}
 \leavevmode
 
\epsffile {Bilder/Voyager_verzeichnis.eps}

 \end{center}\end{figure}

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 up previous contents
Next: String create_agent(String agentname, String Up: VoyagerMasaGatewayStationaryAgent Previous: Konstruktor
Copyright Munich Network Management Team