Class IntermediateClientRequestValue
- java.lang.Object
-
- com.unboundid.ldap.sdk.unboundidds.controls.IntermediateClientRequestValue
-
- All Implemented Interfaces:
java.io.Serializable
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class IntermediateClientRequestValue extends java.lang.Object implements java.io.Serializable
This class implements a data structure which encapsulates the value of an intermediate client request value. It may recursively embed intermediate client request values from downstream clients.
NOTE: This class, and other classes within the
com.unboundid.ldap.sdk.unboundiddspackage 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 theIntermediateClientRequestControlclass for an example of using the intermediate client request and response controls.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description IntermediateClientRequestValue(IntermediateClientRequestValue downstreamRequest, java.lang.String downstreamClientAddress, java.lang.Boolean downstreamClientSecure, java.lang.String clientIdentity, java.lang.String clientName, java.lang.String clientSessionID, java.lang.String clientRequestID)Creates a new intermediate client request value with the provided information.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static IntermediateClientRequestValuedecode(ASN1Sequence sequence)Decodes the provided ASN.1 sequence as an intermediate client request value.java.lang.BooleandownstreamClientSecure()Indicates whether the communication with the communication with the downstream client is secure (i.e., whether communication between the client application and the downstream client is safe from interpretation or undetectable alteration by a third party observer or interceptor).ASN1Sequenceencode()Encodes this intermediate client request value to a form that may be included in the request control.booleanequals(java.lang.Object o)Indicates whether the provided object is equal to this intermediate client request value.java.lang.StringgetClientIdentity()Retrieves the requested client authorization identity, if available.java.lang.StringgetClientName()Retrieves a string that identifies the client application that created this intermediate client request value.java.lang.StringgetClientRequestID()Retrieves a string that may be used to identify the request in the client application.java.lang.StringgetClientSessionID()Retrieves a string that may be used to identify the session in the client application.java.lang.StringgetDownstreamClientAddress()Retrieves the IP address or resolvable name of the downstream client system, if available.IntermediateClientRequestValuegetDownstreamRequest()Retrieves the wrapped request from a downstream client, if available.inthashCode()Generates a hash code for this intermediate client request value.java.lang.StringtoString()Retrieves a string representation of this intermediate client request value.voidtoString(java.lang.StringBuilder buffer)Appends a string representation of this intermediate client request value to the provided buffer.
-
-
-
Constructor Detail
-
IntermediateClientRequestValue
public IntermediateClientRequestValue(@Nullable IntermediateClientRequestValue downstreamRequest, @Nullable java.lang.String downstreamClientAddress, @Nullable java.lang.Boolean downstreamClientSecure, @Nullable java.lang.String clientIdentity, @Nullable java.lang.String clientName, @Nullable java.lang.String clientSessionID, @Nullable java.lang.String clientRequestID)
Creates a new intermediate client request value with the provided information.- Parameters:
downstreamRequest- A wrapped intermediate client request from a downstream client. It may benullif there is no downstream request.downstreamClientAddress- The IP address or resolvable name of the downstream client system. It may benullif there is no downstream client or its address is not available.downstreamClientSecure- Indicates whether communication with the downstream client is secure. It may benullif there is no downstream client or it is not known whether the communication is secure.clientIdentity- The requested client authorization identity. It may benullif there is no requested authorization identity.clientName- An identifier string that summarizes the client application that created this intermediate client request. It may benullif that information is not available.clientSessionID- A string that may be used to identify the session in the client application. It may benullif there is no available session identifier.clientRequestID- A string that may be used to identify the request in the client application. It may benullif there is no available request identifier.
-
-
Method Detail
-
getDownstreamRequest
@Nullable public IntermediateClientRequestValue getDownstreamRequest()
Retrieves the wrapped request from a downstream client, if available.- Returns:
- The wrapped request from a downstream client, or
nullif there is none.
-
getClientIdentity
@Nullable public java.lang.String getClientIdentity()
Retrieves the requested client authorization identity, if available.- Returns:
- The requested client authorization identity, or
nullif there is none.
-
getDownstreamClientAddress
@Nullable public java.lang.String getDownstreamClientAddress()
Retrieves the IP address or resolvable name of the downstream client system, if available.- Returns:
- The IP address or resolvable name of the downstream client system,
or
nullif there is no downstream client or its address is not available.
-
downstreamClientSecure
@Nullable public java.lang.Boolean downstreamClientSecure()
Indicates whether the communication with the communication with the downstream client is secure (i.e., whether communication between the client application and the downstream client is safe from interpretation or undetectable alteration by a third party observer or interceptor).- Returns:
Boolean.TRUEif communication with the downstream client is secure,Boolean.FALSEif it is not secure, ornullif there is no downstream client or it is not known whether the communication is secure.
-
getClientName
@Nullable public java.lang.String getClientName()
Retrieves a string that identifies the client application that created this intermediate client request value.- Returns:
- A string that may be used to identify the client application that created this intermediate client request value.
-
getClientSessionID
@Nullable public java.lang.String getClientSessionID()
Retrieves a string that may be used to identify the session in the client application.- Returns:
- A string that may be used to identify the session in the client
application, or
nullif there is none.
-
getClientRequestID
@Nullable public java.lang.String getClientRequestID()
Retrieves a string that may be used to identify the request in the client application.- Returns:
- A string that may be used to identify the request in the client
application, or
nullif there is none.
-
encode
@NotNull public ASN1Sequence encode()
Encodes this intermediate client request value to a form that may be included in the request control.- Returns:
- An ASN.1 octet string containing the encoded client request value.
-
decode
@NotNull public static IntermediateClientRequestValue decode(@NotNull ASN1Sequence sequence) throws LDAPException
Decodes the provided ASN.1 sequence as an intermediate client request value.- Parameters:
sequence- The sequence to be decoded as an intermediate client request value.- Returns:
- The decoded intermediate client request value.
- Throws:
LDAPException- If the provided sequence cannot be decoded as an intermediate client request value.
-
hashCode
public int hashCode()
Generates a hash code for this intermediate client request value.- Overrides:
hashCodein classjava.lang.Object- Returns:
- A hash code for this intermediate client request value.
-
equals
public boolean equals(@Nullable java.lang.Object o)
Indicates whether the provided object is equal to this intermediate client request value. It will only be considered equal if the provided object is also an intermediate client request value with all the same fields.- Overrides:
equalsin classjava.lang.Object- Parameters:
o- The object for which to make the determination.- Returns:
trueif the provided object is considered equal to this intermediate client request value, orfalseif not.
-
toString
@NotNull public java.lang.String toString()
Retrieves a string representation of this intermediate client request value.- Overrides:
toStringin classjava.lang.Object- Returns:
- A string representation of this intermediate client request value.
-
-