前へ     目次     索引     DocHome     次へ     
iPlanet Trustbase Transaction Manager 2.2.1 開発者ガイド



第 4 章   構成管理


構成マネージャのサブシステムには、構成マネージャそのものおよび構成ストアの 2 つの要素があります。構成マネージャは、すべての構成リクエストの中央アクセスポイントです。また、ストア内の構成オブジェクトの維持も担当し、読み取りおよび更新のためにこれらのオブジェクトへのアクセスを同期します。



構成オブジェクト



構成オブジェクトは、サービスおよびその構成サービス用に永続データを維持します。1 つのサービスが複数の構成オブジェクトを参照することもあれば、複数のサービスまたは構成サービスが 1 つの構成オブジェクトを参照することもあります。また、各 iPlanet Trustbase Transaction Manager コンポーネントも構成オブジェクトを使用します。構成オブジェクトおよび構成マネージャを使用するサービスまたはコンポーネントは、構成可能エンティティと呼ばれます。構成オブジェクトに読み取り/書き込みインターフェイスを実装するサービスは、構成サービスと呼ばれます。通常の場合は、ユーザが構成オブジェクト内に格納された値を変更できるようにするための、グラフィックまたは HTML ベースのインターフェイスが実装されます。

構成マネージャが適切に操作できるように、構成オブジェクトはすべて ConfigurationObject インターフェイスを実装している必要があります。構成オブジェクトには、ストア内で ConfigUID オブジェクトがインデックスとして付けられます。



ConfigurationObject が提示しなくてはならないインターフェイスに関する詳細は、uk.co.jcp.tbase.config.ConfigurationObject の API ドキュメントを参照してください。





構成マネージャ



サービスは、SingletonConfigManager クラスを使用して構成マネージャへのリファレンスを取得します。

構成マネージャは、ConfigUID オブジェクトが特定する読み取りまたは書き込み可能なバージョンの構成オブジェクトを、呼び出し元が取得することを許可します。

構成オブジェクトの取得には、2 つのメソッドが使用されます。

  • 1 つ目のメソッドは、サービスの設定または構成サービス表示へのデータ挿入に使用できる、構成オブジェクトの読み取り可能ディープコピーを返します。このメソッドによって取得された構成オブジェクトに変更が加えられても、その変更は構成ストアには反映されません。これは、返された構成オブジェクトには有効な ConfigurationLock オブジェクトが含まれていないためです。また、リクエストされたオブジェクトに未処理のロックがあるかどうかに関わらず、この形の構成オブジェクトは必ず提供されます。つまり、構成マネージャが、ConfigurationObject の読み取り専用コピーに対するリクエストを拒否することはあり得ないということです。

  • 2 つ目のメソッドは、一定期間有効な構成ロックを含む構成オブジェクトのディープコピーを返します。このロック期間そのものも構成可能です。指定の期間が過ぎるとロックは失効し、構成ストアに変更を適用しようとする試みは拒否されます。ロックの期限切れは、開発者が割り当てられたロックを開放しなかったことに起因するデッドロック問題に対する、単純な解決策を提供します。

構成オブジェクトを更新または削除できるのは、そのオブジェクトが有効なロックオブジェクトを含む場合だけです。



サービスが ConfigUID を持つ構成オブジェクトを登録できるのは、同じ ConfigUID を持つオブジェクトが他に存在していない場合だけです。



構成可能エンティティは、構成オブジェクトに変更があった場合に通知を受け取るよう登録できます。構成オブジェクトに変更があった場合、登録済みエンティティには変更後の構成オブジェクトの読み取り専用コピーを含むイベントオブジェクトが送られます。



構成マネージャが ConfigurationObject 操作用に提供しているメソッドの詳細は、uk.co.jcp.tbase.config.SingletonConfigManager および
uk.co.jcp.tbase.config.ConfigManager の API ドキュメントを参照してください。





構成ストア



構成ストアは、構成オブジェクトを永続的に格納します。iPlanet Trustbase Transaction Manager に付属の構成ストアは、配下に実装されている JDBC を使用してデータを格納しますが、その他の構成ストアを実装して、構成オブジェクトを任意の形式で格納することも可能です。

構成ストアが実装するのは、ConfigUID キーを通じて構成オブジェクトにアクセスするための、読み取り、書き込み、および削除のための基本的なメソッドだけです。ロッキングなどのより高度な意味論は、構成マネージャによって処理されます。

開発者がデフォルト実装の JDBC ストアを他のものに変えることはできません。また、JDBC ストアのインターフェイスはパブリックではありません。



構成サービス



構成サービスは ConfigurationObject の構成可能オブジェクトについての知識を持つ要素であり、これらの属性をユーザインターフェイスを通じて管理者に提示する機能を提供します。iPlanet Trustbase Transaction Manager は、HTML フォームを使用して構成データを提示します。

iPlanet Trustbase Transaction Manager に付属の構成サービスは、HTTPReader および ScriptWriter クラスを使用して、管理者による情報変更が可能な HTML ページまたはフォームを生成します。構成サービスは、プロトコルアナライザ、メッセージアナライザ、メッセージリーダおよびライタ、ルータおよびサービスを含む、個々の iPlanet Trustbase Transaction Manager コンポーネントを構成できます。更新された属性を受け取ると、構成サービスは構成マネージャにこれらの変更を登録し、その後、構成マネージャが他の関連エンティティに通知を送ります。

プラットフォームに登録されている各構成可能エンティティに対して、最低 1 つの構成サービスが存在します。ただし、構成サービスが構成するエンティティのインスタンス数に関わらず、各構成サービスの実行時のインスタンスは 1 つだけです。



構成サービスに関連付けられている API クラスはありません。構成サービスは通常の iPlanet Trustbase Transaction Manager サービスであり、uk.co.jcp.tbase.service.Service インターフェイスの実装が必要です。




前へ     目次     索引     DocHome     次へ     
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions Copyright © 2001 Netscape Communications Corp. All rights reserved.

最終更新日 2001 年 3 月 14 日