Loading framework/java/android/bluetooth/BluetoothAdapter.java +15 −21 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.Manifest.permission.BLUETOOTH_SCAN; import static android.Manifest.permission.LOCAL_MAC_ADDRESS; import static android.Manifest.permission.MODIFY_PHONE_STATE; import static android.bluetooth.BluetoothStatusCodes.FEATURE_NOT_SUPPORTED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import static java.util.Objects.requireNonNull; Loading Loading @@ -937,7 +939,8 @@ public final class BluetoothAdapter { for (Pair<OnMetadataChangedListener, Executor> pair : list) { OnMetadataChangedListener listener = pair.first; Executor executor = pair.second; executor.execute( executeFromBinder( executor, () -> { listener.onMetadataChanged(device, key, value); }); Loading Loading @@ -1016,18 +1019,13 @@ public final class BluetoothAdapter { mExecutor = null; mCallback = null; } final long identity = Binder.clearCallingIdentity(); try { if (info == null) { executor.execute( () -> callback.onBluetoothActivityEnergyInfoError( BluetoothStatusCodes.FEATURE_NOT_SUPPORTED)); executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoError(FEATURE_NOT_SUPPORTED)); } else { executor.execute(() -> callback.onBluetoothActivityEnergyInfoAvailable(info)); } } finally { Binder.restoreCallingIdentity(identity); executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoAvailable(info)); } } Loading @@ -1045,12 +1043,8 @@ public final class BluetoothAdapter { mExecutor = null; mCallback = null; } final long identity = Binder.clearCallingIdentity(); try { executor.execute(() -> callback.onBluetoothActivityEnergyInfoError(errorCode)); } finally { Binder.restoreCallingIdentity(identity); } executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoError(errorCode)); } } Loading Loading @@ -3969,11 +3963,11 @@ public final class BluetoothAdapter { } public void onOobData(@Transport int transport, @NonNull OobData oobData) { mExecutor.execute(() -> mCallback.onOobData(transport, oobData)); executeFromBinder(mExecutor, () -> mCallback.onOobData(transport, oobData)); } public void onError(@OobError int errorCode) { mExecutor.execute(() -> mCallback.onError(errorCode)); executeFromBinder(mExecutor, () -> mCallback.onError(errorCode)); } } Loading framework/java/android/bluetooth/BluetoothCsipSetCoordinator.java +3 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.CallbackExecutor; import android.annotation.IntDef; Loading Loading @@ -105,7 +106,8 @@ public final class BluetoothCsipSetCoordinator implements BluetoothProfile, Auto @Override @RequiresNoPermission public void onGroupLockSet(int groupId, int opStatus, boolean isLocked) { mExecutor.execute(() -> mCallback.onGroupLockSet(groupId, opStatus, isLocked)); executeFromBinder( mExecutor, () -> mCallback.onGroupLockSet(groupId, opStatus, isLocked)); } } ; Loading framework/java/android/bluetooth/BluetoothHidDevice.java +9 −42 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.NonNull; import android.annotation.RequiresNoPermission; Loading Loading @@ -368,78 +369,44 @@ public final class BluetoothHidDevice implements BluetoothProfile { @Override public void onAppStatusChanged(BluetoothDevice pluggedDevice, boolean registered) { Attributable.setAttributionSource(pluggedDevice, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onAppStatusChanged(pluggedDevice, registered)); } finally { restoreCallingIdentity(token); } executeFromBinder( mExecutor, () -> mCallback.onAppStatusChanged(pluggedDevice, registered)); } @Override public void onConnectionStateChanged(BluetoothDevice device, int state) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onConnectionStateChanged(device, state)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onConnectionStateChanged(device, state)); } @Override public void onGetReport(BluetoothDevice device, byte type, byte id, int bufferSize) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onGetReport(device, type, id, bufferSize)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onGetReport(device, type, id, bufferSize)); } @Override public void onSetReport(BluetoothDevice device, byte type, byte id, byte[] data) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onSetReport(device, type, id, data)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onSetReport(device, type, id, data)); } @Override public void onSetProtocol(BluetoothDevice device, byte protocol) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onSetProtocol(device, protocol)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onSetProtocol(device, protocol)); } @Override public void onInterruptData(BluetoothDevice device, byte reportId, byte[] data) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onInterruptData(device, reportId, data)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onInterruptData(device, reportId, data)); } @Override public void onVirtualCableUnplug(BluetoothDevice device) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onVirtualCableUnplug(device)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onVirtualCableUnplug(device)); } } Loading framework/java/android/bluetooth/BluetoothLeCallControl.java +9 −37 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.IntDef; import android.annotation.NonNull; Loading @@ -29,7 +30,6 @@ import android.annotation.SuppressLint; import android.bluetooth.annotations.RequiresBluetoothConnectPermission; import android.content.AttributionSource; import android.content.Context; import android.os.Binder; import android.os.IBinder; import android.os.ParcelUuid; import android.os.RemoteException; Loading Loading @@ -306,52 +306,29 @@ public final class BluetoothLeCallControl implements BluetoothProfile { @Override public void onAcceptCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onAcceptCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onAcceptCall(requestId, uuid.getUuid())); } @Override public void onTerminateCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onTerminateCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder( mExecutor, () -> mCallback.onTerminateCall(requestId, uuid.getUuid())); } @Override public void onHoldCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onHoldCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onHoldCall(requestId, uuid.getUuid())); } @Override public void onUnholdCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onUnholdCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onUnholdCall(requestId, uuid.getUuid())); } @Override public void onPlaceCall(int requestId, ParcelUuid uuid, String uri) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onPlaceCall(requestId, uuid.getUuid(), uri)); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder( mExecutor, () -> mCallback.onPlaceCall(requestId, uuid.getUuid(), uri)); } @Override Loading @@ -361,12 +338,7 @@ public final class BluetoothLeCallControl implements BluetoothProfile { uuids.add(parcelUuid.getUuid()); } final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onJoinCalls(requestId, uuids)); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onJoinCalls(requestId, uuids)); } } ; Loading framework/java/android/bluetooth/BluetoothPan.java +3 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.Manifest.permission.TETHER_PRIVILEGED; import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.IntDef; import android.annotation.NonNull; Loading Loading @@ -552,13 +553,13 @@ public final class BluetoothPan implements BluetoothProfile { @Override @RequiresNoPermission public void onAvailable(String iface) { executor.execute(() -> callback.onAvailable(iface)); executeFromBinder(executor, () -> callback.onAvailable(iface)); } @Override @RequiresNoPermission public void onUnavailable() { executor.execute(() -> callback.onUnavailable()); executeFromBinder(executor, () -> callback.onUnavailable()); } }; try { Loading Loading
framework/java/android/bluetooth/BluetoothAdapter.java +15 −21 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.Manifest.permission.BLUETOOTH_SCAN; import static android.Manifest.permission.LOCAL_MAC_ADDRESS; import static android.Manifest.permission.MODIFY_PHONE_STATE; import static android.bluetooth.BluetoothStatusCodes.FEATURE_NOT_SUPPORTED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import static java.util.Objects.requireNonNull; Loading Loading @@ -937,7 +939,8 @@ public final class BluetoothAdapter { for (Pair<OnMetadataChangedListener, Executor> pair : list) { OnMetadataChangedListener listener = pair.first; Executor executor = pair.second; executor.execute( executeFromBinder( executor, () -> { listener.onMetadataChanged(device, key, value); }); Loading Loading @@ -1016,18 +1019,13 @@ public final class BluetoothAdapter { mExecutor = null; mCallback = null; } final long identity = Binder.clearCallingIdentity(); try { if (info == null) { executor.execute( () -> callback.onBluetoothActivityEnergyInfoError( BluetoothStatusCodes.FEATURE_NOT_SUPPORTED)); executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoError(FEATURE_NOT_SUPPORTED)); } else { executor.execute(() -> callback.onBluetoothActivityEnergyInfoAvailable(info)); } } finally { Binder.restoreCallingIdentity(identity); executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoAvailable(info)); } } Loading @@ -1045,12 +1043,8 @@ public final class BluetoothAdapter { mExecutor = null; mCallback = null; } final long identity = Binder.clearCallingIdentity(); try { executor.execute(() -> callback.onBluetoothActivityEnergyInfoError(errorCode)); } finally { Binder.restoreCallingIdentity(identity); } executeFromBinder( executor, () -> callback.onBluetoothActivityEnergyInfoError(errorCode)); } } Loading Loading @@ -3969,11 +3963,11 @@ public final class BluetoothAdapter { } public void onOobData(@Transport int transport, @NonNull OobData oobData) { mExecutor.execute(() -> mCallback.onOobData(transport, oobData)); executeFromBinder(mExecutor, () -> mCallback.onOobData(transport, oobData)); } public void onError(@OobError int errorCode) { mExecutor.execute(() -> mCallback.onError(errorCode)); executeFromBinder(mExecutor, () -> mCallback.onError(errorCode)); } } Loading
framework/java/android/bluetooth/BluetoothCsipSetCoordinator.java +3 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.CallbackExecutor; import android.annotation.IntDef; Loading Loading @@ -105,7 +106,8 @@ public final class BluetoothCsipSetCoordinator implements BluetoothProfile, Auto @Override @RequiresNoPermission public void onGroupLockSet(int groupId, int opStatus, boolean isLocked) { mExecutor.execute(() -> mCallback.onGroupLockSet(groupId, opStatus, isLocked)); executeFromBinder( mExecutor, () -> mCallback.onGroupLockSet(groupId, opStatus, isLocked)); } } ; Loading
framework/java/android/bluetooth/BluetoothHidDevice.java +9 −42 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.NonNull; import android.annotation.RequiresNoPermission; Loading Loading @@ -368,78 +369,44 @@ public final class BluetoothHidDevice implements BluetoothProfile { @Override public void onAppStatusChanged(BluetoothDevice pluggedDevice, boolean registered) { Attributable.setAttributionSource(pluggedDevice, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onAppStatusChanged(pluggedDevice, registered)); } finally { restoreCallingIdentity(token); } executeFromBinder( mExecutor, () -> mCallback.onAppStatusChanged(pluggedDevice, registered)); } @Override public void onConnectionStateChanged(BluetoothDevice device, int state) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onConnectionStateChanged(device, state)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onConnectionStateChanged(device, state)); } @Override public void onGetReport(BluetoothDevice device, byte type, byte id, int bufferSize) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onGetReport(device, type, id, bufferSize)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onGetReport(device, type, id, bufferSize)); } @Override public void onSetReport(BluetoothDevice device, byte type, byte id, byte[] data) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onSetReport(device, type, id, data)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onSetReport(device, type, id, data)); } @Override public void onSetProtocol(BluetoothDevice device, byte protocol) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onSetProtocol(device, protocol)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onSetProtocol(device, protocol)); } @Override public void onInterruptData(BluetoothDevice device, byte reportId, byte[] data) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onInterruptData(device, reportId, data)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onInterruptData(device, reportId, data)); } @Override public void onVirtualCableUnplug(BluetoothDevice device) { Attributable.setAttributionSource(device, mAttributionSource); final long token = clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onVirtualCableUnplug(device)); } finally { restoreCallingIdentity(token); } executeFromBinder(mExecutor, () -> mCallback.onVirtualCableUnplug(device)); } } Loading
framework/java/android/bluetooth/BluetoothLeCallControl.java +9 −37 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.bluetooth; import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.IntDef; import android.annotation.NonNull; Loading @@ -29,7 +30,6 @@ import android.annotation.SuppressLint; import android.bluetooth.annotations.RequiresBluetoothConnectPermission; import android.content.AttributionSource; import android.content.Context; import android.os.Binder; import android.os.IBinder; import android.os.ParcelUuid; import android.os.RemoteException; Loading Loading @@ -306,52 +306,29 @@ public final class BluetoothLeCallControl implements BluetoothProfile { @Override public void onAcceptCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onAcceptCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onAcceptCall(requestId, uuid.getUuid())); } @Override public void onTerminateCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onTerminateCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder( mExecutor, () -> mCallback.onTerminateCall(requestId, uuid.getUuid())); } @Override public void onHoldCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onHoldCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onHoldCall(requestId, uuid.getUuid())); } @Override public void onUnholdCall(int requestId, ParcelUuid uuid) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onUnholdCall(requestId, uuid.getUuid())); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onUnholdCall(requestId, uuid.getUuid())); } @Override public void onPlaceCall(int requestId, ParcelUuid uuid, String uri) { final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onPlaceCall(requestId, uuid.getUuid(), uri)); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder( mExecutor, () -> mCallback.onPlaceCall(requestId, uuid.getUuid(), uri)); } @Override Loading @@ -361,12 +338,7 @@ public final class BluetoothLeCallControl implements BluetoothProfile { uuids.add(parcelUuid.getUuid()); } final long identityToken = Binder.clearCallingIdentity(); try { mExecutor.execute(() -> mCallback.onJoinCalls(requestId, uuids)); } finally { Binder.restoreCallingIdentity(identityToken); } executeFromBinder(mExecutor, () -> mCallback.onJoinCalls(requestId, uuids)); } } ; Loading
framework/java/android/bluetooth/BluetoothPan.java +3 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static android.Manifest.permission.BLUETOOTH_CONNECT; import static android.Manifest.permission.BLUETOOTH_PRIVILEGED; import static android.Manifest.permission.TETHER_PRIVILEGED; import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; import static android.bluetooth.BluetoothUtils.executeFromBinder; import android.annotation.IntDef; import android.annotation.NonNull; Loading Loading @@ -552,13 +553,13 @@ public final class BluetoothPan implements BluetoothProfile { @Override @RequiresNoPermission public void onAvailable(String iface) { executor.execute(() -> callback.onAvailable(iface)); executeFromBinder(executor, () -> callback.onAvailable(iface)); } @Override @RequiresNoPermission public void onUnavailable() { executor.execute(() -> callback.onUnavailable()); executeFromBinder(executor, () -> callback.onUnavailable()); } }; try { Loading