next up previous contents
Next: String execute_agent(String agent_name, String Up: VoyagerMasaGatewayStationaryAgent Previous: void run

String create_agent(String agentname, String classname, String packagename, String place_name)

Diese Methode dient zur Erzeugung von Voyager Agenten und wird vom Applet des VoyagerMasaGatewayStationaryAgent, dem VoyagerMasaGatewayApplet, über CORBA aufgerufen. Beim Aufruf muß der Name des Agenten, der Klassenname seiner Implementierung, falls er sich vom Agentennamen unterscheidet, und der Name des Voyager Servers angegeben werden. Das Konzept der Erstellung eines Agenten ist bezüglich der Parameter in MASA und Voyager ähnlich und kann deshalb über die MASA-Agentensystemschnittstelle abgewickelt werden. Dazu werden in create_agent() zunächst die notwendigen Parameter zusammengestellt. Dabei sind für den Voyager Agenten hauptsächlich der Agentenname, der Klassenname des Agenten und die Bezeichnung seines Voyager Servers, als Place bezeichnet, von Bedeutung. Die restlichen Parameter, die bei einem create_agent()-Aufruf an der MASA-Agentensystemschnittstelle benötigt werden, werden mit Standard bzw. Dummy-Werten belegt. Das sind im einzelnen: agent_profile, arguments, code_base, class_provider. Zu beachten ist, daß es sich um einen Aufruf über CORBA handelt und somit null-Werte nicht verwendet werden dürfen. Nach der Umwandlung des Agentennamen von String in CfMAF.Name wird der Agentensystemtyp auf Voyager gesetzt (s. oben). Der Rückgabewert der create_agent()-Methode des MASA Systems enthält den Agentennamen der bei Gleichheit des ursprünglichen Agentennamens mit einem bestehenden Voyager Agenten vom VoyagerAgentManager angepaßt wurde (s. ``create_agent()'' in 4.4.2). Dieser modifizierte Agentename wird als String auch von create_agent() weiter zurückgegeben. Vor Beendigung der Methode muß dieser Vorgang durch Ablage des Agentennamens in dem Attribut _agentsCreatedByApplet gespeichert werden, damit eine spätere Meldung vom NamingGateway über Erstellung eines Agenten differenziert behandelt werden kann, je nachdem ob ein Agent innerhalb MASAs, d.h. durch das Applet, oder außerhalb MASAs auf einem Voyager Server erstellt wurde.


next up previous contents
Next: String execute_agent(String agent_name, String Up: VoyagerMasaGatewayStationaryAgent Previous: void run
Copyright Munich Network Management Team