From bcbc504255c5b3ddd91e78c13cfd2f593aa42351 Mon Sep 17 00:00:00 2001 From: William Escande Date: Thu, 6 Mar 2025 00:57:19 -0800 Subject: 25Q1 flag removal: get_state_from_system_server Bug: 362569584 Fix: 362569584 Flag: com.android.bluetooth.flags.get_state_from_system_server Test: m com.android.bt Change-Id: I0156a3a4f7f60e4c1c44cb9245c52946e21f568c --- .../java/android/bluetooth/BluetoothAdapter.java | 66 +--------------------- 1 file changed, 2 insertions(+), 64 deletions(-) (limited to 'framework/java') diff --git a/framework/java/android/bluetooth/BluetoothAdapter.java b/framework/java/android/bluetooth/BluetoothAdapter.java index ac53cfdff8..7e1ee7ed0e 100644 --- a/framework/java/android/bluetooth/BluetoothAdapter.java +++ b/framework/java/android/bluetooth/BluetoothAdapter.java @@ -1435,25 +1435,6 @@ public final class BluetoothAdapter { IpcDataCache.invalidateCache(IpcDataCache.MODULE_BLUETOOTH, api); } - private static final IpcDataCache.QueryHandler sBluetoothGetStateQuery = - new IpcDataCache.QueryHandler<>() { - @RequiresLegacyBluetoothPermission - @RequiresNoPermission - @Override - public @InternalAdapterState Integer apply(IBluetooth serviceQuery) { - try { - return serviceQuery.getState(); - } catch (RemoteException e) { - throw e.rethrowAsRuntimeException(); - } - } - @RequiresNoPermission - @Override - public boolean shouldBypassCache(IBluetooth serviceQuery) { - return false; - } - }; - private static final IpcDataCache.QueryHandler sBluetoothGetSystemStateQuery = new IpcDataCache.QueryHandler<>() { @RequiresNoPermission @@ -1478,14 +1459,9 @@ public final class BluetoothAdapter { } }; - private static final String GET_STATE_API = "BluetoothAdapter_getState"; - /** @hide */ public static final String GET_SYSTEM_STATE_API = IBluetoothManager.GET_SYSTEM_STATE_API; - private static final IpcDataCache sBluetoothGetStateCache = - new BluetoothCache<>(GET_STATE_API, sBluetoothGetStateQuery); - private static final IpcDataCache sBluetoothGetSystemStateCache = new IpcDataCache<>( 1, @@ -1494,44 +1470,6 @@ public final class BluetoothAdapter { GET_SYSTEM_STATE_API, sBluetoothGetSystemStateQuery); - /** @hide */ - @RequiresNoPermission - public void disableBluetoothGetStateCache() { - if (Flags.getStateFromSystemServer()) { - throw new IllegalStateException("getStateFromSystemServer is enabled"); - } - sBluetoothGetStateCache.disableForCurrentProcess(); - } - - /** @hide */ - public static void invalidateBluetoothGetStateCache() { - if (Flags.getStateFromSystemServer()) { - throw new IllegalStateException("getStateFromSystemServer is enabled"); - } - invalidateCache(GET_STATE_API); - } - - /** Fetch the current bluetooth state. If the service is down, return OFF. */ - private @InternalAdapterState int getStateInternal() { - if (Flags.getStateFromSystemServer()) { - return sBluetoothGetSystemStateCache.query(null); - } - mServiceLock.readLock().lock(); - try { - if (mService != null) { - return sBluetoothGetStateCache.query(mService); - } - } catch (RuntimeException e) { - if (!(e.getCause() instanceof RemoteException)) { - throw e; - } - Log.e(TAG, e.toString() + "\n" + Log.getStackTraceString(new Throwable())); - } finally { - mServiceLock.readLock().unlock(); - } - return STATE_OFF; - } - /** * Get the current state of the local Bluetooth adapter. * @@ -1543,7 +1481,7 @@ public final class BluetoothAdapter { @RequiresLegacyBluetoothPermission @RequiresNoPermission public @AdapterState int getState() { - int state = getStateInternal(); + int state = sBluetoothGetSystemStateCache.query(null); // Consider all internal states as OFF if (state == BluetoothAdapter.STATE_BLE_ON @@ -1584,7 +1522,7 @@ public final class BluetoothAdapter { "Use {@link #getState()} instead to determine " + "whether you can use BLE & BT classic.") public @InternalAdapterState int getLeState() { - int state = getStateInternal(); + int state = sBluetoothGetSystemStateCache.query(null); if (VDBG) { Log.d(TAG, "getLeState() returning " + BluetoothAdapter.nameForState(state)); -- cgit v1.2.3-59-g8ed1b