com.unboundid.ldap.sdk.unboundidds.controls
Class GetServerIDResponseControl

java.lang.Object
  extended by com.unboundid.ldap.sdk.Control
      extended by com.unboundid.ldap.sdk.unboundidds.controls.GetServerIDResponseControl
All Implemented Interfaces:
DecodeableControl, java.io.Serializable

@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class GetServerIDResponseControl
extends Control
implements DecodeableControl

NOTE: This class is part of the Commercial Edition of the UnboundID LDAP SDK for Java. It is not available for use in applications that include only the Standard Edition of the LDAP SDK, and is not supported for use in conjunction with non-UnboundID products.
This class provides a response control that may be used to provide the server ID of the Directory Server instance that processed the associated request. For search operations, each entry and reference returned will include the server ID of the server that provided that entry or reference. For all other types of operations, it will be in the LDAPResult (or appropriate subclass) returned for that operation.

This control must have a value, which will simply be the string representation of the server ID of the associated server. The criticality should be false.

See Also:
Serialized Form

Field Summary
static java.lang.String GET_SERVER_ID_RESPONSE_OID
          The OID (1.3.6.1.4.1.30221.2.5.15) for the get server ID response control.
 
Constructor Summary
GetServerIDResponseControl(java.lang.String serverID)
          Creates a new get server ID response control with the provided server ID.
GetServerIDResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
          Creates a new get server ID response control decoded from the given generic control contents.
 
Method Summary
 GetServerIDResponseControl decodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
          Creates a new instance of this decodeable control from the provided information.
static GetServerIDResponseControl get(LDAPResult result)
          Extracts a get server ID response control from the provided result.
static GetServerIDResponseControl get(SearchResultEntry entry)
          Extracts a get server ID response control from the provided search result entry.
static GetServerIDResponseControl get(SearchResultReference ref)
          Extracts a get server ID response control from the provided search result reference.
 java.lang.String getControlName()
          Retrieves the user-friendly name for this control, if available.
 java.lang.String getServerID()
          Retrieves the server ID of the server that actually processed the associated request.
 void toString(java.lang.StringBuilder buffer)
          Appends a string representation of this LDAP control to the provided buffer.
 
Methods inherited from class com.unboundid.ldap.sdk.Control
decode, decode, decodeControls, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, toString, writeTo
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

GET_SERVER_ID_RESPONSE_OID

public static final java.lang.String GET_SERVER_ID_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.15) for the get server ID response control.

See Also:
Constant Field Values
Constructor Detail

GetServerIDResponseControl

public GetServerIDResponseControl(java.lang.String serverID)
Creates a new get server ID response control with the provided server ID.

Parameters:
serverID - The server ID of the server that processed the associated request. It must not be null.

GetServerIDResponseControl

public GetServerIDResponseControl(java.lang.String oid,
                                  boolean isCritical,
                                  ASN1OctetString value)
                           throws LDAPException
Creates a new get server ID response control decoded from the given generic control contents.

Parameters:
oid - The OID for the control.
isCritical - Indicates whether this control should be marked critical.
value - The value for the control. It may be null if the control to decode does not have a value.
Throws:
LDAPException - If a problem occurs while attempting to decode the generic control as a get server ID response control.
Method Detail

decodeControl

public GetServerIDResponseControl decodeControl(java.lang.String oid,
                                                boolean isCritical,
                                                ASN1OctetString value)
                                         throws LDAPException
Creates a new instance of this decodeable control from the provided information.

Specified by:
decodeControl in interface DecodeableControl
Parameters:
oid - The OID for the control.
isCritical - Indicates whether the control should be marked critical.
value - The encoded value for the control. This may be null if no value was provided.
Returns:
The decoded representation of this control.
Throws:
LDAPException - If the provided information cannot be decoded as a valid instance of this decodeable control.

get

public static GetServerIDResponseControl get(LDAPResult result)
                                      throws LDAPException
Extracts a get server ID response control from the provided result.

Parameters:
result - The result from which to retrieve the get server ID response control.
Returns:
The get server ID response control contained in the provided result, or null if the result did not contain a get server ID response control.
Throws:
LDAPException - If a problem is encountered while attempting to decode the get server ID response control contained in the provided result.

get

public static GetServerIDResponseControl get(SearchResultEntry entry)
                                      throws LDAPException
Extracts a get server ID response control from the provided search result entry.

Parameters:
entry - The search result entry from which to retrieve the get server ID response control.
Returns:
The get server ID response control contained in the provided search result entry, or null if the entry did not contain a get server ID response control.
Throws:
LDAPException - If a problem is encountered while attempting to decode the get server ID response control contained in the provided entry.

get

public static GetServerIDResponseControl get(SearchResultReference ref)
                                      throws LDAPException
Extracts a get server ID response control from the provided search result reference.

Parameters:
ref - The search result reference from which to retrieve the get server ID response control.
Returns:
The get server ID response control contained in the provided search result reference, or null if the reference did not contain a get server ID response control.
Throws:
LDAPException - If a problem is encountered while attempting to decode the get server ID response control contained in the provided reference.

getServerID

public java.lang.String getServerID()
Retrieves the server ID of the server that actually processed the associated request.

Returns:
The server ID of the server that actually processed the associated request.

getControlName

public java.lang.String getControlName()
Retrieves the user-friendly name for this control, if available. If no user-friendly name has been defined, then the OID will be returned.

Overrides:
getControlName in class Control
Returns:
The user-friendly name for this control, or the OID if no user-friendly name is available.

toString

public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided buffer.

Overrides:
toString in class Control
Parameters:
buffer - The buffer to which to append the string representation of this buffer.