A strategy to merge two sets of user attributes.
A basic strategy to merge two attributes, not taking any period into account.
A request to delete the information about a user.
A request to delete an attribute of a user.
A request to delete an attribute of a user.
the identifier of the user
the name of the attribute
A request to fetch the set of ids associated with a given user
A request to fetch the set of ids associated with a given user
the id of the user to fetch the set of ids for
A request to retrieve the set of ids associated with a given user along with its attributes.
A request to retrieve the set of ids associated with a given user along with its attributes.
the id of the user to fetch the set of ids and attributes for
The response for a GetIdsAndData request.
The response for a GetIdsAndData request.
the set of ids associated with the user
the attributes and computed attributes values associated with the user wrapped in a Some
if the user exists, None
otherwise.
The response for a GetIds request.
A request to retrieve all attributes of a user.
A request to retrieve all attributes of a user.
the identifier of the user
The response for a GetUserBaseAttribute or a GetUserComputedAttribute request.
The response for a GetUserBaseAttribute or a GetUserComputedAttribute request.
the attribute value for the requested key wrapped in a Some
if the user and the attribute
exists, None
otherwise
A request to retrieve a single base attribute of a user.
A request to retrieve a single base attribute of a user.
the identifier of the user
the name of the base attribute
A request to retrieve a single computed attribute of a user.
A request to retrieve a single computed attribute of a user.
the identifier of the user
the name of the computed attribute
The response for a GetUser request.
The response for a GetUser request.
the attributes and computed attributes values associated with the user wrapped in a Some
if the user exists, None
otherwise.
A request to link the two users.
A request to link the two users.
the identifier of the first user
the identifier of the second user
an optional source for the link
A strategy to merge two attributes in the provided period.
A request to reset the links of a given source.
A request to reset the links of a given source.
the source to be reset
A request to set the merge strategy of a given base attribute.
A request to set the merge strategy of a given base attribute.
the name of the base attribute whose merge strategy is to be set
the merge strategy to set for the attribute
A strategy to merge two attributes.
A request to update the information about a user.
A request to update the information about a user.
the identifier of the user
the attributes to update the user with
the strategy to use when merging the attributes
The attribute set of a user.
The attribute set of a user.
the map from attribute names to values
A structure containing all the attributes of a user.
A structure containing all the attributes of a user.
the base attribute set of the user
the computed attributes of the user
A fully qualified user identifier.
A fully qualified user identifier.
the type of identifier
the identifier
Interface for clients capable of interacting with the User Profile Storage module by retrieving, updating or deleting information about users.
A request to be sent to the User Profile Storage module.
A response from the User Profile Storage module to a UserProfileStorageRequest.
Attribute merging strategy that performs a boolean AND between both attribute values.
Attribute merging strategy that performs a boolean AND between both attribute values. When merging two attributes,
attribute values that are not BooleanAttrValues nor can't be directly converted to one are considered to be
BooleanAttrValues with value true
.
NumericAttrValues with value different from 0
are converted to BooleanAttrValues with value true
.
NumericAttrValues with value equal to 0
are converted to BooleanAttrValues with value false
.
StringAttrValues with value "true"
are converted to BooleanAttrValues with value true
.
StringAttrValues with value "false"
are converted to BooleanAttrValues with value false
.
StringAttrValues whose value can be parsed to a Double follow the rules of the NumericAttrValue conversion
enumerated above.
Attribute merging strategy that joins all the individual elements of both attribute values in a single array.
Attribute merging strategy that joins all the individual elements of both attribute values in a single array. When merging two attributes, attribute values that are not ArrayAttrValues are converted to an ArrayAttrValue whose value is a sequence with a single element: the value of AttributeValue prior to the conversion.
The response for a DeleteUserAttribute request.
The response for a DeleteUser request.
The response for a LinkUsers request.
Attribute merging strategy that merges the attribute values, provided that they are both maps.
Attribute merging strategy that merges the attribute values, provided that they are both maps. When conflicting keys
arise, this merging strategy preferes the value of the most recently changed user. When merging two attributes,
attribute values that are not MapAttrValues are considered to be MapAttrValue with a value of Map.empty
.
Attribute merging strategy that uses the max of both attribute values as the final one.
Attribute merging strategy that uses the max of both attribute values as the final one. When merging two attributes,
attribute values that are not NumericAttrValues nor can't be directly converted to one are considered to be
NumericAttrValues with value Double.MinValue
.
StringAttrValues whose value can be parsed to a double can be converted to a NumericAttrValue.
BooleanAttrValues with value false
can be converted to a NumericAttrValue with value 0.
BooleanAttrValues with value true
can be converted to a NumericAttrValue with value 1.
Simple attributes merge strategy that updates the old attributes with the most recent ones.
Simple attributes merge strategy that updates the old attributes with the most recent ones. Attributes that were only present in the old attributes are preserved. SingleAttributeMergingStrategys are applied for individual attributes when using this attributes merge strategy.
Example: [(a, 1), (b, 1)] * [(a, 3), (c, 1)] = [(a, 3), (b, 1), (c, 1)]
Attribute merging strategy that uses the min of both attribute values as the final one.
Attribute merging strategy that uses the min of both attribute values as the final one. When merging two attributes,
attribute values that are not NumericAttrValues nor can't be directly converted to one are considered to be
NumericAttrValues with value Double.MaxValue
.
StringAttrValues whose value can be parsed to a double can be converted to a NumericAttrValue.
BooleanAttrValues with value false
can be converted to a NumericAttrValue with value 0.
BooleanAttrValues with value true
can be converted to a NumericAttrValue with value 1.
Attribute merging strategy that prefers the attribute value of the most recently changed user when merging attributes.
Attribute merging strategy that prefers the attribute value of the least recently changed user when merging attributes.
Attribute merging strategy that performs a boolean OR between both attribute values.
Attribute merging strategy that performs a boolean OR between both attribute values. When merging two attributes,
attribute values that are not BooleanAttrValues nor can't be directly converted to one are considered to be
BooleanAttrValues with value false
.
NumericAttrValues with value different from 0
are converted to BooleanAttrValues with value true
.
NumericAttrValues with value equal to 0
are converted to BooleanAttrValues with value false
.
StringAttrValues with value "true"
are converted to BooleanAttrValues with value true
.
StringAttrValues with value "false"
are converted to BooleanAttrValues with value false
.
StringAttrValues whose value can be parsed to a Double follow the rules of the NumericAttrValue conversion
enumerated above.
Simple attribute merge strategy that overwrites the old attributes with new attributes, removing all old attributes.
Simple attribute merge strategy that overwrites the old attributes with new attributes, removing all old attributes.
Example: [(a, 1), (b, 1)] * [(a, 3), (c, 1)] = [(a, 3), (c, 1)]
The response for a ResetLinks request.
The response for a SetMergeStrategy request.
Attribute merging strategy that sums both attribute values when merging attributes.
Attribute merging strategy that sums both attribute values when merging attributes. When merging two attributes, attribute values that are not NumericAttrValues nor can't be directly converted to one are considered to be NumericAttrValues with value 0.
StringAttrValues whose value can be parsed to a double can be converted to a NumericAttrValue.
BooleanAttrValues with value false
can be converted to a NumericAttrValue with value 0.
BooleanAttrValues with value true
can be converted to a NumericAttrValue with value 1.
The response for an UpdateUser request.
A request to delete the information about a user.
the identifier of the user