ObjectGridPlugin プラグインの記述

ObjectGridPlugin は、オプションの ミックスイン・インターフェースであり、これを使用して、その他のすべての ObjectGrid プラグインに 拡張ライフサイクル管理イベントを提供できます。

このタスクについて

ObjectGridPlugin を実装する ObjectGrid プラグインは、 リソースのセットアップまたは削除に使用できるライフサイクル・イベントの拡張セットを受け取り、 リソースの管理を強化できます。区画化されたデータ・グリッドのコンテナーの場合、コンテナーによって 管理される区画ごとに 1 つの ObjectGrid インスタンス (プラグイン所有者) が存在します。個々の 区画が削除されるときは、その ObjectGrid インスタンスが使用しているリソースも 同様に削除されなければなりません。したがって、あるリソースを所有する区画を 削除するときは、そのリソース (開いている構成ファイル、プラグインが管理する実行中のスレッドなど) を 閉じたり、終了したりする必要がある可能性があります。

ObjectGridPlugin インターフェースは、プラグインの 状態を設定または変更するメソッドや、プラグインの現在の状態をイントロスペクトする メソッドを提供します。すべてのメソッドは正しく実装される必要があり、WebSphere® eXtreme Scale ランタイム環境は、特定の 状況においてメソッドの振る舞いを検査します。例えば、initialize() メソッドを呼び出した後、eXtreme Scale ランタイム環境は isInitialized() メソッドを呼び出して、メソッドが該当の初期化を正常に 完了したか確認します。

手順

  1. ObjectGridPlugin プラグインが重大な eXtreme Scale イベントについての 通知を受け取ることができるように、ObjectGridPlugin インターフェースを実装します。 メソッドは主に 3 つのカテゴリーに分かれます。
    プロパティー・メソッド 目的
    setObjectGrid() プラグインを使用する ObjectGrid インスタンスを設定するために呼び出します。
    getObjectGrid() プラグインを使用する ObjectGrid インスタンスを取得または確認するために呼び出します。
    初期設定メソッド 目的
    initialize() ObjectGridPlugin を初期化するために呼び出します。
    isInitialized() プラグインの初期化状況を取得または確認するために呼び出します。
    消滅メソッド 目的
    destroy() ObjectGridPlugin を破棄するために呼び出します。
    isDestroyed() プラグインの破棄状況を取得または確認するために呼び出します。

    これらのインターフェースの詳細については、API 資料を参照してください。

  2. XML を使用して ObjectGridPlugin プラグインを構成します。 TransactionCallback インターフェースと ObjectGridPlugin インターフェースを実装する com.company.org.MyObjectGridPluginTxCallback クラスを使用します。
    次のサンプル・コードでは、最終的に拡張ライフサイクル・イベントを受け取るカスタム・トランザクション・コールバックが 生成され、ObjectGrid に追加されます。
    重要: TransactionCallback インターフェースには 既に initialize メソッドがありますが、新規 initialize メソッドが 追加されるほか、destroy メソッドや ObjectGridPlugin の その他のメソッドも追加されます。各メソッドが使用されますが、initialize メソッドが実行する 初期化は 1 回のみです。次の XML は拡張された TransactionCallback インターフェースを 使用する構成を作成します。

    以下のテキストは、myGrid.xml ファイルに存在しなければなりません。

    ?xml version="1.0" encoding="UTF-8"?>
    <objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
     xmlns="http://ibm.com/ws/objectgrid/config">
        <objectGrids>
            <objectGrid name="myGrid">
                <bean id="TransactionCallback"
                      className="com.company.org.MyObjectGridPluginTxCallback" />
                <backingMap name="Book"/>
            </objectGrid>
        </objectGrids>
    </objectGridConfig>

    Bean 宣言が backingMap 宣言の前にあることに注意してください。

  3. myGrid.xml ファイルを ObjectGridManager プラグインに提供することで、この構成の作成が容易になります。