View Source Unleash.Propagation.Serialization (Unleash v3.0.0)
Module handling the (de)serialization of Unleash objects for propagation.
See Unleash.Propagation.
Summary
Functions
Serializes context for further propagation to downstream services.
Serializes overrides for further propagation to downstream services.
Functions
@spec deserialize_context(binary()) :: {:ok, Unleash.context()} | {:error, Unleash.Propagation.Serialization.ContextDeserializationError.t()}
@spec deserialize_context!(binary()) :: Unleash.context()
@spec deserialize_impressions(binary()) :: {:ok, [Unleash.impression()]} | {:error, Unleash.Propagation.Serialization.ImpressionsDeserializationError.t()}
@spec deserialize_impressions!(binary()) :: [Unleash.impression()]
@spec deserialize_overrides(binary()) :: {:ok, Unleash.context()} | {:error, Unleash.Propagation.Serialization.OverridesDeserializationError.t()}
@spec deserialize_overrides!(binary()) :: Unleash.overrides()
@spec serialize_context!(Unleash.context()) :: String.t()
Serializes context for further propagation to downstream services.
Note that only propagation-friendly context fields are serialized.
@spec serialize_impressions!([Unleash.impression()]) :: String.t()
@spec serialize_overrides!(Unleash.overrides()) :: String.t()
Serializes overrides for further propagation to downstream services.