Die Agent-Controller-Funktionalität erweitern

Agent-Controller ist ein Dämonprozess, der es Clientanwendungen ermöglicht, Hostprozesse zu starten und mit Agenten zu interagieren, die innerhalb der Hostprozesse koexistieren. Eine einzelne Konfigurationsdatei dient der Steuerung des Verhaltens.

Der Agent Controller kann auf verschiedene Weisen erweitert werden. Beispielsweise können Funktionen hinzugefügt oder erweitert werden, oder ein neuer Agent kann hinzugefügt werden. Damit der Agent Controller Ihre Plug-in-Funktion verwenden kann, muss die Konfigurationsdatei des Agent Controller geändert werden. Hierfür kann der Konfigurationsgenerator erweitert werden, der dann eine Standardkonfigurationsdatei generiert, wenn SetConfig ausgeführt wird. Durch die Erweiterung des Konfigurationsgenerators sind Sie in der Lage, zum Zeitpunkt der Installation benutzerspezifische Informationen abzufragen und diese Informationen zu verwenden, um eine angepasste Konfigurationsdatei zu generieren. Sie können in der Erweiterung außerdem Ihre eigene Logik verwenden, um plattformspezifische Konfigurationsdateien zu generieren.

Befolgen Sie die untenstehenden Schritte, um den Konfigurationsgenerator zu erweitern und eine Konfigurationsdatei für Ihr eigenes Plug-in zu generieren:

  1. Erstellen Sie im Verzeichnis lib Ihres Plug-ins eine JAR-Datei namens config.jar. Der Konfigurationsgenerator wird nach dieser JAR-Datei suchen.
  2. Erstellen Sie im Stammverzeichnis ihres Plug-ins ein Verzeichnis config, in dem die Konfigurationsdatei gespeichert wird. Der Konfigurationsgenerator wird automatisch nach Ihrem JAR-Datei-Plug-in suchen, um im Verzeichnis config Ihres Plug-ins eine Konfigurationsdatei pluginconfig.xml zu erstellen.
  3. Schreiben Sie eine Erweiterung für den Konfigurationsgenerator:
    1. Geben Sie der Klasse den Namen <Name Ihres Plug-in-Pakets>.SetConfig. Sie sollte die Klasse org.eclipse.hyades.internal.config.generator.SetConfigSkeleton erweitern.
    2. Definieren Sie ein Tag für Ihr Plug-in:
      public static String TAG = "<Name Ihres Plug-in-Pakets>"; // e.g. org.eclipse.hyades.datacollection
    3. Implementieren Sie die folgenden sechs Methoden. Sie werden vom Konfigurationsgenerator benötigt, um die angepasste Konfigurationsdatei ordentlich zu erstellen:
      • SetConfig(): Sie sollten im Null-Argument-Konstruktor zumindest super(TAG) aufrufen.
        Beispiel:
        public SetConfig() {
          super(TAG);
          }
      • init(): Diese Methode kann die Initialisierung ausführen. Hierfür verwendet sie die vom Hauptkonfigurationsgenerator übermittelte Hashtabelle. Die Hashtabelle enthält Argumente für die Zeile commplug-in, die an SetConfig übermittelt werden. Innerhalb dieser Methode müssen Sie den Pfadnamen des Plug-ins angeben.
        Beispiel:
        public void init(Hashtable hash) {
          String home = HashUtility.getValue(hash, "RASERVER_HOME");
          setFileName(home + sr + "plug-ins" + sr + TAG + sr + "config" + sr + "pluginconfig.xml");
          }
        
      • askUser(): Diese Methode wird verwendet, um Benutzerinformationen abzufragen, die für Ihr Plug-in spezifisch sind.
      • printHelp(): Diese Methode wird verwendet, um Hilfenachricht anzuzeigen, die für Ihr Plug-in spezifisch sind. Diese Methode kann leer sein.
      • printExamples(): Diese Methode wird verwendet, um Verwendungsbeispiele anzuzeigen, wie z.B. Befehlszeilenparameter. Diese Methode kann leer sein.
      • generateConfiguration(): Diese Methode wird verwendet, um das XML DOM für Ihr Plug-in zu generieren.
        Beispiel:
        //Sie sollten diese Methode mit diesem Abschnitt beginnen:
          
          doc = configFile.getDoc();
          if(doc == null) {
        	  return;
          }
        
          pConfig = doc.createElement(PluginConfig.TAG);
          holder = configFile.getHolder();
          holder.appendChild(pConfig);
        
          //Ende Plug-in, Beenden Sie die Methode mit diesem Abschnitt:
          
          option = doc.createElement(Option.TAG);
          Option.setName(option, TAG);
          Option.setType(option, "version");
          Option.setValue(option, getString("Config.Plugin.Version"));
          pConfig.appendChild(option);
        
          configFile.saveToFile();
        

Beispiele für die Erstellung einer Erweiterung für den Konfigurationsdateigenerator

Ziehen Sie das Hyades-Projekt unter org.eclipse.hyades.collection.framework zurate. Die Beispiele befinden sich im Quellenordner src.config :



Verwandte Referenzinformationen
Konfigurationsdateien des Agent-Controllers

 


(C) Copyright IBM Corporation 2000, 2005. Alle Rechte vorbehalten.