You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

The Group Expansion Router component is configured as a pipeline stage and is responsible for taking a single group expansion request and forwarding it to one or more group expansion stages (such as the SharePoint Group Expansion), combining the results and then returning the combined list back to the requestor. All communication is performed by group expansion requests and group expansion results.

On startup, the component reads a list of default routes from the configuration. However, routes for a specific group expansion request may be included with that request and these will override the default.

For each route, a sub-job is created, a new group expansion request attached and the job routed. The component then waits for the result of these requests (timing out after a configurable period) before combining the groups returned by the expansion components, removing any duplicates and returning the group expansion result.

Expansion Requests containing routes

If you wish to add the expansion routes to the group expansion request, this can be done using the addExpanders(AspireObject doc, List<String> expanderComponents) method. The request will then have the following form:

 <doc type="groupExpansion">
   <username dn="CN=Steve Denny,CN=Users,DC=search,DC=local">Steve Denny</username>
   <groupExpander>
     <expanders>
       <route>/SharePointConnector</route>
       <route>/DocumentumConnector</route>
     </expanders>
   </groupExpander>
 </doc>
Group Expansion Router (Aspire 2)
Factory Name com.searchtechnologies.aspire:aspire-simple-group-expander
subType router
Inputs A Job containing a group expansion request
Outputs A Job containing a group expansion result

Configuration

ElementTypeDefaultDescription
expanders/routeString
Default routes for group expansion, should routes not be specified on the request (optional & multiples allowed).
defaultPipelineManagerstring
The name of a pipeline manager that will be added (if specified) to the given routes before the job is published. This allows the routes to be specified as top level components or applications only, with the actual request being routed to a pipeline manager under that (optional).
timeoutint15000
(=15s)
The timeout applied when waiting for the routed jobs to complete. Expansion results received after this time will not be added to the result returned.

Branch Configuration

The Group Expansion Router publishes requests to a pipeline manager on the onGroupExpansion event, so you must configure a branch for the onGroupExpansion event. However, as routing is used to direct the jobs, the pipeline may contain no functional stages.

 <branches>
   <branch event="onGroupExpansion" pipelineManager="pipelineManager" pipeline="dummyPipeline" />
 </branches>

Example Configuration

No default routes
 <component name="expansionRouter" factoryName="aspire-simple-group-expander" subType="router">
   <defaultPipelineManager>GroupExpansionPipelineManager</defaultPipelineManager>
   <debug>true</debug>
   <branches>
     <branch event="onGroupExpansion" pipeline="dummy-for-routing" pipelineManager="."/>
   </branches>
 </component>

With default routes

 <component name="expansionRouter" factoryName="aspire-simple-group-expander " subType="router">
   <expanders>
     <route>/SharePointConnector</route>
     <route>/DocumentumConnector</route>
   </expanders>
   <defaultPipelineManager>GroupExpansionPipelineManager</defaultPipelineManager>
   <debug>true</debug>
   <branches>
     <branch event="onGroupExpansion" pipeline="dummy-for-routing" pipelineManager="."/>
   </branches>
 </component>
  • No labels