Class UniquenessRequestControlProperties

  • All Implemented Interfaces:
    java.io.Serializable

    @Mutable
    @ThreadSafety(level=NOT_THREADSAFE)
    public final class UniquenessRequestControlProperties
    extends java.lang.Object
    implements java.io.Serializable
    This class provides a data structure that holds a set of properties for use in conjunction with the 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.

    The control must be created with either a set of attribute types or a filter (or both). See the UniquenessRequestControl class-level documentation for details about how the server will behave if either or both of these values are provided.

    The following default values will be used for properties that are not specified:
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      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.
      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.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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.
      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 setAttributeTypes​(java.lang.String... attributeTypes)
      Specifies the set of attribute types that the server will check for uniqueness conflicts.
      void setAttributeTypes​(java.util.Collection<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 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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • UniquenessRequestControlProperties

        public 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.
        Parameters:
        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.
      • UniquenessRequestControlProperties

        public 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.
        Parameters:
        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.
      • UniquenessRequestControlProperties

        public 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.
        Parameters:
        filter - The filter that the server will use to check for uniqueness conflicts. It must not be null.
    • Method Detail

      • getAttributeTypes

        public java.util.Set<java.lang.String> getAttributeTypes()
        Retrieves the set of attribute types that the server will check for uniqueness conflicts.
        Returns:
        The set of attribute types that the server will check for uniqueness conflicts, or an empty set if only a filter should be used to identify conflicts.
      • setAttributeTypes

        public void setAttributeTypes​(java.lang.String... attributeTypes)
        Specifies the set of attribute types that the server will check for uniqueness conflicts.
        Parameters:
        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.
      • setAttributeTypes

        public void setAttributeTypes​(java.util.Collection<java.lang.String> attributeTypes)
        Specifies the set of attribute types that the server will check for uniqueness conflicts.
        Parameters:
        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.
      • setMultipleAttributeBehavior

        public void setMultipleAttributeBehavior​(UniquenessMultipleAttributeBehavior multipleAttributeBehavior)
        Specifies the behavior that the server should exhibit if multiple attribute types are configured.
        Parameters:
        multipleAttributeBehavior - The behavior that the server should exhibit if multiple attribute types are configured. This must not be null.
      • getBaseDN

        public java.lang.String getBaseDN()
        Retrieves the base DN that will be used for searches used to identify uniqueness conflicts, if defined.
        Returns:
        The base DN that will be used for searches used to identify uniqueness conflicts, or null if the server should search below all public naming contexts.
      • setBaseDN

        public void setBaseDN​(java.lang.String baseDN)
        Specifies the base DN that will be used for searches used to identify uniqueness conflicts.
        Parameters:
        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.
      • getFilter

        public Filter getFilter()
        Retrieves a filter that will be used to identify uniqueness conflicts, if defined.
        Returns:
        A filter that will be used to identify uniqueness conflicts, or null if no filter has been defined.
      • setFilter

        public void setFilter​(Filter filter)
        Specifies a filter that will be used to identify uniqueness conflicts.
        Parameters:
        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.
      • preventConflictsWithSoftDeletedEntries

        public boolean preventConflictsWithSoftDeletedEntries()
        Indicates whether the server should attempt to identify conflicts with soft-deleted entries.
        Returns:
        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.
      • setPreventConflictsWithSoftDeletedEntries

        public void setPreventConflictsWithSoftDeletedEntries​(boolean preventConflictsWithSoftDeletedEntries)
        Specifies whether the server should attempt to identify conflicts with soft-deleted entries.
        Parameters:
        preventConflictsWithSoftDeletedEntries - Indicates whether the server should attempt to identify conflicts with soft-deleted entries.
      • getPreCommitValidationLevel

        public UniquenessValidationLevel getPreCommitValidationLevel()
        Retrieves the pre-commit validation level, which will be used to identify any conflicts before the associated request is processed.
        Returns:
        The pre-commit validation level.
      • setPreCommitValidationLevel

        public void setPreCommitValidationLevel​(UniquenessValidationLevel preCommitValidationLevel)
        Specifies the pre-commit validation level, which will be used to identify any conflicts before the associated request is processed.
        Parameters:
        preCommitValidationLevel - The pre-commit validation level. It must not be null.
      • getPostCommitValidationLevel

        public 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.
        Returns:
        The post-commit validation level.
      • setPostCommitValidationLevel

        public 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.
        Parameters:
        postCommitValidationLevel - The post-commit validation level. It must not be null.
      • toString

        public java.lang.String toString()
        Retrieves a string representation of this uniqueness request control properties object.
        Overrides:
        toString in class java.lang.Object
        Returns:
        A string representation of this uniqueness request control properties object.
      • toString

        public void toString​(java.lang.StringBuilder buffer)
        Appends a string representation of this uniqueness request control properties object to the provided buffer.
        Parameters:
        buffer - The buffer to which the information should be appended.