C++ Server-Side SDK
LaunchDarkly SDK
Public Member Functions | List of all members
launchdarkly::server_side::data_interfaces::IFDv2Synchronizer Class Referenceabstract

#include <ifdv2_synchronizer.hpp>

Inheritance diagram for launchdarkly::server_side::data_interfaces::IFDv2Synchronizer:
Inheritance graph
[legend]

Public Member Functions

virtual async::Future< FDv2SourceResultNext (data_model::Selector selector)=0
 
virtual void Close ()=0
 
virtual std::string const & Identity () const =0
 
 IFDv2Synchronizer (IFDv2Synchronizer const &)=delete
 
 IFDv2Synchronizer (IFDv2Synchronizer &&)=delete
 
IFDv2Synchronizeroperator= (IFDv2Synchronizer const &)=delete
 
IFDv2Synchronizeroperator= (IFDv2Synchronizer &&)=delete
 

Detailed Description

Defines a continuous data source that produces a stream of results. Used during the synchronization phase of FDv2, after initialization is complete.

The stream is started lazily on the first call to Next(). The synchronizer runs until Close() is called.

Member Function Documentation

◆ Close()

virtual void launchdarkly::server_side::data_interfaces::IFDv2Synchronizer::Close ( )
pure virtual

◆ Identity()

virtual std::string const& launchdarkly::server_side::data_interfaces::IFDv2Synchronizer::Identity ( ) const
pure virtual

◆ Next()

virtual async::Future<FDv2SourceResult> launchdarkly::server_side::data_interfaces::IFDv2Synchronizer::Next ( data_model::Selector  selector)
pure virtual

Returns a Future that resolves with the next result once it is available.

On the first call, the synchronizer starts its underlying connection. Subsequent calls continue reading from the same connection.

Close() may be called from another thread to unblock Next(), in which case the future resolves with FDv2SourceResult::Shutdown.

Parameters
selectorThe selector to send with the request, reflecting any changesets applied since the previous call.

Implemented in launchdarkly::server_side::data_systems::FDv2StreamingSynchronizer, launchdarkly::server_side::data_systems::FDv2PollingSynchronizer, and launchdarkly::server_side::data_systems::FDv1AdapterSynchronizer.


The documentation for this class was generated from the following file: