模块 java.naming

接口 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
参见:
  • 方法总结

    修饰符和类型
    方法
    描述
    byte[]
    检索 LDAP 扩展操作响应的 ASN.1 BER 编码值。
    检索响应的对象标识符。
  • 方法详情

    • getID

      String  getID()
      检索响应的对象标识符。 LDAP 协议指定响应对象标识符是可选的。如果服务不发送它,则响应将不包含 ID(即 null)。
      返回:
      表示 LDAP ExtendedResponse.responseName 组件的可能为空的对象标识符字符串。
    • getEncodedValue

      byte[] getEncodedValue()
      检索 LDAP 扩展操作响应的 ASN.1 BER 编码值。如果 LDAP 服务发送的响应中没有该值,则返回 Null。结果是原始 BER 字节,包括响应值的标记和长度。它不包括响应 OID。
      返回:
      表示 LDAP ExtendedResponse.response 组件的 ASN.1 BER 编码内容的可能为空的字节数组。