Import-pipeline table provider that creates or updates GroupMembership records, and their owning Profile, as an import pipeline runs. Registered under the provider id "membership". A row is matched to an existing profile by a custom identifier field, by userId or by email, in that order; when no matching profile is found and a group is specified a new profile is created. For each group listed in the group column the profile is given a membership within the organisation identified by orgId, or the pipeline's own organisation when orgId is not supplied. Deleting a row removes the profile's memberships in the specified group and organisation rather than deleting the profile itself.
Implements: DatabaseTableProvider
Properties
| Property | Returns | Description |
|---|---|---|
| providerId | String | Provider id this class is registered under. Used to select it from a DatabaseUpdateStep or DatabaseSourceStep configuration. |
| queryParameters | List<TableParameter> | Query parameters this provider accepts when building its source criteria. |
| tableFields | List<TableParameter> | Describes the row columns this provider accepts for insert, update and updateOrInsert: userId, firstName, surName, email, nickName, password, phone, group (required, comma-separated group names the profile is given membership of), orgId (required, the organisation each membership is created within), and useEmailAsIdentifier, customIdentifier, customIdentifierField and customIdentifierGroup for looking up an existing profile by a custom field. |
Methods
getProviderId()
Returns: String
Provider id this class is registered under. Used to select it from a DatabaseUpdateStep or DatabaseSourceStep configuration.
getQueryParameters()
Returns: List<TableParameter>
Query parameters this provider accepts when building its source criteria.
getTableFields()
Returns: List<TableParameter>
Describes the row columns this provider accepts for insert, update and updateOrInsert: userId, firstName, surName, email, nickName, password, phone, group (required, comma-separated group names the profile is given membership of), orgId (required, the organisation each membership is created within), and useEmailAsIdentifier, customIdentifier, customIdentifierField and customIdentifierGroup for looking up an existing profile by a custom field.