com.unboundid.ldap.sdk.unboundidds.controls
Class ExcludeBranchRequestControl

java.lang.Object
  extended by com.unboundid.ldap.sdk.Control
      extended by com.unboundid.ldap.sdk.unboundidds.controls.ExcludeBranchRequestControl
All Implemented Interfaces:
java.io.Serializable

@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class ExcludeBranchRequestControl
extends Control

NOTE: This class is part of the Commercial Edition of the UnboundID LDAP SDK for Java. It is not available for use in applications that include only the Standard Edition of the LDAP SDK, and is not supported for use in conjunction with non-UnboundID products.
This class provides a request control which may be used to request that entries below one or more base DNs be excluded from the results returned to a client while processing a search operation. For example, this may be useful in cases where you want to perform a search below "dc=example,dc=com", but want to exclude all entries below "ou=private,dc=example,dc=com".

The criticality for this control may be either true or false. It must have a value with the following encoding:
   ExcludeBranchRequest ::= SEQUENCE {
        baseDNs     [0] SEQUENCE OF LDAPDN,
        ... }
 

See Also:
Serialized Form

Field Summary
static java.lang.String EXCLUDE_BRANCH_REQUEST_OID
          The OID (1.3.6.1.4.1.30221.2.5.17) for the exclude branch request control.
 
Constructor Summary
ExcludeBranchRequestControl(boolean isCritical, java.util.Collection<java.lang.String> baseDNs)
          Creates a new exclude branch request control with the provided information.
ExcludeBranchRequestControl(boolean isCritical, java.lang.String... baseDNs)
          Creates a new exclude branch request control with the provided information.
ExcludeBranchRequestControl(java.util.Collection<java.lang.String> baseDNs)
          Creates a new exclude branch request control with the provided set of base DNs.
ExcludeBranchRequestControl(Control control)
          Creates a new exclude branch request control which is decoded from the provided generic control.
ExcludeBranchRequestControl(java.lang.String... baseDNs)
          Creates a new exclude branch request control with the provided set of base DNs.
 
Method Summary
 java.util.List<java.lang.String> getBaseDNs()
          Retrieves a list of the base DNs for entries to exclude from the search results.
 java.lang.String getControlName()
          Retrieves the user-friendly name for this control, if available.
 void toString(java.lang.StringBuilder buffer)
          Appends a string representation of this LDAP control to the provided buffer.
 
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
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

EXCLUDE_BRANCH_REQUEST_OID

public static final java.lang.String EXCLUDE_BRANCH_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.5.17) for the exclude branch request control.

See Also:
Constant Field Values
Constructor Detail

ExcludeBranchRequestControl

public ExcludeBranchRequestControl(java.util.Collection<java.lang.String> baseDNs)
Creates a new exclude branch request control with the provided set of base DNs. It will be marked critical.

Parameters:
baseDNs - The base DNs for entries to be excluded from search results. It must not be null or empty.

ExcludeBranchRequestControl

public ExcludeBranchRequestControl(java.lang.String... baseDNs)
Creates a new exclude branch request control with the provided set of base DNs. It will be marked critical.

Parameters:
baseDNs - The base DNs for entries to be excluded from search results. It must not be null or empty.

ExcludeBranchRequestControl

public ExcludeBranchRequestControl(boolean isCritical,
                                   java.lang.String... baseDNs)
Creates a new exclude branch request control with the provided information.

Parameters:
isCritical - Indicates whether the control should be marked critical.
baseDNs - The base DNs for entries to be excluded from search results. It must not be null or empty.

ExcludeBranchRequestControl

public ExcludeBranchRequestControl(boolean isCritical,
                                   java.util.Collection<java.lang.String> baseDNs)
Creates a new exclude branch request control with the provided information.

Parameters:
isCritical - Indicates whether the control should be marked critical.
baseDNs - The base DNs for entries to be excluded from search results. It must not be null or empty.

ExcludeBranchRequestControl

public ExcludeBranchRequestControl(Control control)
                            throws LDAPException
Creates a new exclude branch request control which is decoded from the provided generic control.

Parameters:
control - The generic control to be decoded as an exclude branch request control.
Throws:
LDAPException - If the provided control cannot be decoded as an exclude branch request control.
Method Detail

getBaseDNs

public java.util.List<java.lang.String> getBaseDNs()
Retrieves a list of the base DNs for entries to exclude from the search results.

Returns:
A list of the base DNs for entries to exclude from the search results.

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:
getControlName in class Control
Returns:
The user-friendly name for this control, or the OID if no user-friendly name is available.

toString

public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided buffer.

Overrides:
toString in class Control
Parameters:
buffer - The buffer to which to append the string representation of this buffer.