|
7 | 7 | #include <launchdarkly/value.hpp> |
8 | 8 |
|
9 | 9 | #include <launchdarkly/server_side/all_flags_state.hpp> |
| 10 | +#include <launchdarkly/server_side/big_segment_store_status.hpp> |
10 | 11 | #include <launchdarkly/server_side/data_source_status.hpp> |
11 | 12 |
|
12 | 13 | #include <chrono> |
@@ -277,10 +278,11 @@ class IClient { |
277 | 278 | * @return The variation for the selected context, or default_value if the |
278 | 279 | * flag is disabled in the LaunchDarkly control panel |
279 | 280 | */ |
280 | | - virtual std::string StringVariation(Context const& ctx, |
281 | | - FlagKey const& key, |
282 | | - std::string default_value, |
283 | | - hooks::HookContext const& hook_context) = 0; |
| 281 | + virtual std::string StringVariation( |
| 282 | + Context const& ctx, |
| 283 | + FlagKey const& key, |
| 284 | + std::string default_value, |
| 285 | + hooks::HookContext const& hook_context) = 0; |
284 | 286 |
|
285 | 287 | /** |
286 | 288 | * Returns the string value of a feature flag for a given flag key, in an |
@@ -499,6 +501,14 @@ class IClient { |
499 | 501 | */ |
500 | 502 | virtual IDataSourceStatusProvider& DataSourceStatus() = 0; |
501 | 503 |
|
| 504 | + /** |
| 505 | + * Returns an interface for querying the status of a Big Segment store and |
| 506 | + * subscribing to status changes. If Big Segments are not configured, the |
| 507 | + * provider reports the store as unavailable. |
| 508 | + * @return A Big Segment store status provider. |
| 509 | + */ |
| 510 | + virtual IBigSegmentStoreStatusProvider& BigSegmentStoreStatus() = 0; |
| 511 | + |
502 | 512 | virtual ~IClient() = default; |
503 | 513 | IClient(IClient const& item) = delete; |
504 | 514 | IClient(IClient&& item) = delete; |
@@ -574,10 +584,11 @@ class Client : public IClient { |
574 | 584 | FlagKey const& key, |
575 | 585 | std::string default_value) override; |
576 | 586 |
|
577 | | - std::string StringVariation(Context const& ctx, |
578 | | - FlagKey const& key, |
579 | | - std::string default_value, |
580 | | - hooks::HookContext const& hook_context) override; |
| 587 | + std::string StringVariation( |
| 588 | + Context const& ctx, |
| 589 | + FlagKey const& key, |
| 590 | + std::string default_value, |
| 591 | + hooks::HookContext const& hook_context) override; |
581 | 592 |
|
582 | 593 | EvaluationDetail<std::string> StringVariationDetail( |
583 | 594 | Context const& ctx, |
@@ -650,6 +661,8 @@ class Client : public IClient { |
650 | 661 |
|
651 | 662 | IDataSourceStatusProvider& DataSourceStatus() override; |
652 | 663 |
|
| 664 | + IBigSegmentStoreStatusProvider& BigSegmentStoreStatus() override; |
| 665 | + |
653 | 666 | /** |
654 | 667 | * Returns the version of the SDK. |
655 | 668 | * @return String representing version of the SDK. |
|
0 commit comments