@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class UniquenessRequestControl extends Control
ResultCode.ASSERTION_FAILED
and a UniquenessResponseControl
for each uniqueness constraint that was not satisfied.
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.
UniquenessMultipleAttributeBehavior
enum. If both a set of attribute
types and a filter are provided, then only entries matching both sets of
criteria will be considered a conflict.
true
or false
, and a value with the following
encoding:
UniquenessRequestValue ::= SEQUENCE { uniquenessID [0] OCTET STRING, attributeTypes [1] SET OF OCTET STRING OPTIONAL, multipleAttributeBehavior [2] ENUMERATED { uniqueWithinEachAttribute (0), uniqueAcrossAllAttributesIncludingInSameEntry (1), uniqueAcrossAllAttributesExceptInSameEntry (2), uniqueInCombination (3), ... } DEFAULT uniqueWithinEachAttribute, baseDN [3] LDAPDN OPTIONAL, filter [4] Filter OPTIONAL, preventConflictsWithSoftDeletedEntries [5] BOOLEAN DEFAULT FALSE, preCommitValidationLevel [6] ENUMERATED { none (0), allSubtreeViews (1), allBackendSets (2), allAvailableBackendServers (3), ... } DEFAULT allSubtreeViews, postCommitValidationLevel [7] ENUMERATED { none (0), allSubtreeViews (1), allBackendSets (2), allAvailableBackendServers (3), ... } DEFAULT allSubtreeViews, ... }
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
UNIQUENESS_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.5.52) for the uniqueness request control.
|
Constructor and Description |
---|
UniquenessRequestControl(boolean isCritical,
java.lang.String uniquenessID,
UniquenessRequestControlProperties properties)
Creates a new uniqueness request control with the provided information.
|
UniquenessRequestControl(Control control)
Creates a new uniqueness request control that is decoded from the provided
generic control.
|
Modifier and Type | Method and Description |
---|---|
java.util.Set<java.lang.String> |
getAttributeTypes()
Retrieves the set of attribute types that the server will check for
uniqueness conflicts.
|
java.lang.String |
getBaseDN()
Retrieves the base DN that will be used for searches used to identify
uniqueness conflicts, if defined.
|
java.lang.String |
getControlName()
Retrieves the user-friendly name for this control, if available.
|
Filter |
getFilter()
Retrieves a filter that will be used to identify uniqueness conflicts, if
defined.
|
UniquenessMultipleAttributeBehavior |
getMultipleAttributeBehavior()
Retrieves the behavior that the server should exhibit if multiple attribute
types are configured.
|
UniquenessValidationLevel |
getPostCommitValidationLevel()
Retrieves the post-commit validation level, which will be used to identify
any conflicts that were introduced by the request with which the control is
associated, or by some other concurrent changed processed in the server.
|
UniquenessValidationLevel |
getPreCommitValidationLevel()
Retrieves the pre-commit validation level, which will be used to identify
any conflicts before the associated request is processed.
|
java.lang.String |
getUniquenessID()
Retrieves the uniqueness identifier for this control, which may be used to
identify the response control that corresponds to this request control.
|
boolean |
preventConflictsWithSoftDeletedEntries()
Indicates whether the server should attempt to identify conflicts with
soft-deleted entries.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided
buffer.
|
decode, decode, decodeControls, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, toString, writeTo
public static final java.lang.String UNIQUENESS_REQUEST_OID
public UniquenessRequestControl(boolean isCritical, java.lang.String uniquenessID, UniquenessRequestControlProperties properties) throws LDAPException
isCritical
- Indicates whether the control should be considered
critical.uniquenessID
- A value that will be used to correlate this request
control with its corresponding response control. If
this is null
, then a unique identifier will
be automatically generated.properties
- The set of properties for this control. It must not
be null
.LDAPException
- If the provided properties cannot be used to create
a valid uniqueness request control.public UniquenessRequestControl(Control control) throws LDAPException
control
- The control to be decoded as a uniqueness request control.
It must not be null
.LDAPException
- If the provided control cannot be decoded as a
valid uniqueness request control.public java.lang.String getUniquenessID()
public java.util.Set<java.lang.String> getAttributeTypes()
public UniquenessMultipleAttributeBehavior getMultipleAttributeBehavior()
public java.lang.String getBaseDN()
null
if the server should search
below all public naming contexts.public Filter getFilter()
null
if no filter has been defined.public boolean preventConflictsWithSoftDeletedEntries()
true
if the server should identify conflicts with both
regular entries and soft-deleted entries, or false
if the
server should only identify conflicts with regular entries.public UniquenessValidationLevel getPreCommitValidationLevel()
public UniquenessValidationLevel getPostCommitValidationLevel()
public java.lang.String getControlName()
getControlName
in class Control