3#include <launchdarkly/server_side/integrations/data_reader/iserialized_item_kind.hpp>
4#include <launchdarkly/server_side/integrations/data_reader/serialized_item_descriptor.hpp>
10namespace launchdarkly::server_side::data_interfaces {
69 using Key = std::string;
72 using Keyed = std::pair<Key, T>;
74 using OrderedNamepace =
75 std::vector<Keyed<integrations::SerializedItemDescriptor>>;
77 using ItemCollection =
78 std::pair<integrations::ISerializedItemKind const&, OrderedNamepace>;
97 std::vector<ItemCollection> sdk_data_set) = 0;
129 std::string
const& key,
135 [[nodiscard]]
virtual std::string
const&
Identity()
const = 0;
This interface is used for persisting data to databases, or any other component that can store featur...
Definition iserialized_destination.hpp:37
virtual std::string const & Identity() const =0
UpsertResult
Definition iserialized_destination.hpp:51
virtual InitResult Init(std::vector< ItemCollection > sdk_data_set)=0
Overwrites the Destination's contents with a set of items for each collection. All previous data shou...
InitResult
Definition iserialized_destination.hpp:39
virtual UpsertResult Upsert(integrations::ISerializedItemKind const &kind, std::string const &key, integrations::SerializedItemDescriptor item)=0
Upserts a single item (update if exist, insert if not.)
Represents the kind of a serialized item. The purpose of this interface is to allow for determining a...
Definition iserialized_item_kind.hpp:14
Definition serialized_item_descriptor.hpp:12