package api
- Alphabetic
- Public
- All
Type Members
-
sealed
trait
AttributesMergingStrategy extends AnyRef
A strategy to merge two sets of user attributes.
-
sealed
trait
BasicSingleAttributeMergingStrategy extends SingleAttributeMergingStrategy
A basic strategy to merge two attributes, not taking any period into account.
-
case class
DeleteUser(userId: UserId) extends UserProfileStorageRequest with Product with Serializable
A request to delete the information about a user.
A request to delete the information about a user.
- userId
the identifier of the user
-
case class
DeleteUserAttribute(userId: UserId, attributeName: String) extends UserProfileStorageRequest with Product with Serializable
A request to delete an attribute of a user.
A request to delete an attribute of a user.
- userId
the identifier of the user
- attributeName
the name of the attribute
-
case class
GetIds(userId: UserId) extends UserProfileStorageRequest with Product with Serializable
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
- userId
the id of the user to fetch the set of ids for
-
case class
GetIdsAndData(userId: UserId) extends UserProfileStorageRequest with Product with Serializable
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.
- userId
the id of the user to fetch the set of ids and attributes for
-
case class
GetIdsAndDataResponse(ids: Set[UserId], data: Option[UserData]) extends UserProfileStorageResponse with Product with Serializable
The response for a GetIdsAndData request.
The response for a GetIdsAndData request.
- ids
the set of ids associated with the user
- data
the attributes and computed attributes values associated with the user wrapped in a
Someif the user exists,Noneotherwise.
-
case class
GetIdsResponse(ids: Set[UserId]) extends UserProfileStorageResponse with Product with Serializable
The response for a GetIds request.
-
case class
GetUser(userId: UserId) extends UserProfileStorageRequest with Product with Serializable
A request to retrieve all attributes of a user.
A request to retrieve all attributes of a user.
- userId
the identifier of the user
-
case class
GetUserAttributeResponse(attributeValue: Option[JsValue]) extends UserProfileStorageResponse with Product with Serializable
The response for a GetUserBaseAttribute or a GetUserComputedAttribute request.
The response for a GetUserBaseAttribute or a GetUserComputedAttribute request.
- attributeValue
the attribute value for the requested key wrapped in a
Someif the user and the attribute exists,Noneotherwise
-
case class
GetUserBaseAttribute(userId: UserId, name: String) extends UserProfileStorageRequest with Product with Serializable
A request to retrieve a single base attribute of a user.
A request to retrieve a single base attribute of a user.
- userId
the identifier of the user
- name
the name of the base attribute
-
case class
GetUserComputedAttribute(userId: UserId, name: String) extends UserProfileStorageRequest with Product with Serializable
A request to retrieve a single computed attribute of a user.
A request to retrieve a single computed attribute of a user.
- userId
the identifier of the user
- name
the name of the computed attribute
-
case class
GetUserResponse(data: Option[UserData]) extends UserProfileStorageResponse with Product with Serializable
The response for a GetUser request.
The response for a GetUser request.
- data
the attributes and computed attributes values associated with the user wrapped in a
Someif the user exists,Noneotherwise.
-
case class
LinkUsers(userId1: UserId, userId2: UserId, source: Option[String]) extends UserProfileStorageRequest with Product with Serializable
A request to link the two users.
A request to link the two users.
- userId1
the identifier of the first user
- userId2
the identifier of the second user
- source
an optional source for the link
-
case class
PeriodicSingleAttributeMergingStrategy(period: FiniteDuration, strategy: BasicSingleAttributeMergingStrategy) extends SingleAttributeMergingStrategy with Product with Serializable
A strategy to merge two attributes in the provided period.
-
case class
ResetLinks(source: String) extends UserProfileStorageRequest with Product with Serializable
A request to reset the links of a given source.
A request to reset the links of a given source.
- source
the source to be reset
-
case class
SetMergeStrategy(name: String, mergeStrategy: SingleAttributeMergingStrategy) extends UserProfileStorageRequest with Product with Serializable
A request to set the merge strategy of a given base attribute.
A request to set the merge strategy of a given base attribute.
- name
the name of the base attribute whose merge strategy is to be set
- mergeStrategy
the merge strategy to set for the attribute
-
sealed
trait
SingleAttributeMergingStrategy extends AnyRef
A strategy to merge two attributes.
-
case class
UpdateUser(userId: UserId, attributes: UserAttributes, mergeStrategy: AttributesMergingStrategy) extends UserProfileStorageRequest with Product with Serializable
A request to update the information about a user.
A request to update the information about a user.
- userId
the identifier of the user
- attributes
the attributes to update the user with
- mergeStrategy
the strategy to use when merging the attributes
-
case class
UserAttributes(attributes: Map[String, JsValue]) extends Product with Serializable
The attribute set of a user.
The attribute set of a user.
- attributes
the map from attribute names to values
-
case class
UserData(baseAttributes: UserAttributes, computedAttributes: UserAttributes) extends Product with Serializable
A structure containing all the attributes of a user.
A structure containing all the attributes of a user.
- baseAttributes
the base attribute set of the user
- computedAttributes
the computed attributes of the user
-
case class
UserId(idType: String, id: String) extends Product with Serializable
A fully qualified user identifier.
A fully qualified user identifier.
- idType
the type of identifier
- id
the identifier
-
trait
UserProfileStorageClient extends AnyRef
Interface for clients capable of interacting with the User Profile Storage module by retrieving, updating or deleting information about users.
-
sealed
trait
UserProfileStorageRequest extends AnyRef
A request to be sent to the User Profile Storage module.
-
sealed
trait
UserProfileStorageResponse extends AnyRef
A response from the User Profile Storage module to a UserProfileStorageRequest.
Value Members
-
object
And extends BasicSingleAttributeMergingStrategy with Product with Serializable
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
0are converted to BooleanAttrValues with valuetrue. NumericAttrValues with value equal to0are converted to BooleanAttrValues with valuefalse. StringAttrValues with value"true"are converted to BooleanAttrValues with valuetrue. StringAttrValues with value"false"are converted to BooleanAttrValues with valuefalse. StringAttrValues whose value can be parsed to a Double follow the rules of the NumericAttrValue conversion enumerated above. - object AttributesMergingStrategy
-
object
Concatenate extends BasicSingleAttributeMergingStrategy with Product with Serializable
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.
- object DeleteUser extends Serializable
- object DeleteUserAttribute extends Serializable
-
object
DeleteUserAttributeResponse extends UserProfileStorageResponse with Product with Serializable
The response for a DeleteUserAttribute request.
-
object
DeleteUserResponse extends UserProfileStorageResponse with Product with Serializable
The response for a DeleteUser request.
- object GetIds extends Serializable
- object GetIdsAndData extends Serializable
- object GetIdsAndDataResponse extends Serializable
- object GetIdsResponse extends Serializable
- object GetUser extends Serializable
- object GetUserAttributeResponse extends Serializable
- object GetUserBaseAttribute extends Serializable
- object GetUserComputedAttribute extends Serializable
- object GetUserResponse extends Serializable
- object LinkUsers extends Serializable
-
object
LinkUsersResponse extends UserProfileStorageResponse with Product with Serializable
The response for a LinkUsers request.
-
object
MapMerge extends BasicSingleAttributeMergingStrategy with Product with Serializable
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. -
object
Max extends BasicSingleAttributeMergingStrategy with Product with Serializable
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
falsecan be converted to a NumericAttrValue with value 0. BooleanAttrValues with valuetruecan be converted to a NumericAttrValue with value 1. -
object
MergeMergingStrategy extends AttributesMergingStrategy with Product with Serializable
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)]
-
object
Min extends BasicSingleAttributeMergingStrategy with Product with Serializable
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
falsecan be converted to a NumericAttrValue with value 0. BooleanAttrValues with valuetruecan be converted to a NumericAttrValue with value 1. -
object
MostRecent extends BasicSingleAttributeMergingStrategy with Product with Serializable
Attribute merging strategy that prefers the attribute value of the most recently changed user when merging attributes.
-
object
Older extends BasicSingleAttributeMergingStrategy with Product with Serializable
Attribute merging strategy that prefers the attribute value of the least recently changed user when merging attributes.
-
object
Or extends BasicSingleAttributeMergingStrategy with Product with Serializable
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
0are converted to BooleanAttrValues with valuetrue. NumericAttrValues with value equal to0are converted to BooleanAttrValues with valuefalse. StringAttrValues with value"true"are converted to BooleanAttrValues with valuetrue. StringAttrValues with value"false"are converted to BooleanAttrValues with valuefalse. StringAttrValues whose value can be parsed to a Double follow the rules of the NumericAttrValue conversion enumerated above. -
object
ReplaceMergingStrategy extends AttributesMergingStrategy with Product with Serializable
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)]
- object ResetLinks extends Serializable
-
object
ResetLinksResponse extends UserProfileStorageResponse with Product with Serializable
The response for a ResetLinks request.
- object SetMergeStrategy extends Serializable
-
object
SetMergeStrategyResponse extends UserProfileStorageResponse with Product with Serializable
The response for a SetMergeStrategy request.
- object SingleAttributeMergingStrategy
-
object
Sum extends BasicSingleAttributeMergingStrategy with Product with Serializable
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
falsecan be converted to a NumericAttrValue with value 0. BooleanAttrValues with valuetruecan be converted to a NumericAttrValue with value 1. - object UpdateUser extends Serializable
-
object
UpdateUserResponse extends UserProfileStorageResponse with Product with Serializable
The response for an UpdateUser request.
- object UserAttributes extends Serializable
- object UserData extends Serializable
- object UserId extends Serializable