統合リポジトリー のサンプル・カスタム・アダプターの例
統合リポジトリー ですぐに使用可能なアダプターとして、ファイル・アダプター、LDAP アダプター、およびデータベース・アダプターを用意しています。 これらのアダプターは、com.ibm.wsspi.wim.Repository ソフトウェア・プログラミング・インターフェース (SPI) を実装します。 仮想メンバー・マネージャー・カスタム・アダプターは、アダプターが相互作用しているリポジトリーのタイプに関わらず、同じ SPI を実装する必要があります。カスタム・アダプターが相互作用できるリポジトリーのタイプに制限はありません。
統合リポジトリー のカスタム・アダプターの開発
統合リポジトリー ですぐに使用可能なアダプターとして、ファイル・アダプター、LDAP アダプター、およびデータベース・アダプターを用意しています。 これらのアダプターはすべて、com.ibm.wsspi.wim.Repository SPI を実装しています。 詳しくは、com.ibm.wsspi.wim.Repository SPI を参照してください。仮想メンバー・マネージャー・カスタム・アダプターの開発に合わせて、同じ SPI を実装する必要があります。
統合リポジトリーのカスタム・アダプターは、WebSphere® Application Server コンポーネント (データ・ソースやエンタープライズ Bean など) に依存するものであってはなりません。 これらの WebSphere Application Server コンポーネントでは、始動前にセキュリティーが初期化されて使用可能になっている必要があります。 カスタム・アダプターを統合リポジトリーに実装する上で、データベースへの接続時にデータ・ソースの使用が必要な場合は、Java™ Database Connectivity (JDBC) を使用してサーバー起動時に接続が確立されるようにしてください。 そして、後でデータ・ソースが使用可能になったときに、データ・ソースを使用するように切り替えます。
サンプル・コードには、統合リポジトリー のカスタム・アダプターが推奨する動作および要件の例があります。
統合リポジトリーのサンプル・カスタム・アダプター
カスタム・アダプターの実装サンプルを提供しています。 このカスタム・アダプターは、ファイル・リポジトリーをベースにしています。 サンプルのソース・コードとクラス・ファイルは、vmmsampleadapter.jar ファイルにバンドルされています。
- サンプル・アダプターのクラス・ファイル。
- com/ibm/ws/wim/adapter/sample/AbstractAdapterImpl.class
- com/ibm/ws/wim/adapter/sample/SampleFileAdapter.class
- com/ibm/ws/wim/adapter/sample/XPathHelper.class
- サンプル・アダプターのソース・コード。
- src/com/ibm/ws/wim/adapter/sample/AbstractAdapterImpl.java
- src/com/ibm/ws/wim/adapter/sample/SampleFileAdapter.java
- src/com/ibm/ws/wim/adapter/sample/XPathHelper.java
- com/ibm/ws/wim/sample/adapter/AbstractAdapterImpl.java
- リポジトリーから独立したアダプターの内部操作の多くを扱う抽象実装クラスを提供し、カスタム・アダプターによって実装する必要があるいくつかの簡単な要約メソッドを定義します。ほとんどのケースで、 このファイルを変更する必要はありません。
- com/ibm/ws/wim/sample/adapter/SampleFileAdapter.java
- AbstractAdapterImpl クラスからの拡張であり、抽象メソッドを実装します。このクラスは、ファイルをリポジトリーとして使用する抽象メソッドを実装しています。 アダプター・プロバイダーは、このクラスをリファレンスとして使用して、アダプター固有のこれらのメソッドを実施します。
- com/ibm/ws/wim/sample/adapter/XPathHelper.java
- ヘルパー・クラスを定義して XPath 検索式を解析し、検索ツリーをビルドします。 このヘルパー・クラスには検索式を評価するメソッドも含まれています。 お使いのリポジトリーで検索式がサポートされている場合、 XPath 式をリポジトリーが処理できる式に変換して、その式をリポジトリーで評価できるようにする必要があります。 このヘルパー・クラスは、データ・オブジェクトの使用に基づいて検索式を評価します。 java.util.Map などの別のオブジェクトを使用して評価を実行するよう、 evaluate() メソッドを上書きすることができます。
アダプター・プロバイダーの支援を目的に、いくつかのユーティリティー・クラスが提供されています。 これらのユーティリティー・メソッドの多くは、サンプル・アダプターで使用されています。 詳しくは、 Javadoc の情報を参照してください。