public class OptimizelyUserContext
extends java.lang.Object
| Constructor and Description |
|---|
OptimizelyUserContext(Optimizely optimizely,
java.lang.String userId) |
OptimizelyUserContext(Optimizely optimizely,
java.lang.String userId,
java.util.Map<java.lang.String,?> attributes) |
OptimizelyUserContext(Optimizely optimizely,
java.lang.String userId,
java.util.Map<java.lang.String,?> attributes,
java.util.Map<java.lang.String,OptimizelyForcedDecision> forcedDecisionsMap,
java.util.List<java.lang.String> qualifiedSegments) |
OptimizelyUserContext(Optimizely optimizely,
java.lang.String userId,
java.util.Map<java.lang.String,?> attributes,
java.util.Map<java.lang.String,OptimizelyForcedDecision> forcedDecisionsMap,
java.util.List<java.lang.String> qualifiedSegments,
java.lang.Boolean shouldIdentifyUser) |
| Modifier and Type | Method and Description |
|---|---|
OptimizelyUserContext |
copy() |
OptimizelyDecision |
decide(java.lang.String key)
Returns a decision result (
OptimizelyDecision) for a given flag key and a user context, which contains all data required to deliver the flag. |
OptimizelyDecision |
decide(java.lang.String key,
java.util.List<OptimizelyDecideOption> options)
Returns a decision result (
OptimizelyDecision) for a given flag key and a user context, which contains all data required to deliver the flag. |
java.util.Map<java.lang.String,OptimizelyDecision> |
decideAll()
Returns a key-map of decision results (
OptimizelyDecision) for all active flag keys. |
java.util.Map<java.lang.String,OptimizelyDecision> |
decideAll(java.util.List<OptimizelyDecideOption> options)
Returns a key-map of decision results (
OptimizelyDecision) for all active flag keys. |
java.util.Map<java.lang.String,OptimizelyDecision> |
decideForKeys(java.util.List<java.lang.String> keys)
Returns a key-map of decision results for multiple flag keys and a user context.
|
java.util.Map<java.lang.String,OptimizelyDecision> |
decideForKeys(java.util.List<java.lang.String> keys,
java.util.List<OptimizelyDecideOption> options)
Returns a key-map of decision results (
OptimizelyDecision) for multiple flag keys and a user context. |
boolean |
equals(java.lang.Object obj) |
java.lang.Boolean |
fetchQualifiedSegments()
Fetch all qualified segments for the user context.
|
java.lang.Boolean |
fetchQualifiedSegments(java.util.List<ODPSegmentOption> segmentOptions)
Fetch all qualified segments for the user context.
|
void |
fetchQualifiedSegments(ODPSegmentCallback callback)
Fetch all qualified segments for the user context in a non-blocking manner.
|
void |
fetchQualifiedSegments(ODPSegmentCallback callback,
java.util.List<ODPSegmentOption> segmentOptions)
Fetch all qualified segments for the user context in a non-blocking manner.
|
OptimizelyForcedDecision |
findForcedDecision(OptimizelyDecisionContext optimizelyDecisionContext)
Finds a forced decision
|
java.util.Map<java.lang.String,java.lang.Object> |
getAttributes() |
OptimizelyForcedDecision |
getForcedDecision(OptimizelyDecisionContext optimizelyDecisionContext)
Get a forced decision
|
Optimizely |
getOptimizely() |
java.util.List<java.lang.String> |
getQualifiedSegments() |
java.lang.String |
getUserId() |
int |
hashCode() |
boolean |
isQualifiedFor(java.lang.String segment)
Returns true if the user is qualified for the given segment name
|
boolean |
removeAllForcedDecisions()
Remove all forced decisions
|
boolean |
removeForcedDecision(OptimizelyDecisionContext optimizelyDecisionContext)
Remove a forced decision
|
void |
setAttribute(java.lang.String key,
java.lang.Object value)
Set an attribute for a given key.
|
java.lang.Boolean |
setForcedDecision(OptimizelyDecisionContext optimizelyDecisionContext,
OptimizelyForcedDecision optimizelyForcedDecision)
Set a forced decision
|
void |
setQualifiedSegments(java.util.List<java.lang.String> qualifiedSegments) |
java.lang.String |
toString() |
void |
trackEvent(java.lang.String eventName)
Track an event.
|
void |
trackEvent(java.lang.String eventName,
java.util.Map<java.lang.String,?> eventTags)
Track an event.
|
public OptimizelyUserContext(@Nonnull
Optimizely optimizely,
@Nonnull
java.lang.String userId,
@Nonnull
java.util.Map<java.lang.String,?> attributes)
public OptimizelyUserContext(@Nonnull
Optimizely optimizely,
@Nonnull
java.lang.String userId,
@Nonnull
java.util.Map<java.lang.String,?> attributes,
@Nullable
java.util.Map<java.lang.String,OptimizelyForcedDecision> forcedDecisionsMap,
@Nullable
java.util.List<java.lang.String> qualifiedSegments)
public OptimizelyUserContext(@Nonnull
Optimizely optimizely,
@Nonnull
java.lang.String userId,
@Nonnull
java.util.Map<java.lang.String,?> attributes,
@Nullable
java.util.Map<java.lang.String,OptimizelyForcedDecision> forcedDecisionsMap,
@Nullable
java.util.List<java.lang.String> qualifiedSegments,
@Nullable
java.lang.Boolean shouldIdentifyUser)
public OptimizelyUserContext(@Nonnull
Optimizely optimizely,
@Nonnull
java.lang.String userId)
public java.lang.String getUserId()
public java.util.Map<java.lang.String,java.lang.Object> getAttributes()
public Optimizely getOptimizely()
public OptimizelyUserContext copy()
public boolean isQualifiedFor(@Nonnull
java.lang.String segment)
segment - A String segment key which will be checked in the qualified segments list that if it exists then user is qualified.public void setAttribute(@Nonnull
java.lang.String key,
@Nullable
java.lang.Object value)
key - An attribute keyvalue - An attribute valuepublic OptimizelyDecision decide(@Nonnull java.lang.String key, @Nonnull java.util.List<OptimizelyDecideOption> options)
OptimizelyDecision) for a given flag key and a user context, which contains all data required to deliver the flag.
key - A flag key for which a decision will be made.options - A list of options for decision-making.public OptimizelyDecision decide(@Nonnull java.lang.String key)
OptimizelyDecision) for a given flag key and a user context, which contains all data required to deliver the flag.key - A flag key for which a decision will be made.public java.util.Map<java.lang.String,OptimizelyDecision> decideForKeys(@Nonnull java.util.List<java.lang.String> keys, @Nonnull java.util.List<OptimizelyDecideOption> options)
OptimizelyDecision) for multiple flag keys and a user context.
keys - A list of flag keys for which decisions will be made.options - A list of options for decision-making.public java.util.Map<java.lang.String,OptimizelyDecision> decideForKeys(@Nonnull java.util.List<java.lang.String> keys)
keys - A list of flag keys for which decisions will be made.public java.util.Map<java.lang.String,OptimizelyDecision> decideAll(@Nonnull java.util.List<OptimizelyDecideOption> options)
OptimizelyDecision) for all active flag keys.options - A list of options for decision-making.public java.util.Map<java.lang.String,OptimizelyDecision> decideAll()
OptimizelyDecision) for all active flag keys.public void trackEvent(@Nonnull
java.lang.String eventName,
@Nonnull
java.util.Map<java.lang.String,?> eventTags)
throws UnknownEventTypeException
eventName - The event name.eventTags - A map of event tag names to event tag values.UnknownEventTypeException - when event type is unknownpublic void trackEvent(@Nonnull
java.lang.String eventName)
throws UnknownEventTypeException
eventName - The event name.UnknownEventTypeException - when event type is unknownpublic java.lang.Boolean setForcedDecision(@Nonnull
OptimizelyDecisionContext optimizelyDecisionContext,
@Nonnull
OptimizelyForcedDecision optimizelyForcedDecision)
optimizelyDecisionContext - The OptimizelyDecisionContext containing flagKey and ruleKeyoptimizelyForcedDecision - The OptimizelyForcedDecision containing the variationKey@Nullable public OptimizelyForcedDecision getForcedDecision(@Nonnull OptimizelyDecisionContext optimizelyDecisionContext)
optimizelyDecisionContext - The OptimizelyDecisionContext containing flagKey and ruleKey@Nullable public OptimizelyForcedDecision findForcedDecision(@Nonnull OptimizelyDecisionContext optimizelyDecisionContext)
optimizelyDecisionContext - The OptimizelyDecisionContext containing flagKey and ruleKeypublic boolean removeForcedDecision(@Nonnull
OptimizelyDecisionContext optimizelyDecisionContext)
optimizelyDecisionContext - The OptimizelyDecisionContext containing flagKey and ruleKeypublic boolean removeAllForcedDecisions()
public java.util.List<java.lang.String> getQualifiedSegments()
public void setQualifiedSegments(java.util.List<java.lang.String> qualifiedSegments)
public java.lang.Boolean fetchQualifiedSegments()
The segments fetched will be saved and can be accessed at any time by calling getQualifiedSegments().
public java.lang.Boolean fetchQualifiedSegments(@Nonnull
java.util.List<ODPSegmentOption> segmentOptions)
The segments fetched will be saved and can be accessed at any time by calling getQualifiedSegments().
segmentOptions - A set of options for fetching qualified segments.public void fetchQualifiedSegments(ODPSegmentCallback callback, java.util.List<ODPSegmentOption> segmentOptions)
The segments fetched will be saved and can be accessed at any time by calling getQualifiedSegments().
callback - A callback to invoke when results are available.segmentOptions - A set of options for fetching qualified segments.public void fetchQualifiedSegments(ODPSegmentCallback callback)
The segments fetched will be saved and can be accessed at any time by calling getQualifiedSegments().
callback - A callback to invoke when results are available.public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Object