JavaTM Platform
Standard Ed. 6

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 服务器支持“获取时间”扩展操作。它将提供 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

String getID()
检索响应的对象标识符。LDAP 协议指定响应对象标识符是可选的。如果服务器不发送它,则响应不包含任何 ID(即 null)。

返回:
表示 LDAP ExtendedResponse.responseName 组件的对象标识符字符串(可能为 null)。

getEncodedValue

byte[] getEncodedValue()
检索 LDAP 扩展操作响应的 ASN.1 BER 编码值。如果该值不在 LDAP 服务器发送的响应中,则返回 null。结果为原始 BER 字节,包括响应值的标记和长度。它不包括响应 OID。

返回:
表示 LDAP ExtendedResponse.response 组件的 ASN.1 BER 编码内容的字节数组(可能为 null)。

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策