Loading android/app/src/com/android/bluetooth/gatt/GattObjectsFactory.java +2 −5 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.util.Log; import com.android.bluetooth.Utils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.le_scan.PeriodicScanManager; import com.android.bluetooth.le_scan.ScanManager; import com.android.bluetooth.le_scan.ScanNativeInterface; Loading Loading @@ -86,10 +85,8 @@ public class GattObjectsFactory { GattService service, AdapterService adapterService, BluetoothAdapterProxy bluetoothAdapterProxy, Looper looper, FeatureFlags featureFlags) { return new ScanManager( service, adapterService, bluetoothAdapterProxy, looper, featureFlags); Looper looper) { return new ScanManager(service, adapterService, bluetoothAdapterProxy, looper); } public PeriodicScanManager createPeriodicScanManager(AdapterService adapterService) { Loading android/app/src/com/android/bluetooth/gatt/GattService.java +1 −9 Original line number Diff line number Diff line Loading @@ -93,8 +93,6 @@ import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.btservice.CompanionManager; import com.android.bluetooth.btservice.MetricsLogger; import com.android.bluetooth.btservice.ProfileService; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.flags.FeatureFlagsImpl; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.le_scan.AppScanStats; import com.android.bluetooth.le_scan.PeriodicScanManager; Loading Loading @@ -288,7 +286,6 @@ public class GattService extends ProfileService { */ private final HashMap<String, Integer> mPermits = new HashMap<>(); private FeatureFlags mFeatureFlags; private AdapterService mAdapterService; private BluetoothAdapterProxy mBluetoothAdapterProxy; AdvertiseManager mAdvertiseManager; Loading Loading @@ -353,7 +350,6 @@ public class GattService extends ProfileService { mNativeInterface = GattObjectsFactory.getInstance().getNativeInterface(); mNativeInterface.init(this); mAdapterService = AdapterService.getAdapterService(); mFeatureFlags = new FeatureFlagsImpl(); mBluetoothAdapterProxy = BluetoothAdapterProxy.getInstance(); mCompanionManager = getSystemService(CompanionDeviceManager.class); mAppOps = getSystemService(AppOpsManager.class); Loading @@ -369,11 +365,7 @@ public class GattService extends ProfileService { mScanManager = GattObjectsFactory.getInstance() .createScanManager( this, mAdapterService, mBluetoothAdapterProxy, thread.getLooper(), mFeatureFlags); this, mAdapterService, mBluetoothAdapterProxy, thread.getLooper()); mPeriodicScanManager = GattObjectsFactory.getInstance() .createPeriodicScanManager(mAdapterService); Loading android/app/src/com/android/bluetooth/le_scan/ScanManager.java +3 −6 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ import android.view.Display; import com.android.bluetooth.Utils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.gatt.FilterParams; import com.android.bluetooth.gatt.GattObjectsFactory; import com.android.bluetooth.gatt.GattService; Loading Loading @@ -123,7 +123,6 @@ public class ScanManager { @GuardedBy("mCurUsedTrackableAdvertisementsLock") private int mCurUsedTrackableAdvertisements = 0; private final FeatureFlags mFeatureFlags; private final GattService mService; private final AdapterService mAdapterService; private BroadcastReceiver mBatchAlarmReceiver; Loading Loading @@ -168,8 +167,7 @@ public class ScanManager { GattService service, AdapterService adapterService, BluetoothAdapterProxy bluetoothAdapterProxy, Looper looper, FeatureFlags featureFlags) { Looper looper) { mRegularScanClients = Collections.newSetFromMap(new ConcurrentHashMap<ScanClient, Boolean>()); mBatchClients = Collections.newSetFromMap(new ConcurrentHashMap<ScanClient, Boolean>()); Loading @@ -178,7 +176,6 @@ public class ScanManager { mService = service; mAdapterService = adapterService; mScanNative = new ScanNative(); mFeatureFlags = featureFlags; mDm = mService.getSystemService(DisplayManager.class); mActivityManager = mService.getSystemService(ActivityManager.class); mLocationManager = mAdapterService.getSystemService(LocationManager.class); Loading Loading @@ -455,7 +452,7 @@ public class ScanManager { Message msg = obtainMessage(MSG_SCAN_TIMEOUT); msg.obj = client; // Only one timeout message should exist at any time if (mFeatureFlags.scanTimeoutReset()) { if (Flags.scanTimeoutReset()) { removeMessages(MSG_SCAN_TIMEOUT, client); } sendMessageDelayed(msg, mAdapterService.getScanTimeoutMillis()); Loading android/app/tests/unit/src/com/android/bluetooth/gatt/GattServiceTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -134,7 +134,7 @@ public class GattServiceTest { GattObjectsFactory.setInstanceForTesting(mFactory); doReturn(mNativeInterface).when(mFactory).getNativeInterface(); doReturn(mScanManager).when(mFactory).createScanManager(any(), any(), any(), any(), any()); doReturn(mScanManager).when(mFactory).createScanManager(any(), any(), any(), any()); doReturn(mPeriodicScanManager).when(mFactory).createPeriodicScanManager(any()); doReturn(mDistanceMeasurementManager).when(mFactory) .createDistanceMeasurementManager(any()); Loading android/app/tests/unit/src/com/android/bluetooth/le_scan/ScanManagerTest.java +6 −7 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.test.TestLooper; import android.platform.test.flag.junit.SetFlagsRule; import android.provider.Settings; import android.test.mock.MockContentProvider; import android.test.mock.MockContentResolver; Loading @@ -68,12 +69,10 @@ import com.android.bluetooth.TestUtils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.btservice.MetricsLogger; import com.android.bluetooth.flags.FakeFeatureFlagsImpl; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.gatt.GattNativeInterface; import com.android.bluetooth.gatt.GattObjectsFactory; import com.android.bluetooth.gatt.GattService; import com.android.bluetooth.le_scan.ScanClient; import com.android.internal.app.IBatteryStats; import org.junit.After; Loading Loading @@ -122,8 +121,9 @@ public class ScanManagerTest { final BatteryStatsManager mBatteryStatsManager = new BatteryStatsManager(mock(IBatteryStats.class)); private FakeFeatureFlagsImpl mFakeFlagsImpl; @Rule public final ServiceTestRule mServiceRule = new ServiceTestRule(); @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Mock private AdapterService mAdapterService; @Mock private GattService mMockGattService; @Mock private BluetoothAdapterProxy mBluetoothAdapterProxy; Loading Loading @@ -190,8 +190,6 @@ public class ScanManagerTest { doReturn(mTargetContext.getUser()).when(mMockGattService).getUser(); doReturn(mTargetContext.getPackageName()).when(mMockGattService).getPackageName(); mFakeFlagsImpl = new FakeFeatureFlagsImpl(); mFakeFlagsImpl.setFlag(Flags.FLAG_SCAN_TIMEOUT_RESET, true); mTestLooper = new TestLooper(); mTestLooper.startAutoDispatch(); mScanManager = Loading @@ -199,8 +197,7 @@ public class ScanManagerTest { mMockGattService, mAdapterService, mBluetoothAdapterProxy, mTestLooper.getLooper(), mFakeFlagsImpl); mTestLooper.getLooper()); mHandler = mScanManager.getClientHandler(); assertThat(mHandler).isNotNull(); Loading Loading @@ -648,6 +645,8 @@ public class ScanManagerTest { @Test public void testScanTimeoutResetForNewScan() { mSetFlagsRule.enableFlags(Flags.FLAG_SCAN_TIMEOUT_RESET); mTestLooper.stopAutoDispatchAndIgnoreExceptions(); // Set filtered scan flag final boolean isFiltered = false; Loading Loading
android/app/src/com/android/bluetooth/gatt/GattObjectsFactory.java +2 −5 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.util.Log; import com.android.bluetooth.Utils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.le_scan.PeriodicScanManager; import com.android.bluetooth.le_scan.ScanManager; import com.android.bluetooth.le_scan.ScanNativeInterface; Loading Loading @@ -86,10 +85,8 @@ public class GattObjectsFactory { GattService service, AdapterService adapterService, BluetoothAdapterProxy bluetoothAdapterProxy, Looper looper, FeatureFlags featureFlags) { return new ScanManager( service, adapterService, bluetoothAdapterProxy, looper, featureFlags); Looper looper) { return new ScanManager(service, adapterService, bluetoothAdapterProxy, looper); } public PeriodicScanManager createPeriodicScanManager(AdapterService adapterService) { Loading
android/app/src/com/android/bluetooth/gatt/GattService.java +1 −9 Original line number Diff line number Diff line Loading @@ -93,8 +93,6 @@ import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.btservice.CompanionManager; import com.android.bluetooth.btservice.MetricsLogger; import com.android.bluetooth.btservice.ProfileService; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.flags.FeatureFlagsImpl; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.le_scan.AppScanStats; import com.android.bluetooth.le_scan.PeriodicScanManager; Loading Loading @@ -288,7 +286,6 @@ public class GattService extends ProfileService { */ private final HashMap<String, Integer> mPermits = new HashMap<>(); private FeatureFlags mFeatureFlags; private AdapterService mAdapterService; private BluetoothAdapterProxy mBluetoothAdapterProxy; AdvertiseManager mAdvertiseManager; Loading Loading @@ -353,7 +350,6 @@ public class GattService extends ProfileService { mNativeInterface = GattObjectsFactory.getInstance().getNativeInterface(); mNativeInterface.init(this); mAdapterService = AdapterService.getAdapterService(); mFeatureFlags = new FeatureFlagsImpl(); mBluetoothAdapterProxy = BluetoothAdapterProxy.getInstance(); mCompanionManager = getSystemService(CompanionDeviceManager.class); mAppOps = getSystemService(AppOpsManager.class); Loading @@ -369,11 +365,7 @@ public class GattService extends ProfileService { mScanManager = GattObjectsFactory.getInstance() .createScanManager( this, mAdapterService, mBluetoothAdapterProxy, thread.getLooper(), mFeatureFlags); this, mAdapterService, mBluetoothAdapterProxy, thread.getLooper()); mPeriodicScanManager = GattObjectsFactory.getInstance() .createPeriodicScanManager(mAdapterService); Loading
android/app/src/com/android/bluetooth/le_scan/ScanManager.java +3 −6 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ import android.view.Display; import com.android.bluetooth.Utils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.flags.FeatureFlags; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.gatt.FilterParams; import com.android.bluetooth.gatt.GattObjectsFactory; import com.android.bluetooth.gatt.GattService; Loading Loading @@ -123,7 +123,6 @@ public class ScanManager { @GuardedBy("mCurUsedTrackableAdvertisementsLock") private int mCurUsedTrackableAdvertisements = 0; private final FeatureFlags mFeatureFlags; private final GattService mService; private final AdapterService mAdapterService; private BroadcastReceiver mBatchAlarmReceiver; Loading Loading @@ -168,8 +167,7 @@ public class ScanManager { GattService service, AdapterService adapterService, BluetoothAdapterProxy bluetoothAdapterProxy, Looper looper, FeatureFlags featureFlags) { Looper looper) { mRegularScanClients = Collections.newSetFromMap(new ConcurrentHashMap<ScanClient, Boolean>()); mBatchClients = Collections.newSetFromMap(new ConcurrentHashMap<ScanClient, Boolean>()); Loading @@ -178,7 +176,6 @@ public class ScanManager { mService = service; mAdapterService = adapterService; mScanNative = new ScanNative(); mFeatureFlags = featureFlags; mDm = mService.getSystemService(DisplayManager.class); mActivityManager = mService.getSystemService(ActivityManager.class); mLocationManager = mAdapterService.getSystemService(LocationManager.class); Loading Loading @@ -455,7 +452,7 @@ public class ScanManager { Message msg = obtainMessage(MSG_SCAN_TIMEOUT); msg.obj = client; // Only one timeout message should exist at any time if (mFeatureFlags.scanTimeoutReset()) { if (Flags.scanTimeoutReset()) { removeMessages(MSG_SCAN_TIMEOUT, client); } sendMessageDelayed(msg, mAdapterService.getScanTimeoutMillis()); Loading
android/app/tests/unit/src/com/android/bluetooth/gatt/GattServiceTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -134,7 +134,7 @@ public class GattServiceTest { GattObjectsFactory.setInstanceForTesting(mFactory); doReturn(mNativeInterface).when(mFactory).getNativeInterface(); doReturn(mScanManager).when(mFactory).createScanManager(any(), any(), any(), any(), any()); doReturn(mScanManager).when(mFactory).createScanManager(any(), any(), any(), any()); doReturn(mPeriodicScanManager).when(mFactory).createPeriodicScanManager(any()); doReturn(mDistanceMeasurementManager).when(mFactory) .createDistanceMeasurementManager(any()); Loading
android/app/tests/unit/src/com/android/bluetooth/le_scan/ScanManagerTest.java +6 −7 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.test.TestLooper; import android.platform.test.flag.junit.SetFlagsRule; import android.provider.Settings; import android.test.mock.MockContentProvider; import android.test.mock.MockContentResolver; Loading @@ -68,12 +69,10 @@ import com.android.bluetooth.TestUtils; import com.android.bluetooth.btservice.AdapterService; import com.android.bluetooth.btservice.BluetoothAdapterProxy; import com.android.bluetooth.btservice.MetricsLogger; import com.android.bluetooth.flags.FakeFeatureFlagsImpl; import com.android.bluetooth.flags.Flags; import com.android.bluetooth.gatt.GattNativeInterface; import com.android.bluetooth.gatt.GattObjectsFactory; import com.android.bluetooth.gatt.GattService; import com.android.bluetooth.le_scan.ScanClient; import com.android.internal.app.IBatteryStats; import org.junit.After; Loading Loading @@ -122,8 +121,9 @@ public class ScanManagerTest { final BatteryStatsManager mBatteryStatsManager = new BatteryStatsManager(mock(IBatteryStats.class)); private FakeFeatureFlagsImpl mFakeFlagsImpl; @Rule public final ServiceTestRule mServiceRule = new ServiceTestRule(); @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Mock private AdapterService mAdapterService; @Mock private GattService mMockGattService; @Mock private BluetoothAdapterProxy mBluetoothAdapterProxy; Loading Loading @@ -190,8 +190,6 @@ public class ScanManagerTest { doReturn(mTargetContext.getUser()).when(mMockGattService).getUser(); doReturn(mTargetContext.getPackageName()).when(mMockGattService).getPackageName(); mFakeFlagsImpl = new FakeFeatureFlagsImpl(); mFakeFlagsImpl.setFlag(Flags.FLAG_SCAN_TIMEOUT_RESET, true); mTestLooper = new TestLooper(); mTestLooper.startAutoDispatch(); mScanManager = Loading @@ -199,8 +197,7 @@ public class ScanManagerTest { mMockGattService, mAdapterService, mBluetoothAdapterProxy, mTestLooper.getLooper(), mFakeFlagsImpl); mTestLooper.getLooper()); mHandler = mScanManager.getClientHandler(); assertThat(mHandler).isNotNull(); Loading Loading @@ -648,6 +645,8 @@ public class ScanManagerTest { @Test public void testScanTimeoutResetForNewScan() { mSetFlagsRule.enableFlags(Flags.FLAG_SCAN_TIMEOUT_RESET); mTestLooper.stopAutoDispatchAndIgnoreExceptions(); // Set filtered scan flag final boolean isFiltered = false; Loading