モジュール java.naming
パッケージ javax.naming.spi

インタフェースDirStateFactory

すべてのスーパー・インタフェース:
StateFactory

public interface DirStateFactory extends StateFactory
このインタフェースは、オブジェクトと該当属性とのバインディングの状態を取得するファクトリを表します。

JNDIフレームワークを使用すると、object factoriesを介してオブジェクト実装を動的にロードできます。

DirStateFactoryは、AttributesインスタンスをgetStateToBind()メソッドに指定して返すことで、StateFactoryを拡張します。 DirStateFactory実装は、DirContextサービス・プロバイダによって使用されることを意図しています。 呼出し元がDirContext.bind()を使用してオブジェクトをバインドする場合、オブジェクトにバインドする属性のセットを指定することもできます。 バインドするオブジェクトおよび属性は、ファクトリのgetStateToBind()メソッドに渡されます。 ファクトリは、オブジェクトと属性を処理する場合はバインドされるオブジェクトと属性の該当ペアを返します。 オブジェクトを処理しない場合、ファクトリはnullを返す必要があります。

たとえば、呼出し側がプリンタ・オブジェクトをプリンタ関連の属性とバインドすることがあります。

 ctx.rebind("inky", printer, printerAttrs);
ctxのLDAPサービス・プロバイダは、DirStateFactory (DirectoryManager.getStateToBind()を介して間接的に)を使用し、printerおよびprinterAttrsを指定します。 LDAPディレクトリのファクトリは、printerを一連の属性に変換し、それをprinterAttrsとマージする場合があります。 続いてサービス・プロバイダがその属性を使ってLDAPエントリを生成し、ディレクトリを更新します。

DirStateFactoryStateFactoryを拡張するため、2つのgetStateToBind()メソッドがあり、一方はattributes引数によって他方とは異なります。 DirectoryManager.getStateToBind()はattributes引数を受け入れるフォームのみを使用しますが、NamingManager.getStateToBind()はattributes引数を受け入れないフォームのみを使用します。

DirStateFactoryのgetStateToBind()メソッドのどちらの形式でも、異なるパラメータを使用して複数回起動できます。 実装はスレッド・セーフです。

導入されたバージョン:
1.3
関連項目: