@Mutable @ThreadSafety(level=NOT_THREADSAFE) public final class UniquenessRequestControlProperties extends java.lang.Object implements java.io.Serializable
UniquenessRequestControl
.
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.
UniquenessRequestControl
class-level
documentation for details about how the server will behave if either or both
of these values are provided.
UniquenessMultipleAttributeBehavior.UNIQUE_WITHIN_EACH_ATTRIBUTE
.
UniquenessValidationLevel.ALL_SUBTREE_VIEWS
.
UniquenessValidationLevel.ALL_SUBTREE_VIEWS
.
Constructor and Description |
---|
UniquenessRequestControlProperties(java.util.Collection<java.lang.String> attributeTypes)
Creates a new instance of this uniqueness request control properties object
with the provided set of attribute types and default values for all other
properties as specified in the class-level javadoc documentation.
|
UniquenessRequestControlProperties(Filter filter)
Creates a new instance of this uniqueness request control properties object
with the provided filter and default values for all other properties as
specified in the class-level javadoc documentation.
|
UniquenessRequestControlProperties(java.lang.String... attributeTypes)
Creates a new instance of this uniqueness request control properties object
with the provided set of attribute types and default values for all other
properties as specified in the class-level javadoc documentation.
|
Modifier and Type | Method and Description |
---|---|
boolean |
alertOnPostCommitConflictDetection()
Indicates whether the server should raise an administrative alert if a
conflict is detected during post-commit validation processing.
|
boolean |
createConflictPreventionDetailsEntry()
Indicates whether the server should create a temporary conflict prevention
details entry before beginning pre-commit validation to provide better
support for preventing conflicts.
|
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.
|
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.
|
boolean |
preventConflictsWithSoftDeletedEntries()
Indicates whether the server should attempt to identify conflicts with
soft-deleted entries.
|
void |
setAlertOnPostCommitConflictDetection(boolean alertOnPostCommitConflictDetection)
Specifies whether the server should raise an administrative alert if a
conflict is detected during post-commit validation processing.
|
void |
setAttributeTypes(java.util.Collection<java.lang.String> attributeTypes)
Specifies the set of attribute types that the server will check for
uniqueness conflicts.
|
void |
setAttributeTypes(java.lang.String... attributeTypes)
Specifies the set of attribute types that the server will check for
uniqueness conflicts.
|
void |
setBaseDN(java.lang.String baseDN)
Specifies the base DN that will be used for searches used to identify
uniqueness conflicts.
|
void |
setCreateConflictPreventionDetailsEntry(boolean createConflictPreventionDetailsEntry)
Specifies whether the server should create a temporary conflict prevention
details entry before beginning pre-commit validation to provide better
support for preventing conflicts.
|
void |
setFilter(Filter filter)
Specifies a filter that will be used to identify uniqueness conflicts.
|
void |
setMultipleAttributeBehavior(UniquenessMultipleAttributeBehavior multipleAttributeBehavior)
Specifies the behavior that the server should exhibit if multiple attribute
types are configured.
|
void |
setPostCommitValidationLevel(UniquenessValidationLevel postCommitValidationLevel)
Specifies 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.
|
void |
setPreCommitValidationLevel(UniquenessValidationLevel preCommitValidationLevel)
Specifies the pre-commit validation level, which will be used to identify
any conflicts before the associated request is processed.
|
void |
setPreventConflictsWithSoftDeletedEntries(boolean preventConflictsWithSoftDeletedEntries)
Specifies whether the server should attempt to identify conflicts with
soft-deleted entries.
|
java.lang.String |
toString()
Retrieves a string representation of this uniqueness request control
properties object.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this uniqueness request control
properties object to the provided buffer.
|
public UniquenessRequestControlProperties(@NotNull java.lang.String... attributeTypes)
attributeTypes
- The set of attribute types that the server will
check for uniqueness conflicts. It must not be
null
or empty. The server should be
configured with equality indexes for each of these
attribute types.public UniquenessRequestControlProperties(@NotNull java.util.Collection<java.lang.String> attributeTypes)
attributeTypes
- The set of attribute types that the server will
check for uniqueness conflicts. It must not be
null
or empty. The server should be
configured with equality indexes for each of these
attribute types.public UniquenessRequestControlProperties(@NotNull Filter filter)
filter
- The filter that the server will use to check for uniqueness
conflicts. It must not be null
.@NotNull public java.util.Set<java.lang.String> getAttributeTypes()
public void setAttributeTypes(@Nullable java.lang.String... attributeTypes)
attributeTypes
- The set of attribute types that the server will
check for uniqueness conflicts. It must not be
null
or empty if no filter is configured.
It may optionally be null
or empty if
a filter is provided. The server should be
configured with an equality index for each of the
provided attribute types.public void setAttributeTypes(@Nullable java.util.Collection<java.lang.String> attributeTypes)
attributeTypes
- The set of attribute types that the server will
check for uniqueness conflicts. It must not be
null
or empty if no filter is configured.
It may optionally be null
or empty if
a filter is provided. The server should be
configured with an equality index for each of the
provided attribute types.@NotNull public UniquenessMultipleAttributeBehavior getMultipleAttributeBehavior()
public void setMultipleAttributeBehavior(@NotNull UniquenessMultipleAttributeBehavior multipleAttributeBehavior)
multipleAttributeBehavior
- The behavior that the server should
exhibit if multiple attribute types are
configured. This must not be
null
.@Nullable public java.lang.String getBaseDN()
null
if the server should search
below all public naming contexts.public void setBaseDN(@Nullable java.lang.String baseDN)
baseDN
- The base DN that will be used for searches used to identify
uniqueness conflicts. It may be null
to indicate
that the server should search below all public naming
contexts.@Nullable public Filter getFilter()
null
if no filter has been defined.public void setFilter(@Nullable Filter filter)
filter
- A filter that will be used to identify uniqueness
conflicts. It must not be null
if no set of
attribute types has been configured. It may optionally be
null
if a set of attribute types has been
configured. If no attribute types are provided, then this
filter should be indexed within the server.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 void setPreventConflictsWithSoftDeletedEntries(boolean preventConflictsWithSoftDeletedEntries)
preventConflictsWithSoftDeletedEntries
- Indicates whether the
server should attempt to
identify conflicts with
soft-deleted entries.@NotNull public UniquenessValidationLevel getPreCommitValidationLevel()
public void setPreCommitValidationLevel(@NotNull UniquenessValidationLevel preCommitValidationLevel)
preCommitValidationLevel
- The pre-commit validation level. It must
not be null
.@NotNull public UniquenessValidationLevel getPostCommitValidationLevel()
public void setPostCommitValidationLevel(@NotNull UniquenessValidationLevel postCommitValidationLevel)
postCommitValidationLevel
- The post-commit validation level. It
must not be null
.public boolean alertOnPostCommitConflictDetection()
true
if the server should raise an administrative alert if
a conflict is detected during post-commit validation processing,
or false
if not.public void setAlertOnPostCommitConflictDetection(boolean alertOnPostCommitConflictDetection)
alertOnPostCommitConflictDetection
- Indicates whether the server
should raise an administrative
alert if a conflict is detected
during post-commit validation
processing.public boolean createConflictPreventionDetailsEntry()
true
if the server should create a temporary conflict
prevention details entry before beginning pre-commit validation,
or false
if not.public void setCreateConflictPreventionDetailsEntry(boolean createConflictPreventionDetailsEntry)
createConflictPreventionDetailsEntry
- Indicates whether the server
should create a temporary
conflict prevention details
entry before beginning
pre-commit validation.@NotNull public java.lang.String toString()
toString
in class java.lang.Object