Class MoveSubtreeProperties
java.lang.Object
com.unboundid.ldap.sdk.unboundidds.MoveSubtreeProperties
@Mutable
@ThreadSafety(level=NOT_THREADSAFE)
public final class MoveSubtreeProperties
extends Object
This class defines a number of properties that can be used when attempting to
move a subtree from one Ping Identity Directory Server instance to another
Ping Identity Directory Server instance using restricted subtree
accessibility.
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.
-
Constructor Summary
ConstructorsConstructorDescriptionMoveSubtreeProperties(DN baseDN) Creates a new set of properties that can be used when moving the specified subtree from one server to another.MoveSubtreeProperties(MoveSubtreeProperties properties) Creates a new set of properties that is a copy of the provided properties object.MoveSubtreeProperties(String baseDN) Creates a new set of properties that can be used when moving the specified subtree from one server to another. -
Method Summary
Modifier and TypeMethodDescriptionRetrieves the base DN of the subtree to move.intRetrieves the maximum number of entries that the target subtree may contain for it to be moved from one server to another.Retrieves the listener that may be invoked during the course of moving entries from the source server to the target server, if any.Retrieves an operation purpose request control that should be included in all requests sent to the source and target servers, if any.voidSpecifies the base DN of the subtree to move.voidSpecifies the base DN of the subtree to move.voidsetMaximumAllowedSubtreeSize(int sizeLimit) Specifies the maximum number of entries that the target subtree may contain for it to be moved from one server to another.voidsetMoveSubtreeListener(MoveSubtreeListener listener) Specifies a listener that may be invoked during the course of moving entries from the source server to the target server.voidSpecifies an operation purpose request control that should be included in all requests sent to the source and target servers.voidsetSuppressReferentialIntegrityUpdates(boolean suppressUpdates) Specifies whether to suppress referential integrity updates when removing entries from the source server.voidsetUseToBeDeletedAccessibilityState(boolean useToBeDeletedState) Specifies whether to use theSubtreeAccessibilityState.TO_BE_DELETEDsubtree accessibility state (as opposed to theHIDDENstate) for the target subtree on the source server before beginning to remove entries from it.booleanIndicates whether to suppress referential integrity updates when removing entries from the source server.toString()Retrieves a string representation of the properties.voidtoString(StringBuilder buffer) Appends a string representation of the properties to the provided buffer.booleanIndicates whether to use theSubtreeAccessibilityState.TO_BE_DELETEDsubtree accessibility state (as opposed to theHIDDENstate) for the target subtree on the source server before beginning to remove entries from it.
-
Constructor Details
-
MoveSubtreeProperties
Creates a new set of properties that can be used when moving the specified subtree from one server to another.- Parameters:
baseDN- The base DN for the subtree to be moved. It must not benull, and it must represent a valid DN with one or more RDN components.- Throws:
LDAPException- If the provided string cannot be parsed as a valid DN.
-
MoveSubtreeProperties
Creates a new set of properties that can be used when moving the specified subtree from one server to another.- Parameters:
baseDN- The base DN for the subtree to be moved. It must not benull, and it must have one or more RDN components.
-
MoveSubtreeProperties
Creates a new set of properties that is a copy of the provided properties object.- Parameters:
properties- The properties object to use to create the new properties.
-
-
Method Details
-
getBaseDN
Retrieves the base DN of the subtree to move.- Returns:
- The base DN of the subtree to move.
-
setBaseDN
Specifies the base DN of the subtree to move.- Parameters:
baseDN- The base DN for the subtree to be moved. It must not benull, and it must represent a valid DN with one or more RDN components.- Throws:
LDAPException- If the provided string cannot be parsed as a valid DN.
-
setBaseDN
Specifies the base DN of the subtree to move.- Parameters:
baseDN- The base DN for the subtree to be moved. It must not benull, and it must have one or more RDN components.
-
getMaximumAllowedSubtreeSize
Retrieves the maximum number of entries that the target subtree may contain for it to be moved from one server to another.- Returns:
- The maximum number of entries that the target subtree may contain for it to be moved from one server to another, or zero if no client-side size limit should be enforced (although the server may still impose its own size limit).
-
setMaximumAllowedSubtreeSize
Specifies the maximum number of entries that the target subtree may contain for it to be moved from one server to another. If the subtree contains more than the maximum number of entries, then the attempt to move it will be aborted before any changes are applied to the data in either server.- Parameters:
sizeLimit- The maximum number of entries tht the target subtree may contain for it to be moved from one server to another. A value that is less than or equal to zero indicates that no client-side size limit should be imposed. Note that the server may also impose a size limit, and the smaller of the client-side and server-side limits will be in effect.
-
useToBeDeletedAccessibilityState
Indicates whether to use theSubtreeAccessibilityState.TO_BE_DELETEDsubtree accessibility state (as opposed to theHIDDENstate) for the target subtree on the source server before beginning to remove entries from it.- Returns:
trueif theTO_BE_DELETEDsubtree accessibility state should be used, orfalseif theHIDDENstate should be used.
-
setUseToBeDeletedAccessibilityState
Specifies whether to use theSubtreeAccessibilityState.TO_BE_DELETEDsubtree accessibility state (as opposed to theHIDDENstate) for the target subtree on the source server before beginning to remove entries from it. Both theTO_BE_DELETEDandHIDDENsubtree accessibility states will completely hide the target subtree from all clients expect those authenticated as a designated bypass-user account, but the key differences between these states include:-
In some cases, the server may be able to process delete requests for
entries in
TO_BE_DELETEDsubtrees than for entries in subtrees with other accessibility states, including theHIDDENstate. -
Support for the
TO_BE_DELETEDsubtree accessibility state was added to the Directory Server more recently than support for theHIDDENstate. Older Directory Server instances may not support theTO_BE_DELETEDstate. -
A
HIDDENsubtree can be updated to give it a different accessibility state, but once a subtree has been placed in aTO_BE_DELETEDaccessibility state, its state cannot be manually updated. -
The
TO_BE_DELETEDaccessibility state will automatically be removed from a subtree once all entries have been removed from that subtree, while theHIDDENstate needs to be manually removed if it is no longer desired.
- Parameters:
useToBeDeletedState- Indicates whether to use theTO_BE_DELETEDsubtree accessibility state instead of theHIDDENstate for the target subtree on the source server before beginning to remove entries from it.
-
In some cases, the server may be able to process delete requests for
entries in
-
suppressReferentialIntegrityUpdates
Indicates whether to suppress referential integrity updates when removing entries from the source server.- Returns:
trueif referential integrity updates should be suppressed when removing entries from the source server, orfalseif not.
-
setSuppressReferentialIntegrityUpdates
Specifies whether to suppress referential integrity updates when removing entries from the source server. By default, if the referential integrity plugin is enabled, then removing a user entry will automatically remove references to it from other entries, including things like static group membership. However, when moving entries from one server to another, and especially in cases where the associated references are in other entries that are also being moved, it may be desirable to suppress those referential integrity updates.- Parameters:
suppressUpdates- Indicates whether to suppress referential integrity updates when removing entries from the source server.
-
getOperationPurposeRequestControl
Retrieves an operation purpose request control that should be included in all requests sent to the source and target servers, if any.- Returns:
- An operation purpose request control that should be included in
all requests sent ot the source and target servers, or
nullif no operation purpose request control should be used.
-
setOperationPurposeRequestControl
Specifies an operation purpose request control that should be included in all requests sent to the source and target servers.- Parameters:
control- An operation purpose request control that should be included in all requests sent to the source and target servers. It may benullif no operation purpose request control should be used.
-
getMoveSubtreeListener
Retrieves the listener that may be invoked during the course of moving entries from the source server to the target server, if any.- Returns:
- The listener that may be invoked during the course of moving
entries from the source server to the target server, or
nullif no move subtree listener has been configured.
-
setMoveSubtreeListener
Specifies a listener that may be invoked during the course of moving entries from the source server to the target server. The listener will be invoked before and after adding an entry to the target server, and it will be invoked before and after removing an entry from the source server.- Parameters:
listener- A listener that may be invoked during the course of moving entries from the source server to the target server. It may benullif no listener is needed.
-
toString
Retrieves a string representation of the properties. -
toString
Appends a string representation of the properties to the provided buffer.- Parameters:
buffer- The buffer to which the information should be appended. It must not benull.
-