| 
 | JavaTM 2 Platform Std. Ed. v1.3 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Object | +--javax.naming.ldap.ControlFactory
この抽象クラスは、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 を返します。ファクトリは、目的が 1 つだけのファクトリであり、それ以外のファクトリを試みる必要がないことが確実であれば、例外をスローするだけです。コントロールの 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 を使って生成されたコントロールオブジェクト、または上記のアルゴリズムを使ってコントロールオブジェクトを生成できない場合は ctlNamingException - ネーミング例外が、コントロールオブジェクトを作成しようとするときに発生した場合。アクセスされたファクトリの 1 つが例外をスローすると、その例外は呼び出し側に送られます。ファクトリをロード中、またはファクトリのインスタンスを生成中にエラーが発生すると、その例外は再度スローされた NamingException の内部にラップされる| 
 | JavaTM 2 Platform Std. Ed. v1.3 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
 Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
 Palo Alto, California, 94303, U.S.A.  All Rights Reserved.