launchdarkly_dart_common library

Classes

ApplicationInfo
Application metadata may be used by LaunchDarkly analytics or other product features.
AsyncSingleQueue<TTaskReturn>
A queue, with a depth of 1, which allows for pending async actions to be replaced.
AttributeReference
An attribute name or path expression identifying a value within an LDContext.
CommonDefaultConfig
ConcreteEnvReporter
CustomEvent
CustomEventSerialization
DefaultEventProcessor
DeviceInfo
DiagnosticConfigData
DiagnosticId
DiagnosticInitEvent
DiagnosticPlatformData
DiagnosticSdkData
DiagnosticsManager
DiagnosticStatsEvent
EnvironmentReport
EnvironmentReporter
An EnvironmentReporter is able to report various attributes of the environment in which the application is running. If a property is null, it means the reporter was unable to determine the value.
EvalEvent
EvalEventSerialization
EventProcessor
FlagCounter
FlagSummary
HttpClient
HttpClient which automatically handles io/web differences.
HttpProperties
IdentifyEvent
IdentifyEventSerialization
LDAttributesBuilder
A builder for constructing LDContextAttributes.
LDBasicLogPrinter
Basic log printer which will output all messages using print.
LDContext
A collection of attributes that can be referenced in flag evaluations and analytics events. A LDContext may contain information about a single context or multiple contexts differentiated by the "kind" attribute.
LDContextAttributes
Collection of attributes for a LDContext
LDContextBuilder
A builder to facilitate the creation of LDContexts. Note that the return type of kind is a LDAttributesBuilder that is used to define attributes for the specific kind of context you are creating.
LDContextSerialization
LDEvaluationDetail<T>
Class returned by the "variation detail" methods such as LDClient.boolVariationDetail, combining the result of the evaluation with an explanation of how it was calculated.
LDEvaluationDetailSerialization
LDEvaluationReason
Describes the reason that a flag evaluation produced a particular value.
LDEvaluationReasonSerialization
LDEvaluationResult
This type represents the "Flag" model for client-side SDKs. It is common because server-side SDKs can generate data which is used by client-side SDKs for bootstrapping. So client-side SDKs consume this model and server-side SDKs produce it.
LDEvaluationResultSerialization
LDEvaluationResultsSerialization
LDLogAdapter
Interface used by log printers for use with the SDK. A custom implementation can be used to adapt the SDK log output to a logging framework of your choice.
LDLogger
Logging implementation used by the SDK. A default constructed logger will enable the LDLogLevel.info level and will output messages using the LDBasicLogPrinter.
LDLogRecord
Represents a log entry from LDLogger. It can be used with an LDLogAdapter to control logging output from the SDK.
LDValue
An immutable instance of any data type that is allowed in JSON.
LDValueArrayBuilder
Builder for constructing an LDValueType.array typed LDValue.
LDValueObjectBuilder
Builder for constructing an LDValueType.object typed LDValue.
LDValueSerialization
On a major version change removing LDValueSerialization, and directly using fromDynamic and toDynamic, should be considered.
OsInfo
PrioritizedEnvReportBuilder
Creates an EnvironmentReport that returns data from the provided config layer if available, otherwise falling back to the platform layer. Note is is possible to get data for, say, application info from one layer and then get device info from another layer.
ServiceEndpoints
Specifies the base service URLs used by SDK components.
SummaryEvent
SummaryEventSerialization
TaskComplete<TTaskReturn>
TaskError<TTaskReturn>
TaskResult<TTaskReturn>
TaskShed<TTaskReturn>

Enums

LDErrorKind
Enumerated type defining the defined error cases for an LDEvaluationReason with the kind LDKind.error.
LDKind
Enumerated type defining the possible reasons for a flag evaluation result, used in LDEvaluationReason.
LDLogLevel
Logging levels that can be used with LDLogger. Set the log level to one of these values when constructing a LDLogger to control level of log messages are enabled. Going from lowest importance (and most verbose) to most importance, the levels are: LDLogLevel.debug, LDLogLevel.info, LDLogLevel.warn, and LDLogLevel.error. You can also specify 'none' instead to disable all logging.
LDValueType
Describes the type of an LDValue. These correspond to the standard types in JSON.
RequestMethod
Http requests methods supported by the HTTP client.

Extensions

Headers on ApplicationInfo
Creates header map from application info, omitting any properties that are missing.
IterableAsync on Iterable<TItem>
IterableWhere on Iterable<T>
ListComparisons on List<T>
Compare the contents of two lists using those items equality comparisons. This does not recursively apply this operation to lists/maps within the array. Items will be compared using ==/!=, so nested/lists maps will use reference comparison.
MapComparisons on Map<K, V>
Compare the contents of two maps using those items equality comparisons. This does not recursively apply this operation to lists/maps within the map. Items will be compared using ==/!=, so nested lists/maps will use reference comparison.

Functions

appendPath(String base, String path) String
Appends a path to a URL or existing url+path. The path should start with a '/'. If the base includes a trailing '/', then it will be removed.
durationGreaterThanZeroWithDefault(Duration? value, Duration defaultValue) Duration
If value is null, or <=0, then return the default value.
durationWithMin(Duration defaultDuration, Duration? desired, Duration min) Duration
If the desired value is null, or less than min, then return the default.
isHttpGloballyRecoverable(num status) bool
Check if the HTTP error is recoverable. This will return false if a request made with any payload could not recover. If the reason for the failure is payload specific, for instance a payload that is too large, then it could recover with a different payload.
isHttpLocallyRecoverable(num status) bool
Returns true if the status could recover for a different payload.
urlSafeSha256Hash(String input) String
Hashes the input, base64 encodes result, then sanitizes it for URL usage.