mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-14 22:56:12 -04:00
[Nearby Connections] Rename async scanning flag
Renames the enable_ble_v2_async_scanning_advertising flag to just enable_ble_v2_async_scanning, reflecting that scanning/advertising can be enabled independently. Work required to add async advertising is tracked in b/333408829. PiperOrigin-RevId: 624254277
This commit is contained in:
committed by
Copybara-Service
parent
535538d5d1
commit
05dac6b184
@@ -68,7 +68,7 @@ BleV2::~BleV2() {
|
||||
// Destructor is not taking locks, but methods it is calling are.
|
||||
if (FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising) {
|
||||
.enable_ble_v2_async_scanning) {
|
||||
// If using asynchronous scanning, check the corresponding map.
|
||||
while (!service_ids_to_scanning_sessions_.empty()) {
|
||||
StopScanning(service_ids_to_scanning_sessions_.begin()->first);
|
||||
@@ -361,7 +361,7 @@ bool BleV2::StartScanning(const std::string& service_id, PowerLevel power_level,
|
||||
|
||||
if (FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising) {
|
||||
.enable_ble_v2_async_scanning) {
|
||||
return StartAsyncScanningLocked(service_id, power_level);
|
||||
}
|
||||
|
||||
@@ -438,7 +438,7 @@ bool BleV2::StopScanning(const std::string& service_id) {
|
||||
MutexLock lock(&mutex_);
|
||||
if (FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising) {
|
||||
.enable_ble_v2_async_scanning) {
|
||||
return StopAsyncScanningLocked(service_id);
|
||||
}
|
||||
|
||||
@@ -635,7 +635,7 @@ bool BleV2::IsAdvertisingForLegacyDeviceLocked(
|
||||
bool BleV2::IsScanningLocked(const std::string& service_id) const {
|
||||
if (FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising) {
|
||||
.enable_ble_v2_async_scanning) {
|
||||
// If using asynchronous scanning, check the corresponding map.
|
||||
auto it = service_ids_to_scanning_sessions_.find(service_id);
|
||||
return it != service_ids_to_scanning_sessions_.end();
|
||||
@@ -1039,7 +1039,7 @@ bool BleV2::StartAsyncScanningLocked(absl::string_view service_id,
|
||||
PowerLevel power_level) {
|
||||
CHECK(FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising);
|
||||
.enable_ble_v2_async_scanning);
|
||||
|
||||
// Use the asynchronous StartScanning method instead of the synchronous one.
|
||||
// Note: using FeatureFlags instead of NearbyFlags as there is no Mendel
|
||||
@@ -1129,7 +1129,7 @@ bool BleV2::StartAsyncScanningLocked(absl::string_view service_id,
|
||||
bool BleV2::StopAsyncScanningLocked(absl::string_view service_id) {
|
||||
CHECK(FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.enable_ble_v2_async_scanning_advertising);
|
||||
.enable_ble_v2_async_scanning);
|
||||
// If using asynchronous scanning, check the corresponding map.
|
||||
auto scanning_session = service_ids_to_scanning_sessions_.find(service_id);
|
||||
if (scanning_session == service_ids_to_scanning_sessions_.end()) {
|
||||
|
||||
@@ -581,8 +581,6 @@ TEST_F(BleV2Test, StartScanningDiscoverButNoPeripheralLostAfterStopScanning) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, CanStartAndStopLegacyAdvertising) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BleV2 ble_a{radio_a};
|
||||
@@ -599,8 +597,6 @@ TEST_F(BleV2Test, CanStartAndStopLegacyAdvertising) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, CanNotStartLegacyAdvertisingWhenRadioNotEnabled) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BleV2 ble_a{radio_a};
|
||||
@@ -614,8 +610,6 @@ TEST_F(BleV2Test, CanNotStartLegacyAdvertisingWhenRadioNotEnabled) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, CanNotStopLegacyAdvertisingForNonExistingServiceId) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BleV2 ble_a{radio_a};
|
||||
@@ -673,8 +667,7 @@ TEST_F(BleV2Test, DuplicateStartLegacyAdvertisingReturnsFalse) {
|
||||
|
||||
TEST_F(BleV2Test, HandleLegacyAdvertising) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true,
|
||||
.enable_invoking_legacy_device_discovered_cb = true}});
|
||||
{FeatureFlags{.enable_invoking_legacy_device_discovered_cb = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BluetoothRadio radio_b;
|
||||
@@ -712,8 +705,7 @@ TEST_F(BleV2Test, HandleLegacyAdvertising) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, CanStartAsyncScanning) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BluetoothRadio radio_b;
|
||||
@@ -748,8 +740,7 @@ TEST_F(BleV2Test, CanStartAsyncScanning) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, StartAsyncScanningWithPlatformErrors) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BluetoothRadio radio_b;
|
||||
@@ -804,8 +795,7 @@ TEST_F(BleV2Test, StartAsyncScanningWithPlatformErrors) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, StartAsyncScanningDiscoverAndLostPeripheral) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BluetoothRadio radio_b;
|
||||
@@ -854,8 +844,7 @@ TEST_F(BleV2Test, StartAsyncScanningDiscoverAndLostPeripheral) {
|
||||
|
||||
TEST_F(BleV2Test,
|
||||
StartAsyncScanningDiscoverButNoPeripheralLostAfterStopScanning) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_a;
|
||||
BluetoothRadio radio_b;
|
||||
@@ -902,8 +891,7 @@ TEST_F(BleV2Test,
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, CanStartStopMultipleAsyncScanningWithDifferentServiceIds) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_scanner;
|
||||
BluetoothRadio radio_advertiser_a;
|
||||
@@ -962,8 +950,7 @@ TEST_F(BleV2Test, CanStartStopMultipleAsyncScanningWithDifferentServiceIds) {
|
||||
}
|
||||
|
||||
TEST_F(BleV2Test, StartMultipleAsyncScanningDiscoverAndLostPeripheral) {
|
||||
env_.SetFeatureFlags(
|
||||
{FeatureFlags{.enable_ble_v2_async_scanning_advertising = true}});
|
||||
env_.SetFeatureFlags({FeatureFlags{.enable_ble_v2_async_scanning = true}});
|
||||
env_.Start();
|
||||
BluetoothRadio radio_scanner;
|
||||
BluetoothRadio radio_advertiser_a;
|
||||
|
||||
@@ -98,10 +98,11 @@ ServiceControllerRouter::ServiceControllerRouter(bool enable_ble_v2)
|
||||
NearbyFlags::GetInstance().OverrideBoolFlagValue(
|
||||
config_package_nearby::nearby_connections_feature::kEnableBleV2,
|
||||
enable_ble_v2);
|
||||
// CrOS uses the async methods for Scanning and Advertising, and has
|
||||
// no support for the sync version of those methods.
|
||||
// CrOS uses the async signature for Scanning and has no support for the
|
||||
// sync version.
|
||||
// TODO(b/333408829): Enable async advertising flag once supported.
|
||||
const_cast<FeatureFlags&>(FeatureFlags::GetInstance())
|
||||
.SetFlags({.enable_ble_v2_async_scanning_advertising = true});
|
||||
.SetFlags({.enable_ble_v2_async_scanning = true});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -62,9 +62,10 @@ class FeatureFlags {
|
||||
// requested service id before attempting to connect over rfcomm. SDP fails
|
||||
// on Windows when connecting to FP service id but the rfcomm is successful.
|
||||
bool skip_service_discovery_before_connecting_to_rfcomm = false;
|
||||
// Controls enable or disable the use of async methods for StartScanning,
|
||||
// StopScanning, StartAdvertising, and StopAdvertising for BLE V2.
|
||||
bool enable_ble_v2_async_scanning_advertising = false;
|
||||
// Controls enable or disable the use of async methods for StartScanning
|
||||
// and StopScanning for BLE V2.
|
||||
// TODO(b/333408829): Add flag to control async advertising.
|
||||
bool enable_ble_v2_async_scanning = false;
|
||||
// Enable legacy device discovered callback being used inside ble v2
|
||||
// DiscoverPeripheralTracker flow.
|
||||
bool enable_invoking_legacy_device_discovered_cb = false;
|
||||
|
||||
Reference in New Issue
Block a user