- java.lang.Object
-
- javax.naming.spi.NamingManager
-
- javax.naming.spi.DirectoryManager
-
public class DirectoryManager extends NamingManager
このクラスには、DirContext
実装をサポートするためのメソッドが含まれています。このクラスは
NamingManager
を拡張したものです。 サービス・プロバイダがオブジェクト・ファクトリおよび状態ファクトリにアクセスするとき、および連合をサポートする継続コンテキストを取得するときに使用するメソッドを格納します。DirectoryManager
は、複数のスレッドによる並行アクセスでもセキュリティ上安全です。別途注釈のある場合を除いて、
Name
、Attributes
、またはメソッドに渡される環境パラメータは、呼出し側が所有します。 実装はオブジェクトを変更せず、そのオブジェクトに対する参照も保持しませんが、その複製またはコピーに対する参照を保持することがあります。- 導入されたバージョン:
- 1.3
- 関連項目:
DirObjectFactory
,DirStateFactory
-
-
フィールドのサマリー
-
クラス javax.naming.spi.NamingManagerで宣言されたフィールド
CPE
-
-
メソッドのサマリー
修飾子と型 メソッド 説明 static DirContext
getContinuationDirContext(CannotProceedException cpe)
DirContext
操作を続行するコンテキストを作成します。static Object
getObjectInstance(Object refInfo, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs)
指定されたオブジェクト、属性、および環境にオブジェクトのインスタンスを生成します。static DirStateFactory.Result
getStateToBind(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs)
元のオブジェクトおよびその属性が指定されたときに、オブジェクトのバインディングの状態を取得します。-
クラス javax.naming.spi.NamingManagerで宣言されたメソッド
getContinuationContext, getInitialContext, getObjectInstance, getStateToBind, getURLContext, hasInitialContextFactoryBuilder, setInitialContextFactoryBuilder, setObjectFactoryBuilder
-
-
-
-
メソッドの詳細
-
getContinuationDirContext
public static DirContext getContinuationDirContext(CannotProceedException cpe) throws NamingException
DirContext
操作を続行するコンテキストを作成します。NamingManager.getContinuationContext()
と同じように動作します。返される継続コンテキストはDirContext
のみです。- パラメータ:
cpe
- この継続をトリガーしたnull以外の例外。- 戻り値:
- 操作を継続するnull以外の
DirContext
オブジェクト。 - 例外:
NamingException
- ネーミング例外が発生した場合。- 関連項目:
NamingManager.getContinuationContext(CannotProceedException)
-
getObjectInstance
public static Object getObjectInstance(Object refInfo, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs) throws Exception
指定されたオブジェクト、属性、および環境にオブジェクトのインスタンスを生成します。このメソッドは
NamingManager.getObjectInstance
とほぼ同じですが、次の点が違います。-
オブジェクトに関連した属性を含む
Attributes
パラメータを受け入れる。DirObjectFactory
はこれらの属性を使って、ディレクトリからこれらの属性を検索する手間を省く。 -
試行するオブジェクト・ファクトリは、
ObjectFactory
またはDirObjectFactory
を実装する必要がある。DirObjectFactory
を実装している場合はDirObjectFactory.getObjectInstance()
が使用される。その他の場合はObjectFactory.getObjectInstance()
が使用される。
NamingManager.getObjectInstance()
インタフェースではなくDirContext
インタフェースを実装しているサービス・プロバイダがこのメソッドを使います。- パラメータ:
refInfo
- オブジェクトを作成する対象となるnullの可能性があるオブジェクト。name
-nameCtx
を基準にしたこのオブジェクトの名前。 名前の指定はオプション。省略される場合は、name
をnullにする。nameCtx
-name
パラメータが基準にして指定されているコンテキスト。 nullの場合、name
はデフォルトの初期コンテキストを基準にする。environment
- オブジェクト・ファクトリとオブジェクトの作成で使用されるnullの可能性がある環境。attrs
- nullの可能性がある、refInfoに関連した属性。 これはrefInfoの完全属性セットではない場合がある。ディレクトリからさらに属性を読み込めることがある。- 戻り値:
refInfo
およびattrs
を使って生成されたオブジェクト、またはファクトリがオブジェクトを生成できない場合はrefInfo
。- 例外:
NamingException
- URLコンテキストを取得するときにネーミング例外が見つかった場合、またはアクセスしたファクトリの1つがNamingExceptionをスローした場合。Exception
- アクセスされたいずれかのファクトリが例外をスローした場合、またはファクトリやオブジェクト・クラスのロード中およびインスタンス化中にエラーが検出された場合。 ファクトリは、オブジェクトの作成にほかのファクトリが使用されるようにしたくない場合にのみ例外をスローするようにする。DirObjectFactory.getObjectInstance()
を参照してください。- 導入されたバージョン:
- 1.3
- 関連項目:
NamingManager.getURLContext(java.lang.String, java.util.Hashtable<?, ?>)
,DirObjectFactory
,DirObjectFactory.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>, javax.naming.directory.Attributes)
-
オブジェクトに関連した属性を含む
-
getStateToBind
public static DirStateFactory.Result getStateToBind(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs) throws NamingException
元のオブジェクトおよびその属性が指定されたときに、オブジェクトのバインディングの状態を取得します。このメソッドは
NamingManager.getStateToBind
に似ていますが、次の点が違います。DirContext.bind()
メソッドに渡された属性を含むAttributes
パラメータを受け入れる。- バインドされるオブジェクトを含むnull以外の
DirStateFactory.Result
インスタンス、およびバインディングについてくる属性を返す。 オブジェクトまたは属性のどちらかがnullでもよい。 -
試行する状態ファクトリはそれぞれ、
StateFactory
またはDirStateFactory
を実装する必要がある。DirStateFactory
を実装している場合はDirStateFactory.getStateToBind()
が呼び出される。その他の場合はStateFactory.getStateToBind()
が呼び出される。
NamingManager.getStateToBind()
インタフェースではなくDirContext
インタフェースを実装しているサービス・プロバイダをこのメソッドに使います。試行する状態ファクトリのリストを決定する方法の説明については、NamingManager.getStateToBind()を参照してください。
このメソッドが返すオブジェクトは呼出し側が所有します。 実装は続いてこれを変更しません。 実装には、呼出し側が所有するのと同じ新しい
Attributes
オブジェクトか、元のattrs
パラメータへの参照のどちらかを含みます。- パラメータ:
obj
- バインドする状態を取得する対象となるnull以外のオブジェクト。name
-nameCtx
を基準にしたこのオブジェクトの名前、または名前が指定されていない場合はnull。nameCtx
-name
パラメータが基準にして指定されているコンテキスト、またはname
がデフォルトの初期コンテキストを基準にしている場合はnull。environment
- 状態ファクトリとオブジェクトの状態の作成で使用されるnullの可能性がある環境。attrs
- nullの可能性がある、オブジェクトにバインドされるAttribute。- 戻り値:
- null以外のDirStateFactory。 結果にはバインドされるオブジェクトおよび属性を含むnull以外の答えを返す状態ファクトリがない場合、結果はオブジェクト(
obj
)自体を元の属性とともに含む。 - 例外:
NamingException
- ファクトリを使用中にネーミング例外が発生した場合。 ファクトリは、オブジェクトの作成にほかのファクトリが使用されるようにしたくない場合にのみ例外をスローするようにする。DirStateFactory.getStateToBind()
を参照してください。- 導入されたバージョン:
- 1.3
- 関連項目:
DirStateFactory
,DirStateFactory.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>, javax.naming.directory.Attributes)
,NamingManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)
-
-