Class JoinRequestValue
- java.lang.Object
-
- com.unboundid.ldap.sdk.unboundidds.controls.JoinRequestValue
-
- All Implemented Interfaces:
java.io.Serializable
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class JoinRequestValue extends java.lang.Object implements java.io.Serializable
This class contains a data structure which provides information about the value of an LDAP join request control, which may or may not include a nested join. See the class-level documentation for theJoinRequestControl
class for additional information and an example demonstrating its use.
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 value of the join request control is encoded as follows:LDAPJoin ::= SEQUENCE { joinRule JoinRule, baseObject CHOICE { useSearchBaseDN [0] NULL, useSourceEntryDN [1] NULL, useCustomBaseDN [2] LDAPDN, ... }, scope [0] ENUMERATED { baseObject (0), singleLevel (1), wholeSubtree (2), subordinateSubtree (3), ... } OPTIONAL, derefAliases [1] ENUMERATED { neverDerefAliases (0), derefInSearching (1), derefFindingBaseObj (2), derefAlways (3), ... } OPTIONAL, sizeLimit [2] INTEGER (0 .. maxInt) OPTIONAL, filter [3] Filter OPTIONAL, attributes [4] AttributeSelection OPTIONAL, requireMatch [5] BOOLEAN DEFAULT FALSE, nestedJoin [6] LDAPJoin OPTIONAL, ... }
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description JoinRequestValue(JoinRule joinRule, JoinBaseDN baseDN, SearchScope scope, DereferencePolicy derefPolicy, java.lang.Integer sizeLimit, Filter filter, java.lang.String[] attributes, boolean requireMatch, JoinRequestValue nestedJoin)
Creates a new join request value with the provided information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]
getAttributes()
Retrieves the set of requested attributes that should be included in joined entries.JoinBaseDN
getBaseDN()
Retrieves the join base DN for this join request value.DereferencePolicy
getDerefPolicy()
Retrieves the alias dereferencing policy for this join request value.Filter
getFilter()
Retrieves a filter with additional criteria that must match a target entry for it to be joined with a search result entry.JoinRule
getJoinRule()
Retrieves the join rule for this join request value.JoinRequestValue
getNestedJoin()
Retrieves the nested join for this join request value, if defined.SearchScope
getScope()
Retrieves the scope for this join request value.java.lang.Integer
getSizeLimit()
Retrieves the client-requested size limit for this join request value.boolean
requireMatch()
Indicates whether a search result entry will be required to be joined with at least one entry for that entry to be returned to the client.java.lang.String
toString()
Retrieves a string representation of this join request value.void
toString(java.lang.StringBuilder buffer)
Appends a string representation of this join request value to the provided buffer.
-
-
-
Constructor Detail
-
JoinRequestValue
public JoinRequestValue(JoinRule joinRule, JoinBaseDN baseDN, SearchScope scope, DereferencePolicy derefPolicy, java.lang.Integer sizeLimit, Filter filter, java.lang.String[] attributes, boolean requireMatch, JoinRequestValue nestedJoin)
Creates a new join request value with the provided information.- Parameters:
joinRule
- The join rule for this join request value. It must not benull
.baseDN
- The base DN for this join request value. It must not benull
.scope
- The scope for this join request value. It may benull
if the scope from the associated search request should be used.derefPolicy
- The alias dereferencing policy for this join request value. It may benull
if the dereference policy from the associated search request should be used.sizeLimit
- The client-requested maximum number of entries to allow when performing the join. It may benull
if the size limit from the associated search request should be used. Note that the server will impose a maximum size limit of 1000 entries, so size limit values greater than 1000 will be limited to 1000.filter
- An additional filter which must match target entries for them to be included in the join. This may benull
if no additional filter is required and the join rule should be the only criteria used when performing the join.attributes
- The set of attributes that the client wishes to be included in joined entries. It may benull
or empty to indicate that all user attributes should be included. It may also contain special values like "1.1" to indicate that no attributes should be included, "*" to indicate that all user attributes should be included, "+" to indicate that all operational attributes should be included, or "@ocname" to indicate that all required and optional attributes associated with the "ocname" object class should be included.requireMatch
- Indicates whether a search result entry is required to be joined with at least one entry for it to be returned to the client.nestedJoin
- A set of join criteria that should be applied to entries joined with this join request value. It may benull
if no nested join is needed.
-
-
Method Detail
-
getJoinRule
public JoinRule getJoinRule()
Retrieves the join rule for this join request value.- Returns:
- The join rule for this join request value.
-
getBaseDN
public JoinBaseDN getBaseDN()
Retrieves the join base DN for this join request value.- Returns:
- The join base DN for this join request value.
-
getScope
public SearchScope getScope()
Retrieves the scope for this join request value.- Returns:
- The scope for this join request value, or
null
if the scope from the associated search request should be used.
-
getDerefPolicy
public DereferencePolicy getDerefPolicy()
Retrieves the alias dereferencing policy for this join request value.- Returns:
- The alias dereferencing policy for this join request value, or
null
if the policy from the associated search request should be used.
-
getSizeLimit
public java.lang.Integer getSizeLimit()
Retrieves the client-requested size limit for this join request value. Note that the server will impose a maximum size limit of 1000 entries, so if the client-requested size limit is greater than 1000, the server will limit it to 1000 entries.- Returns:
- The size limit for this join request value, or
null
if the size limit from the associated search request should be used.
-
getFilter
public Filter getFilter()
Retrieves a filter with additional criteria that must match a target entry for it to be joined with a search result entry.- Returns:
- A filter with additional criteria that must match a target entry
for it to be joined with a search result entry, or
null
if no additional filter is needed.
-
getAttributes
public java.lang.String[] getAttributes()
Retrieves the set of requested attributes that should be included in joined entries.- Returns:
- The set of requested attributes that should be included in joined entries, or an empty array if all user attributes should be requested.
-
requireMatch
public boolean requireMatch()
Indicates whether a search result entry will be required to be joined with at least one entry for that entry to be returned to the client.- Returns:
true
if a search result entry must be joined with at least one other entry for it to be returned to the client, orfalse
if a search result entry may be returned even if it is not joined with any other entries.
-
getNestedJoin
public JoinRequestValue getNestedJoin()
Retrieves the nested join for this join request value, if defined.- Returns:
- The nested join for this join request value, or
null
if there is no nested join for this join request value.
-
toString
public java.lang.String toString()
Retrieves a string representation of this join request value.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of this join request value.
-
toString
public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this join request value to the provided buffer.- Parameters:
buffer
- The buffer to which the information should be appended.
-
-