The Salesforce Group Expansion accepts group expansion request containing a username and provides a list of groups to which the user belongs in a group expansion result.

This component uses the Restful API from Salesforce to fetch user group information. All group information is cached, so further group expansion requests won't make unnecessary calls to the Salesforce server.

This component is based on the Simple Group Expander

Feature only available with Aspire Enterprise

Salesforce Group Expansion (Aspire 2)
Factory Name com.searchtechnologies.aspire:aspire-salesforce-scanner
subType groupExpansion
Inputs A Job containing a group expansion request
Outputs A Job containing a group expansion result

Configuration

ElementTypeDefaultDescription
usernamestring
Username used to authenticate against Salesforce repostory.
passwordstringN/APassword used to authenticate against Salesforce repostory.
urlstring
The Salesforce repostory url used to authenticate.
securityTokenint3The security token for this user, given by Slaesforce.
consumerKeyint3The Specify consumer key of an App in salesforce with access to the chatter feed, given by Slaesforce..



Example Configurations

<!--Group Expansion -->
<component name="GroupExpansionScheduler" subType="default"
           factoryName="aspire-scheduler" enable="${useGE}">
  <debug>${debug}</debug>
  <schedules>
    <schedule name="GECache" enabled="true">
      <cron>${geSchedule}</cron>
      <event>onGECache</event>
      <job>
        <![CDATA[
          <doc actionProperties="cacheGroups">
            <routingTable>
              <${app.name}>
                <properties>
                  <connectorSource>
                    <url>${url}/</url>
                    <username>${username}</username>
                    <password>${password}</password>
                    <securityToken>${securityToken}</securityToken>
                    <consumerKey>${consumerKey}</consumerKey>
                  </connectorSource>
                </properties>
              </${app.name}>
            </routingTable>
            <displayName>Salesforce</displayName>
          </doc>
        ]]>
      </job>
    </schedule>
  </schedules>
  <branches>
    <branch event="onGECache" pipelineManager="Main" />
  </branches>
</component>

<component name="GroupExpansionPipelineManager" subType="pipeline"
           factoryName="aspire-application">
  <debug>${debug}</debug>
  <gatherStatistics>${debug}</gatherStatistics>
  <pipelines>
    <pipeline name="group-expansion-pipeline" default="true">
      <stages>
        <stage component="IncomingJobLogger" />
        <stage component="SalesforceGroupExpansion" />
      </stages>
    </pipeline>
  </pipelines>
  <components>
    <component name="IncomingJobLogger" subType="jobLogger"
               factoryName="aspire-tools">
      <debug>${debug}</debug>
      <logFile>log/${app.name}/GroupExpansionPipelineManager/incoming.jobs
      </logFile>
    </component>
    <component name="SalesforceGroupExpansion" subType="expansionClient"
               factoryName="aspire-simple-group-expander">
      <debug>${debug}</debug>
      <server>../Main/Scanner</server>
    </component>
  </components>
</component>


  • No labels