Next: 6.8 Installation
Up: 6 Implementierung
Previous: Methode log(...)
Die Einbindung eines neuen Agenten wird anhand des IPRouting-Agenten
detailliert erklärt.
- 1.
- Es muß die Entscheidung getroffen werden, ob der Agent ein
MobileAgent oder ein StationaryAgent sein soll.
Es sollte, falls es keinen zwingenden Grund für einen
stationären Agenten gibt, sich für einen Mobilen Agenten
entschieden werden. Das Agentensystem hat dann die Möglichkeit,
falls der Rechner z. B. abgeschaltet wird, den Agenten zu transferieren.
Im Beispiel des IPRouting-Agenten ist die Entscheidung auf
MobileAgent gefallen.
- 2.
- Es muß eine IDL-Schnittstelle (IPRouting) spezifiziert
werden, die die IDL-Schnittstelle Migration erweitert:
#include "Migration"
interface IPRouting : agent::Migration {
...
};
- 3.
- Mit dem Programm idl2java müssen die Java-Schnittstellen,
-Stubs und -Skeletons generiert werden.
- 4.
- Es wird die Klasse IPRoutingMobileAgent angelegt, die
folgenden Kopf besitzt:
public class IPRoutingMobileAgent
extends MobileAgent
implements IPRoutingOperations
- 5.
- Bei jedem Attribut der Klasse ist festzulegen, ob bei einer
Serialisierung
des Agenten, diese Attribut neu belegt werden muß, oder
nicht. Attribute, die nicht transferiert werden müssen, werden als
transient gekennzeichnet. Gibt es solche Attribute, muß man
nach dem Transfer selbst die Neubelegung der Attribute vornehmen.
Bei den anderen Attributen muß
dafür gesorgt werden, daß sie serialisierbar sind, indem bei der
Klasse des Attributs
implements java.io.Serializable
angefügt wird.
- 6.
- Die Methoden der Schnittstelle IPRoutingOperations müssen
implementiert werden.
- 7.
- Die Methoden cleanUp() und
checkSerialization() aus der Basisklasse
Agent müssen implementiert werden.
Bei der Implementierung ist darauf zu achten, daß keine propietären
Funktionen wie sie z. B. Visigenic anbietet, (extensible structs,
Helper.bind() usw.) verwendet werden. Denn die Agenten sollen mit ORBs
verschiedener Hersteller, ohne vorherige Portierung, funktionieren.
Next: 6.8 Installation
Up: 6 Implementierung
Previous: Methode log(...)
Copyright Munich Network Management Team