Package org.ldaptive.ad.handler
Class PrimaryGroupIdHandler
java.lang.Object
org.ldaptive.transport.MessageFunctional<Q,S>
org.ldaptive.transport.MessageFunctional.Function<SearchRequest,SearchResponse,T,T>
org.ldaptive.handler.AbstractEntryHandler<SearchResponse>
org.ldaptive.ad.handler.PrimaryGroupIdHandler
- All Implemented Interfaces:
Function<SearchResponse,
,SearchResponse> SearchResultHandler
public class PrimaryGroupIdHandler
extends AbstractEntryHandler<SearchResponse>
implements SearchResultHandler
Constructs the primary group SID and then searches for that group and puts it's DN in the 'memberOf' attribute of the
original search entry. This handler requires that entries contain both the 'objectSid' and 'primaryGroupID'
attributes. If those attributes are not found this handler is a no-op. This handler should be used in conjunction
with the
ObjectSidHandler
to ensure the 'objectSid' attribute is in the proper form. See
http://support2.microsoft.com/kb/297951
This handler should only be used with the SearchOperation.execute()
method since it leverages
the connection to make further searches.-
Nested Class Summary
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate String
base DN used for searching for the primary group.private String
search filter used to find the primary group.private static final int
hash code seed.Fields inherited from class org.ldaptive.handler.AbstractEntryHandler
logger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapply
(SearchResponse response) boolean
Returns the base DN to search for the primary group.Returns the search filter used to find the primary group.protected void
handleAttributes
(LdapEntry entry) Handle the attributes of a search entry.int
hashCode()
void
Sets the base DN to search for the primary group.void
setGroupFilter
(String filter) Sets the search filter used to find the primary group.Methods inherited from class org.ldaptive.handler.AbstractEntryHandler
handleAttribute, handleAttributeName, handleAttributeValue, handleAttributeValue, handleDn, handleEntry
Methods inherited from class org.ldaptive.transport.MessageFunctional
getConnection, getHandle, getRequest, setConnection, setHandle, setRequest
-
Field Details
-
HASH_CODE_SEED
private static final int HASH_CODE_SEEDhash code seed.- See Also:
-
groupFilter
search filter used to find the primary group. -
baseDn
base DN used for searching for the primary group.
-
-
Constructor Details
-
PrimaryGroupIdHandler
public PrimaryGroupIdHandler()
-
-
Method Details
-
getGroupFilter
Returns the search filter used to find the primary group.- Returns:
- group search filter
-
setGroupFilter
Sets the search filter used to find the primary group.- Parameters:
filter
- search filter
-
getBaseDn
Returns the base DN to search for the primary group. If this is not set the base DN from the original search is used.- Returns:
- base DN to search for the primary group
-
setBaseDn
Sets the base DN to search for the primary group. If this is not set the base DN from the original search is used.- Parameters:
dn
- base DN
-
apply
- Specified by:
apply
in interfaceFunction<SearchResponse,
SearchResponse>
-
handleAttributes
Description copied from class:AbstractEntryHandler
Handle the attributes of a search entry.- Overrides:
handleAttributes
in classAbstractEntryHandler<SearchResponse>
- Parameters:
entry
- search entry to extract the attributes from
-
equals
- Overrides:
equals
in classAbstractEntryHandler<SearchResponse>
-
hashCode
public int hashCode()- Specified by:
hashCode
in classAbstractEntryHandler<SearchResponse>
-