JavaTM 2
Platform
Std. Ed. v1.4.0

javax.naming.ldap
インタフェース ExtendedResponse

すべてのスーパーインタフェース:
Serializable
既知のサブインタフェースの一覧:
UnsolicitedNotification
既知の実装クラスの一覧:
StartTlsResponse

public interface ExtendedResponse
extends Serializable

このインタフェースは、「RFC 2251」で定義されている LDAP 拡張操作の応答を表します。

     ExtendedResponse ::= [APPLICATION 24] SEQUENCE {
          COMPONENTS OF LDAPResult,
          responseName     [10] LDAPOID OPTIONAL,
          response         [11] OCTET STRING OPTIONAL }
 
この応答は、任意のオブジェクト拡張子と任意の ASN.1 BER で符号化された値で構成されます。

このクラスのメソッドは、拡張操作の応答に関する低レベル情報を取得するアプリケーションによって使用可能です。ただし、一般にこのアプリケーションは、このインタフェースを実装しているクラス固有のメソッドを使用します。このようなクラスは応答の際に、BER バッファを復号化していなければならず、型保証でユーザが使いやすい方法でユーザが応答データにアクセスできるメソッドを提供する必要があります。

「時間取得」の拡張操作をサポートした LDAP サーバを例にとってみます。LDAP サーバは、GetTimeRequest および GetTimeResponse のクラスを指定します。GetTimeResponse は次のようになります。

 public class GetTimeResponse implements ExtendedResponse {
     public java.util.Date getDate() {...};
     public long getTime() {...};
     ....
 }
プログラムはこれらのクラスを次のように使用します。
 GetTimeResponse resp =
 	(GetTimeResponse) ectx.extendedOperation(new GetTimeRequest());
 java.util.Date now = resp.getDate();

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

メソッドの概要
 byte[] getEncodedValue()
          LDAP 拡張操作の応答で ASN.1 BER で符号化された値を検出します。
 String getID()
          応答のオブジェクト拡張子を検出します。
 

メソッドの詳細

getID

public String getID()
応答のオブジェクト拡張子を検出します。LDAP プロトコルでは、応答オブジェクト識別子を任意に指定します。サーバがこの識別子を送らないと、応答には null などの ID が含まれません。

戻り値:
LDAP の ExtendedResponse.responseName コンポーネントを示す null 以外のオブジェクト識別子の文字列

getEncodedValue

public byte[] getEncodedValue()
LDAP 拡張操作の応答で ASN.1 BER で符号化された値を検出します。LDAP サーバによって返された値が空の場合、null が返されます。この結果は、応答値のタグおよび長さを含むそのまま (raw) の BER バイトで表示されます。ただし、応答の OID については表示されません。

戻り値:
LDAP ExtendedRequest.requestValue コンポーネントの ASN.1 BER で符号化された内容を示す null の可能性があるバイト配列

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.