|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.naming.ldap.ControlFactory
public abstract class ControlFactory
この abstract クラスは、LDAPv3 コントロールの作成に使用するファクトリを表示します。LDAPv3 コントロールは RFC 2251 で定義されています。
サービスプロバイダが応答コントロールを受信すると、このプロバイダはコントロールファクトリを使って、特定または任意のコントロールクラスを返します。
Control
コンストラクタの概要 | |
---|---|
protected |
ControlFactory()
|
メソッドの概要 | |
---|---|
abstract Control |
getControlInstance(Control ctl)
コントロールファクトリを使用するコントロールを作成します。 |
static Control |
getControlInstance(Control ctl,
Context ctx,
Hashtable<?,?> env)
既知のコントロールファクトリを使用するコントロールを作成します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
protected ControlFactory()
メソッドの詳細 |
---|
public abstract Control getControlInstance(Control ctl) throws NamingException
このファクトリは、サービスプロバイダが、LDAP プロトコルから読み取るコントロールを特殊なコントロールクラスとして返すときに使用します。この機構を使用しなければ、プロバイダは BER 符号化形式のデータだけを含むコントロールを返します。
一般に、ctl は、BER 符号化データを含む基本的なコントロールです。ファクトリは、特殊なコントロールを実装するのに使用されますが、通常は、BER 符号化データを復合化して、型保証された安全な方法で該当データにアクセスするメソッドを提供します。
たとえば、ファクトリは基本的なコントロールの BER 符号化データを使用して VirtualListReplyControl のインスタンスを返す場合があります。
このファクトリが指定引数を使ってコントロールを作成できない場合、null を返します。例外がスローされるのは、このコントロールファクトリだけが使用され、ほかのコントロールファクトリが使用されないときだけです。コントロールの BER 符号化データが、指定された OID を持つとみなされているコントロールと一致しない場合に、例外がスローされます。このメソッドは NamingException をスローするため、内部的に生成される例外を伝達する必要がある場合は、NamingException にラップする必要があります。
ctl
- null 以外のコントロール
NamingException
- ctl が、コントロールの作成に使用できなくなるような無効なデータを含んでいる場合。ファクトリーが例外をスローするのは、OID によって識別されるコントロールの生成方法がわかっているのに、無効な BER 符号化データなどの理由でコントロールが生成できない場合に限られるpublic static Control getControlInstance(Control ctl, Context ctx, Hashtable<?,?> env) throws NamingException
コントロールを作成するには、次の規則が使用されます。
ctl
を返す。コントロール作成中に、例外が発生したら、例外は呼び出し側に引き渡される
コントロールファクトリは public ですが、また引数を取らない public コンストラクタを持つ必要があります。
ctl
- OID および BER 符号化データを含む null 以外のコントロールオブジェクトctx
- コントロールが作成される null の可能性があるコンテキスト。null の場合は、この情報は利用できないenv
- null の可能性のあるコンテキスト環境。LdapContext.CONTROL_FACTORIES プロパティの値を検索するのに使用される
ctl
を使って生成されたコントロールオブジェクト、または上記のアルゴリズムを使ってコントロールオブジェクトを生成できない場合は ctl
NamingException
- ネーミング例外が、コントロールオブジェクトを作成しようとするときに発生した場合。アクセスされたファクトリの 1 つが例外をスローすると、その例外は呼び出し側に送られる。ファクトリおよびオブジェクトクラスのロード中またはインスタンス生成中にエラーが発生すると、その例外は NamingException の内部にラップされてから再度スローされる
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。