Modifier and Type | Method and Description |
---|---|
java.util.Map<java.lang.String,com.google.gson.JsonElement> |
allFlags(LDUser user)
Deprecated.
Use
allFlagsState(com.launchdarkly.client.LDUser, com.launchdarkly.client.FlagsStateOption...) instead. Current versions of the client-side SDK will not
generate analytics events correctly if you pass the result of allFlags() . |
FeatureFlagsState |
allFlagsState(LDUser user,
FlagsStateOption... options)
Returns an object that encapsulates the state of all feature flags for a given user, including the flag
values and also metadata that can be used on the front end.
|
boolean |
boolVariation(java.lang.String featureKey,
LDUser user,
boolean defaultValue)
Calculates the value of a feature flag for a given user.
|
EvaluationDetail<java.lang.Boolean> |
boolVariationDetail(java.lang.String featureKey,
LDUser user,
boolean defaultValue)
Calculates the value of a feature flag for a given user, and returns an object that describes the
way the value was determined.
|
void |
close()
Closes the LaunchDarkly client event processing thread.
|
java.lang.Double |
doubleVariation(java.lang.String featureKey,
LDUser user,
java.lang.Double defaultValue)
Calculates the floating point numeric value of a feature flag for a given user.
|
EvaluationDetail<java.lang.Double> |
doubleVariationDetail(java.lang.String featureKey,
LDUser user,
double defaultValue)
Calculates the value of a feature flag for a given user, and returns an object that describes the
way the value was determined.
|
void |
flush()
Flushes all pending events.
|
void |
identify(LDUser user)
Registers the user.
|
boolean |
initialized()
Tests whether the client is ready to be used.
|
java.lang.Integer |
intVariation(java.lang.String featureKey,
LDUser user,
int defaultValue)
Calculates the integer value of a feature flag for a given user.
|
EvaluationDetail<java.lang.Integer> |
intVariationDetail(java.lang.String featureKey,
LDUser user,
int defaultValue)
Calculates the value of a feature flag for a given user, and returns an object that describes the
way the value was determined.
|
boolean |
isFlagKnown(java.lang.String featureKey)
Returns true if the specified feature flag currently exists.
|
boolean |
isOffline()
Returns true if the client is in offline mode.
|
LDValue |
jsonValueVariation(java.lang.String featureKey,
LDUser user,
LDValue defaultValue)
Calculates the
LDValue value of a feature flag for a given user. |
EvaluationDetail<LDValue> |
jsonValueVariationDetail(java.lang.String featureKey,
LDUser user,
LDValue defaultValue)
Calculates the
LDValue value of a feature flag for a given user. |
com.google.gson.JsonElement |
jsonVariation(java.lang.String featureKey,
LDUser user,
com.google.gson.JsonElement defaultValue)
Deprecated.
Use
jsonValueVariation(String, LDUser, LDValue) . Gson types may be removed
from the public API in the future. |
EvaluationDetail<com.google.gson.JsonElement> |
jsonVariationDetail(java.lang.String featureKey,
LDUser user,
com.google.gson.JsonElement defaultValue)
Deprecated.
Use
jsonValueVariationDetail(String, LDUser, LDValue) . Gson types may be removed
from the public API in the future. |
java.lang.String |
secureModeHash(LDUser user)
For more info: https://github.com/launchdarkly/js-client#secure-mode
|
java.lang.String |
stringVariation(java.lang.String featureKey,
LDUser user,
java.lang.String defaultValue)
Calculates the String value of a feature flag for a given user.
|
EvaluationDetail<java.lang.String> |
stringVariationDetail(java.lang.String featureKey,
LDUser user,
java.lang.String defaultValue)
Calculates the value of a feature flag for a given user, and returns an object that describes the
way the value was determined.
|
void |
track(java.lang.String eventName,
LDUser user)
Tracks that a user performed an event.
|
void |
track(java.lang.String eventName,
LDUser user,
com.google.gson.JsonElement data)
Deprecated.
|
void |
track(java.lang.String eventName,
LDUser user,
com.google.gson.JsonElement data,
double metricValue)
Deprecated.
|
void |
trackData(java.lang.String eventName,
LDUser user,
LDValue data)
Tracks that a user performed an event, and provides additional custom data.
|
void |
trackMetric(java.lang.String eventName,
LDUser user,
LDValue data,
double metricValue)
Tracks that a user performed an event, and provides an additional numeric value for custom metrics.
|
java.lang.String |
version()
The current version string of the SDK.
|
boolean initialized()
void track(java.lang.String eventName, LDUser user)
To add custom data to the event, use trackData(String, LDUser, LDValue)
.
eventName
- the name of the eventuser
- the user that performed the event@Deprecated void track(java.lang.String eventName, LDUser user, com.google.gson.JsonElement data)
trackData(String, LDUser, LDValue)
.eventName
- the name of the eventuser
- the user that performed the eventdata
- a JSON object containing additional data associated with the event; may be nullvoid trackData(java.lang.String eventName, LDUser user, LDValue data)
eventName
- the name of the eventuser
- the user that performed the eventdata
- an LDValue
containing additional data associated with the event@Deprecated void track(java.lang.String eventName, LDUser user, com.google.gson.JsonElement data, double metricValue)
trackMetric(String, LDUser, LDValue, double)
.
As of this version’s release date, the LaunchDarkly service does not support the metricValue
parameter. As a result, calling this overload of track
will not yet produce any different
behavior from calling track(String, LDUser, JsonElement)
without a metricValue
.
Refer to the SDK reference guide for the latest status.
eventName
- the name of the eventuser
- the user that performed the eventdata
- a JSON object containing additional data associated with the event; may be nullmetricValue
- a numeric value used by the LaunchDarkly experimentation feature in numeric custom
metrics. Can be omitted if this event is used by only non-numeric metrics. This field will also be
returned as part of the custom event for Data Export.void trackMetric(java.lang.String eventName, LDUser user, LDValue data, double metricValue)
As of this version’s release date, the LaunchDarkly service does not support the metricValue
parameter. As a result, calling this overload of track
will not yet produce any different
behavior from calling trackData(String, LDUser, LDValue)
without a metricValue
.
Refer to the SDK reference guide for the latest status.
eventName
- the name of the eventuser
- the user that performed the eventdata
- an LDValue
containing additional data associated with the event; if not applicable,
you may pass either null
or LDValue.ofNull()
metricValue
- a numeric value used by the LaunchDarkly experimentation feature in numeric custom
metrics. Can be omitted if this event is used by only non-numeric metrics. This field will also be
returned as part of the custom event for Data Export.void identify(LDUser user)
user
- the user to register@Deprecated java.util.Map<java.lang.String,com.google.gson.JsonElement> allFlags(LDUser user)
allFlagsState(com.launchdarkly.client.LDUser, com.launchdarkly.client.FlagsStateOption...)
instead. Current versions of the client-side SDK will not
generate analytics events correctly if you pass the result of allFlags()
.JsonElement
feature flag values for a given user.
If the result of a flag's evaluation would have returned the default variation, it will have a null entry
in the map. If the client is offline, has not been initialized, or a null user or user with null/empty user key a null
map will be returned.
This method will not send analytics events back to LaunchDarkly.
The most common use case for this method is to bootstrap a set of client-side feature flags from a back-end service.
user
- the end user requesting the feature flagsJsonElement
for the specified userFeatureFlagsState allFlagsState(LDUser user, FlagsStateOption... options)
The most common use case for this method is to bootstrap a set of client-side feature flags from a back-end service.
user
- the end user requesting the feature flagsoptions
- optional FlagsStateOption
values affecting how the state is computed - for
instance, to filter the set of flags to only include the client-side-enabled onesFeatureFlagsState
object (will never be null; see FeatureFlagsState.isValid()
boolean boolVariation(java.lang.String featureKey, LDUser user, boolean defaultValue)
featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control paneljava.lang.Integer intVariation(java.lang.String featureKey, LDUser user, int defaultValue)
If the flag variation has a numeric value that is not an integer, it is rounded toward zero (truncated).
featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control paneljava.lang.Double doubleVariation(java.lang.String featureKey, LDUser user, java.lang.Double defaultValue)
featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control paneljava.lang.String stringVariation(java.lang.String featureKey, LDUser user, java.lang.String defaultValue)
featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control panel@Deprecated com.google.gson.JsonElement jsonVariation(java.lang.String featureKey, LDUser user, com.google.gson.JsonElement defaultValue)
jsonValueVariation(String, LDUser, LDValue)
. Gson types may be removed
from the public API in the future.JsonElement
value of a feature flag for a given user.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control panelLDValue jsonValueVariation(java.lang.String featureKey, LDUser user, LDValue defaultValue)
LDValue
value of a feature flag for a given user.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagdefaultValue
if the flag is disabled in the LaunchDarkly control panel;
will never be a null reference, but may be LDValue.ofNull()
EvaluationDetail<java.lang.Boolean> boolVariationDetail(java.lang.String featureKey, LDUser user, boolean defaultValue)
reason
property in the result will also be included in
analytics events, if you are capturing detailed event data for this flag.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
objectEvaluationDetail<java.lang.Integer> intVariationDetail(java.lang.String featureKey, LDUser user, int defaultValue)
reason
property in the result will also be included in
analytics events, if you are capturing detailed event data for this flag.
If the flag variation has a numeric value that is not an integer, it is rounded toward zero (truncated).
featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
objectEvaluationDetail<java.lang.Double> doubleVariationDetail(java.lang.String featureKey, LDUser user, double defaultValue)
reason
property in the result will also be included in
analytics events, if you are capturing detailed event data for this flag.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
objectEvaluationDetail<java.lang.String> stringVariationDetail(java.lang.String featureKey, LDUser user, java.lang.String defaultValue)
reason
property in the result will also be included in
analytics events, if you are capturing detailed event data for this flag.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
object@Deprecated EvaluationDetail<com.google.gson.JsonElement> jsonVariationDetail(java.lang.String featureKey, LDUser user, com.google.gson.JsonElement defaultValue)
jsonValueVariationDetail(String, LDUser, LDValue)
. Gson types may be removed
from the public API in the future.reason
property in the result will also be included in
analytics events, if you are capturing detailed event data for this flag.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
objectEvaluationDetail<LDValue> jsonValueVariationDetail(java.lang.String featureKey, LDUser user, LDValue defaultValue)
LDValue
value of a feature flag for a given user.featureKey
- the unique key for the feature flaguser
- the end user requesting the flagdefaultValue
- the default value of the flagEvaluationDetail
objectboolean isFlagKnown(java.lang.String featureKey)
featureKey
- the unique key for the feature flagvoid close() throws java.io.IOException
close
in interface java.lang.AutoCloseable
close
in interface java.io.Closeable
java.io.IOException
- if an exception is thrown by one of the underlying network servicesvoid flush()
boolean isOffline()
java.lang.String secureModeHash(LDUser user)
user
- the user to be hashed along with the SDK keyjava.lang.String version()