Class UniquenessResponseControl
- java.lang.Object
-
- com.unboundid.ldap.sdk.Control
-
- com.unboundid.ldap.sdk.unboundidds.controls.UniquenessResponseControl
-
- All Implemented Interfaces:
DecodeableControl,java.io.Serializable
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class UniquenessResponseControl extends Control implements DecodeableControl
This class provides a response control that may be included in the response to add, modify, and modify DN requests that included theUniquenessRequestControl. It provides information about the uniqueness processing that was performed.
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.
The control has an OID of 1.3.6.1.4.1.30221.2.5.53 and a criticality of false. It must have a value with the following encoding:UniquenessResponseValue ::= SEQUENCE { uniquenessID [0] OCTET STRING, preCommitValidationPassed [1] BOOLEAN OPTIONAL, postCommitValidationPassed [2] BOOLEAN OPTIONAL, validationMessage [3] OCTET STRING OPTIONAL, ... }- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringUNIQUENESS_RESPONSE_OIDThe OID (1.3.6.1.4.1.30221.2.5.53) for the uniqueness response control.
-
Constructor Summary
Constructors Constructor Description UniquenessResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)Creates a new uniqueness response control with the provided information.UniquenessResponseControl(java.lang.String uniquenessID, java.lang.Boolean preCommitValidationPassed, java.lang.Boolean postCommitValidationPassed, java.lang.String validationMessage)Creates a new uniqueness response control with the provided information.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description UniquenessResponseControldecodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)Creates a new instance of this decodeable control from the provided information.static java.util.Map<java.lang.String,UniquenessResponseControl>get(LDAPResult result)Retrieves the set of uniqueness response controls included in the provided result.java.lang.StringgetControlName()Retrieves the user-friendly name for this control, if available.java.lang.BooleangetPostCommitValidationPassed()Retrieves a value that indicates whether post-commit validation was attempted, and whether that validation passed.UniquenessValidationResultgetPostCommitValidationResult()Retrieves the result of the server's post-commit validation processing.java.lang.BooleangetPreCommitValidationPassed()Retrieves a value that indicates whether pre-commit validation was attempted, and whether that validation passed.UniquenessValidationResultgetPreCommitValidationResult()Retrieves the result of the server's pre-commit validation processing.java.lang.StringgetUniquenessID()Retrieves the identifier that may be used to correlate this uniqueness response control with the corresponding request control.java.lang.StringgetValidationMessage()Retrieves a message with additional information about the validation processing that was performed.voidtoString(java.lang.StringBuilder buffer)Appends a string representation of this LDAP control to the provided buffer.booleanuniquenessConflictFound()Indicates whether a uniqueness conflict was found during processing.-
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
-
-
-
-
Field Detail
-
UNIQUENESS_RESPONSE_OID
public static final java.lang.String UNIQUENESS_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.53) for the uniqueness response control.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
UniquenessResponseControl
public UniquenessResponseControl(java.lang.String uniquenessID, java.lang.Boolean preCommitValidationPassed, java.lang.Boolean postCommitValidationPassed, java.lang.String validationMessage)
Creates a new uniqueness response control with the provided information.- Parameters:
uniquenessID- The uniqueness ID that may be used to correlate this uniqueness response control with the corresponding request control. This must not benull.preCommitValidationPassed- Indicates whether the pre-commit validation was successful. This may benullif no pre-commit validation was attempted.postCommitValidationPassed- Indicates whether the post-commit validation was successful. This may benullif no post-commit validation was attempted.validationMessage- A message with additional information about the validation processing. This may benullif no validation message is needed.
-
UniquenessResponseControl
public UniquenessResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value) throws LDAPException
Creates a new uniqueness response control with the provided information.- 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 benullif no value was provided.- Throws:
LDAPException- If the provided control cannot be decoded as a uniqueness response control.
-
-
Method Detail
-
decodeControl
public UniquenessResponseControl 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:
decodeControlin interfaceDecodeableControl- 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 benullif 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 java.util.Map<java.lang.String,UniquenessResponseControl> get(LDAPResult result) throws LDAPException
Retrieves the set of uniqueness response controls included in the provided result.- Parameters:
result- The result to process.- Returns:
- The set of uniqueness response controls included in the provided result, indexed by uniqueness ID. It may be empty if the result does not include any uniqueness response controls.
- Throws:
LDAPException- If a problem is encountered while getting the set of uniqueness response controls contained in the provided result.
-
uniquenessConflictFound
public boolean uniquenessConflictFound()
Indicates whether a uniqueness conflict was found during processing.- Returns:
trueif a uniqueness conflict was found during processing, orfalseif no conflict was found or if no validation was attempted.
-
getUniquenessID
public java.lang.String getUniquenessID()
Retrieves the identifier that may be used to correlate this uniqueness response control with the corresponding request control. This is primarily useful for requests that contain multiple uniqueness controls, as there may be a separate response control for each.- Returns:
- The identifier that may be used to correlate this uniqueness response control with the corresponding request control.
-
getPreCommitValidationResult
public UniquenessValidationResult getPreCommitValidationResult()
Retrieves the result of the server's pre-commit validation processing. The same information can be inferred from thegetPreCommitValidationPassed()method, but this method may provide a more intuitive result and does not have the possibility of anullreturn value.- Returns:
UniquenessValidationResult.VALIDATION_PASSEDif the server did not find any conflicting entries during the pre-commit check,UniquenessValidationResult.VALIDATION_FAILEDif the server found at least one conflicting entry during the pre-commit check, orUniquenessValidationResult.VALIDATION_NOT_ATTEMPTEDif the server did not attempt any pre-commit validation.
-
getPreCommitValidationPassed
public java.lang.Boolean getPreCommitValidationPassed()
Retrieves a value that indicates whether pre-commit validation was attempted, and whether that validation passed. Note that this method is still supported and is not deprecated at this time, but thegetPreCommitValidationResult()is now the recommended way to get this information.- Returns:
Boolean.TRUEif pre-commit validation was attempted and passed,Boolean.FALSEif pre-commit validation was attempted and did not pass, ornullif pre-commit validation was not attempted.
-
getPostCommitValidationResult
public UniquenessValidationResult getPostCommitValidationResult()
Retrieves the result of the server's post-commit validation processing. The same information can be inferred from thegetPostCommitValidationPassed()method, but this method may provide a more intuitive result and does not have the possibility of anullreturn value.- Returns:
UniquenessValidationResult.VALIDATION_PASSEDif the server did not find any conflicting entries during the post-commit check,UniquenessValidationResult.VALIDATION_FAILEDif the server found at least one conflicting entry during the post-commit check, orUniquenessValidationResult.VALIDATION_NOT_ATTEMPTEDif the server did not attempt any post-commit validation.
-
getPostCommitValidationPassed
public java.lang.Boolean getPostCommitValidationPassed()
Retrieves a value that indicates whether post-commit validation was attempted, and whether that validation passed.- Returns:
Boolean.TRUEif post-commit validation was attempted and passed,Boolean.FALSEif post-commit validation was attempted and did not pass, ornullif post-commit validation was not attempted.
-
getValidationMessage
public java.lang.String getValidationMessage()
Retrieves a message with additional information about the validation processing that was performed.- Returns:
- A message with additional information about the validation
processing that was performed, or
nullif no validation message is available.
-
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:
getControlNamein classControl- Returns:
- The user-friendly name for this control, or the OID if no user-friendly name is available.
-
-