C++ Server-Side SDK
LaunchDarkly SDK
change_notifier.hpp
1 #pragma once
2 
3 #include <launchdarkly/connection.hpp>
4 
5 #include <functional>
6 #include <memory>
7 #include <set>
8 #include <string>
9 
10 namespace launchdarkly::server_side {
11 
17  public:
18  using ChangeSet = std::set<std::string>;
19  using ChangeHandler = std::function<void(std::shared_ptr<ChangeSet>)>;
20 
29  virtual std::unique_ptr<IConnection> OnFlagChange(
30  ChangeHandler handler) = 0;
31 
32  virtual ~IChangeNotifier() = default;
33  IChangeNotifier(IChangeNotifier const& item) = delete;
34  IChangeNotifier(IChangeNotifier&& item) = delete;
35  IChangeNotifier& operator=(IChangeNotifier const&) = delete;
36  IChangeNotifier& operator=(IChangeNotifier&&) = delete;
37 
38  protected:
39  IChangeNotifier() = default;
40 };
41 
42 } // namespace launchdarkly::server_side
Definition: change_notifier.hpp:16
virtual std::unique_ptr< IConnection > OnFlagChange(ChangeHandler handler)=0