From 5467b904812bfe30651334826a0bdbfd1b868c1d Mon Sep 17 00:00:00 2001 From: Etienne Ruffieux Date: Wed, 22 Jun 2022 13:54:25 -0700 Subject: Reuse SynchronousResultReceivers instead of creating new. Bug: 217366135 Tag: #feature Test: manual Ignore-AOSP-First: to be chery-picked Change-Id: If8ae530a284151888a3f89a51d2c58f2a5cd3644 (cherry picked from commit 02dcbe72b3564559eaa9c2e2714824e4aac6f18c) Merged-In: If8ae530a284151888a3f89a51d2c58f2a5cd3644 --- framework/java/android/bluetooth/BluetoothMap.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'framework/java/android/bluetooth/BluetoothMap.java') diff --git a/framework/java/android/bluetooth/BluetoothMap.java b/framework/java/android/bluetooth/BluetoothMap.java index a8b48348da..2d4bc568ca 100644 --- a/framework/java/android/bluetooth/BluetoothMap.java +++ b/framework/java/android/bluetooth/BluetoothMap.java @@ -154,7 +154,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { if (DBG) log(Log.getStackTraceString(new Throwable())); } else if (isEnabled()) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); service.getState(mAttributionSource, recv); return recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue); } catch (RemoteException | TimeoutException e) { @@ -184,7 +184,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { } else if (isEnabled()) { try { final SynchronousResultReceiver recv = - new SynchronousResultReceiver(); + SynchronousResultReceiver.get(); service.getClient(mAttributionSource, recv); return Attributable.setAttributionSource( recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue), @@ -214,7 +214,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { if (DBG) log(Log.getStackTraceString(new Throwable())); } else if (isEnabled() && isValidDevice(device)) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); service.isConnected(device, mAttributionSource, recv); return recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue); } catch (RemoteException | TimeoutException e) { @@ -256,7 +256,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { if (DBG) log(Log.getStackTraceString(new Throwable())); } else if (isEnabled() && isValidDevice(device)) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); service.disconnect(device, mAttributionSource, recv); return recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue); } catch (RemoteException | TimeoutException e) { @@ -312,7 +312,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { } else if (isEnabled()) { try { final SynchronousResultReceiver> recv = - new SynchronousResultReceiver(); + SynchronousResultReceiver.get(); service.getConnectedDevices(mAttributionSource, recv); return Attributable.setAttributionSource( recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue), @@ -343,7 +343,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { } else if (isEnabled()) { try { final SynchronousResultReceiver> recv = - new SynchronousResultReceiver(); + SynchronousResultReceiver.get(); service.getDevicesMatchingConnectionStates(states, mAttributionSource, recv); return Attributable.setAttributionSource( recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue), @@ -393,7 +393,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { log("getConnectionState(" + pairQuery.second.getAnonymizedAddress() + ") uncached"); } - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); try { pairQuery.first .getConnectionState(pairQuery.second, mAttributionSource, recv); @@ -490,7 +490,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { && (connectionPolicy == BluetoothProfile.CONNECTION_POLICY_FORBIDDEN || connectionPolicy == BluetoothProfile.CONNECTION_POLICY_ALLOWED)) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); service.setConnectionPolicy(device, connectionPolicy, mAttributionSource, recv); return recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue); } catch (RemoteException | TimeoutException e) { @@ -546,7 +546,7 @@ public final class BluetoothMap implements BluetoothProfile, AutoCloseable { if (DBG) log(Log.getStackTraceString(new Throwable())); } else if (isEnabled() && isValidDevice(device)) { try { - final SynchronousResultReceiver recv = new SynchronousResultReceiver(); + final SynchronousResultReceiver recv = SynchronousResultReceiver.get(); service.getConnectionPolicy(device, mAttributionSource, recv); return recv.awaitResultNoInterrupt(getSyncTimeout()).getValue(defaultValue); } catch (RemoteException | TimeoutException e) { -- cgit v1.2.3