Agent Controller の拡張

Agent Controller は、クライアント・アプリケーションが ホスト・プロセスを起動し、ホスト・プロセス内に共存するエージェントと 対話することを可能にする、デーモン・プロセスです。  その振る舞いの範囲を管理するためには、単一の構成ファイルが使用されます。

Agent Controller は、機能の追加や拡張、または新規 エージェントの追加など、さまざまな方法で拡張することが できます。Agent Controller がプラグイン機能を使用できる ようにするには、Agent Controller 構成ファイルを変更する 必要があります。この変更は、SetConfig の実行時 にカスタム構成ファイルを生成可能にする構成生成プログラム を拡張することによって実行できます。構成生成プログラム を拡張することによって、セットアップ時間にユーザー固有の 情報を照会し、この情報を使用してカスタマイズされた構成 ファイルを生成することができます。また、独自の論理を 拡張機能に提供して、プラットフォーム固有の構成ファイルを 生成することができます。

以下のステップに従って、構成生成プログラムを拡張 し、独自のプラグイン用の構成ファイルを作成します。

  1. プラグインの lib ディレクトリーの下で 、jar ファイル config.jar を作成する。構成 生成プログラムは、この jar ファイルを探します。
  2. プラグインのルート・ディレクトリーの下に 、config ディレクトリーを作成して、構成ファイル を保管する。 構成生成プログラムは、お客様の jar ファイル・プラグイン が作成した構成ファイル pluginconfig.xml を、 プラグインの config ディレクトリーの下で検索 します。
  3. 構成生成プログラムの拡張機能を書き込む。
    1. クラス<お客様のプラグイン・パッケージ 名>.SetConfig に名前を付ける。クラス org.eclipse.hyades.internal.config.generator.SetConfigSkeleton を拡張する必要があります。
    2. プラグインのタグを定義する。
      public static String TAG = "<your plug-in package name>"; // e.g. org.eclipse.hyades.datacollection
    3. 適切にカスタム構成ファイルを生成するために構成 生成プログラムが必要とする以下の 6 つのメソッドを実装 する。
      • SetConfig(): 少なくとも、super(TAG) を 引数がヌルのコンストラクターの内部に呼び出す必要が あります。
        public SetConfig() {
          super(TAG);
          }
      • init(): このメソッドは、メインの構成生成 プログラムに渡されるハッシュ・テーブルを使用して初期化 を実行します。ハッシュ・テーブルには、SetConfig に 渡される commplug-in ライン引数が含まれます。構成 ファイルのパス・プラグイン名をこのメソッドの内部に指定 する必要があります。
        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(): このメソッドは、お客様のプラグイン に固有の情報をたずねる場合に使用されます。
      • printHelp(): このメソッドは、プラグイン固有 のヘルプ・メッセージを表示する場合に使用されます。空 メソッドにすることができます。
      • printExamples(): このメソッドは、コマンド行 引数などの使用例を表示する場合に使用されます。空 メソッドにすることができます。
      • generateConfiguration(): このメソッドは、 お客様のプラグインの XML DOM を生成する場合に使用されます。
        //You should start this method with this section:
          
          doc = configFile.getDoc();
          if(doc == null) {
        	  return;
          }
        
          pConfig = doc.createElement(PluginConfig.TAG);
          holder = configFile.getHolder();
          holder.appendChild(pConfig);
        
          //End plug-in end the method with this section:
          
          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();
        

構成ファイル生成プログラムの拡張機能の書き込みの例

Hyades プロジェクト org.eclipse.hyades.collection.framework を参照 してください。 例は src.config ソース・フォルダーの下に あります。



関連参照
Agent Controller 構成ファイル

 


(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.