The Simple Group Expander is an abstract stage implementation on which group expansion components such as the SharePoint Group Expansion component is based.
In order to create a group expansion component, the programmer simply creates a component that extends the simple group expander and implement the (abstract) method GroupExpansionResult expandGroups(GroupExpansionRequest request) throws AspireException. This method should ascertain the groups the user belongs to and add them to the result before returning. The component deals with all the unwrapping and wrapping of data to the job.
Simple Group Expander (Aspire 2) | |
---|---|
Factory Name | com.searchtechnologies.aspire:N/A |
subType | N/A |
Inputs | A Job containing a group expansion request |
Outputs | A Job containing a group expansion result |
Operation
The simple group expanders receives requests for expansion via an AspireObject attached to a Job. The structure of the message is shown here. The message is turned in to a GroupExpansionRequest object and passed to the GroupExpansionResult expandGroups(GroupExpansionRequest request) throws AspireException method that the programmer must implement, first creating a GroupExpansionResult and then adding groups as they are discovered. When all the groups have been added, the result is returned from the method and the component adds the groups back to the job, creating a Group Expansion Result Message.
Group Expansion Request Message
Group expansion request messages that are read by GroupExpansionRequest.java have the following format:
<doc type="groupExpansion"> <username dn="cn=Steve Denny,cn=Users,dc=search,dc=local">sdenny</username> </doc>
Group Expansion Result Message
Group expansion result messages that are created by GroupExpansionResult.java have the following format:
<doc type="groupExpansion"> <username dn="cn=Steve Denny,cn=Users,dc=search,dc=local">sdenny</username> <groups> <group source="ldap">ldapGroup1</group> <group source="ldap">ldapGroup2</group> <group source="ldap">ldapGroup3</group> </groups> </doc>
The <group> tag holds the name of the group to be returned in the LDAP response and the source attribute should hold an indicator of the component that added the group to the response.
Configuration
Any component based on the Simple Group Expander will respond to the following configuration tags:
Element | Type | Default | Description |
---|---|---|---|
aclPrefix | string | A string that will be prepended to any group added to the GroupExpansionResult. |