[NC] Add ServiceControllerRouter constructor for EnableBleV2

Adds a new constructor for the ServiceControllerRouter which overrides
the value of the EnableBleV2 flag in Nearby Connections.

PiperOrigin-RevId: 601236068
This commit is contained in:
hai007
2024-01-24 14:32:00 -08:00
committed by Copybara-Service
parent 0905b2c3e0
commit 2fc575b593
3 changed files with 44 additions and 1 deletions
@@ -19,9 +19,9 @@
#include <string>
#include <utility>
#include "absl/memory/memory.h"
#include "connections/discovery_options.h"
#include "connections/implementation/client_proxy.h"
#include "connections/implementation/flags/nearby_connections_feature_flags.h"
#include "connections/implementation/offline_service_controller.h"
#include "connections/listeners.h"
#include "connections/params.h"
@@ -30,6 +30,7 @@
#include "connections/v3/connection_result.h"
#include "connections/v3/connections_device.h"
#include "connections/v3/listening_result.h"
#include "internal/flags/nearby_flags.h"
#include "internal/platform/logging.h"
// TODO(b/285657711): Add tests for uncovered logic, even if trivial.
@@ -86,6 +87,19 @@ ServiceControllerRouter::ServiceControllerRouter() {
NEARBY_LOGS(INFO) << "ServiceControllerRouter going up.";
}
// Constructor called by the CrOS platform implementation to override the
// kEnableBleV2 flag.
ServiceControllerRouter::ServiceControllerRouter(bool enable_ble_v2)
: ServiceControllerRouter() {
if (NearbyFlags::GetInstance().GetBoolFlag(
config_package_nearby::nearby_connections_feature::kEnableBleV2) !=
enable_ble_v2) {
NearbyFlags::GetInstance().OverrideBoolFlagValue(
config_package_nearby::nearby_connections_feature::kEnableBleV2,
enable_ble_v2);
}
}
ServiceControllerRouter::~ServiceControllerRouter() {
NEARBY_LOGS(INFO) << "ServiceControllerRouter going down.";