Class IntermediateClientResponseValue

  • All Implemented Interfaces:
    java.io.Serializable

    @NotMutable
    @ThreadSafety(level=COMPLETELY_THREADSAFE)
    public final class IntermediateClientResponseValue
    extends java.lang.Object
    implements java.io.Serializable
    This class implements a data structure which encapsulates the value of an intermediate client response value. It may recursively embed intermediate client response values from upstream servers.
    NOTE: This class, and other classes within the com.unboundid.ldap.sdk.unboundidds package structure, are only supported for use against Ping Identity, UnboundID, and Nokia/Alcatel-Lucent 8661 server products. These classes provide support for proprietary functionality or for external specifications that are not considered stable or mature enough to be guaranteed to work in an interoperable way with other types of LDAP servers.

    See the documentation in the IntermediateClientRequestControl class for an example of using the intermediate client request and response controls.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      IntermediateClientResponseValue​(IntermediateClientResponseValue upstreamResponse, java.lang.String upstreamServerAddress, java.lang.Boolean upstreamServerSecure, java.lang.String serverName, java.lang.String serverSessionID, java.lang.String serverResponseID)
      Creates a new intermediate client response value with the provided information.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static IntermediateClientResponseValue decode​(ASN1Sequence sequence)
      Decodes the provided ASN.1 sequence as an intermediate client response value.
      ASN1Sequence encode()
      Encodes this intermediate client response value to a form that may be included in the response control.
      boolean equals​(java.lang.Object o)
      Indicates whether the provided object is equal to this intermediate client response value.
      java.lang.String getServerName()
      Retrieves a string that identifies the server application that created this intermediate client response value.
      java.lang.String getServerResponseID()
      Retrieves a string that may be used to identify the response in the server application.
      java.lang.String getServerSessionID()
      Retrieves a string that may be used to identify the session in the server application.
      IntermediateClientResponseValue getUpstreamResponse()
      Retrieves the wrapped response from an upstream server, if available.
      java.lang.String getUpstreamServerAddress()
      Retrieves the IP address or resolvable name of the upstream server system, if available.
      int hashCode()
      Generates a hash code for this intermediate client response value.
      java.lang.String toString()
      Retrieves a string representation of this intermediate client response value.
      void toString​(java.lang.StringBuilder buffer)
      Appends a string representation of this intermediate client response value to the provided buffer.
      java.lang.Boolean upstreamServerSecure()
      Indicates whether the communication with the communication with the upstream server is secure (i.e., whether communication between the server application and the upstream server is safe from interpretation or undetectable alteration by a third party observer or interceptor).
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • IntermediateClientResponseValue

        public IntermediateClientResponseValue​(IntermediateClientResponseValue upstreamResponse,
                                               java.lang.String upstreamServerAddress,
                                               java.lang.Boolean upstreamServerSecure,
                                               java.lang.String serverName,
                                               java.lang.String serverSessionID,
                                               java.lang.String serverResponseID)
        Creates a new intermediate client response value with the provided information.
        Parameters:
        upstreamResponse - A wrapped intermediate client response from an upstream server. It may be null if there is no wrapped upstream response.
        upstreamServerAddress - The IP address or resolvable name of the upstream server system. It may be null if there is no upstream server or its address is not available.
        upstreamServerSecure - Indicates whether communication with the upstream server is secure. It may be null if there is no upstream server or it is not known whether the communication is secure.
        serverName - An identifier string that summarizes the server application that created this intermediate client response. It may be null if that information is not available.
        serverSessionID - A string that may be used to identify the session in the server application. It may be null if there is no available session identifier.
        serverResponseID - A string that may be used to identify the response in the server application. It may be null if there is no available response identifier.
    • Method Detail

      • getUpstreamServerAddress

        public java.lang.String getUpstreamServerAddress()
        Retrieves the IP address or resolvable name of the upstream server system, if available.
        Returns:
        The IP address or resolvable name of the upstream server system, null if there is no upstream server or its address is not available.
      • upstreamServerSecure

        public java.lang.Boolean upstreamServerSecure()
        Indicates whether the communication with the communication with the upstream server is secure (i.e., whether communication between the server application and the upstream server is safe from interpretation or undetectable alteration by a third party observer or interceptor).
        Returns:
        Boolean.TRUE if communication with the upstream server is secure, Boolean.FALSE if it is not secure, or null if there is no upstream server or it is not known whether the communication is secure.
      • getServerName

        public java.lang.String getServerName()
        Retrieves a string that identifies the server application that created this intermediate client response value.
        Returns:
        A string that may be used to identify the server application that created this intermediate client response value.
      • getServerSessionID

        public java.lang.String getServerSessionID()
        Retrieves a string that may be used to identify the session in the server application.
        Returns:
        A string that may be used to identify the session in the server application, or null if there is none.
      • getServerResponseID

        public java.lang.String getServerResponseID()
        Retrieves a string that may be used to identify the response in the server application.
        Returns:
        A string that may be used to identify the response in the server application, or null if there is none.
      • encode

        public ASN1Sequence encode()
        Encodes this intermediate client response value to a form that may be included in the response control.
        Returns:
        An ASN.1 octet string containing the encoded client response value.
      • decode

        public static IntermediateClientResponseValue decode​(ASN1Sequence sequence)
                                                      throws LDAPException
        Decodes the provided ASN.1 sequence as an intermediate client response value.
        Parameters:
        sequence - The sequence to be decoded as an intermediate client response value.
        Returns:
        The decoded intermediate client response value.
        Throws:
        LDAPException - If the provided sequence cannot be decoded as an intermediate client response value.
      • hashCode

        public int hashCode()
        Generates a hash code for this intermediate client response value.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        A hash code for this intermediate client response value.
      • equals

        public boolean equals​(java.lang.Object o)
        Indicates whether the provided object is equal to this intermediate client response value. It will only be considered equal if the provided object is also an intermediate client response value with all the same fields.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - The object for which to make the determination.
        Returns:
        true if the provided object is considered equal to this intermediate client response value, or false if not.
      • toString

        public java.lang.String toString()
        Retrieves a string representation of this intermediate client response value.
        Overrides:
        toString in class java.lang.Object
        Returns:
        A string representation of this intermediate client response value.
      • toString

        public void toString​(java.lang.StringBuilder buffer)
        Appends a string representation of this intermediate client response value to the provided buffer.
        Parameters:
        buffer - The buffer to which the information is to be appended.