diff options
author | Łukasz Rymanowski <rlukasz@google.com> | 2022-03-08 13:56:53 +0000 |
---|---|---|
committer | Łukasz Rymanowski <rlukasz@google.com> | 2022-03-09 14:46:07 +0000 |
commit | 3e428a58c691834cd39dade2b9e6f74b36c4cfe7 (patch) | |
tree | c04ef0f7193a2f4b41b825212ff8ce64947d2ccc /framework/java/android/bluetooth/BluetoothLeBroadcast.java | |
parent | e1a823ea973ce5d277398f8034200c4d81d64faf (diff) |
BluetoothLeAudio: Fix null parameters check
Bug: 218799288
Test: Compile
Change-Id: I6ee06113b82d0ade755b3373a25ffe78859afd63
Diffstat (limited to 'framework/java/android/bluetooth/BluetoothLeBroadcast.java')
-rw-r--r-- | framework/java/android/bluetooth/BluetoothLeBroadcast.java | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/framework/java/android/bluetooth/BluetoothLeBroadcast.java b/framework/java/android/bluetooth/BluetoothLeBroadcast.java index 5bf6e00fea..003f9a5c1a 100644 --- a/framework/java/android/bluetooth/BluetoothLeBroadcast.java +++ b/framework/java/android/bluetooth/BluetoothLeBroadcast.java @@ -41,6 +41,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.concurrent.Executor; import java.util.concurrent.TimeoutException; @@ -402,14 +403,16 @@ public final class BluetoothLeBroadcast implements AutoCloseable, BluetoothProfi /** * Register a {@link Callback} that will be invoked during the operation of this profile. * - * Repeated registration of the same <var>callback</var> object will have no effect after - * the first call to this method, even when the <var>executor</var> is different. API caller - * would have to call {@link #unregisterCallback(Callback)} with - * the same callback object before registering it again. + * Repeated registration of the same <var>callback</var> object after the first call to this + * method will result with IllegalArgumentException being thrown, even when the + * <var>executor</var> is different. API caller would have to call + * {@link #unregisterCallback(Callback)} with the same callback object before registering it + * again. * * @param executor an {@link Executor} to execute given callback * @param callback user implementation of the {@link Callback} - * @throws IllegalArgumentException if a null executor, sink, or callback is given + * @throws NullPointerException if a null executor, or callback is given, or + * IllegalArgumentException if the same <var>callback<var> is already registered. * @hide */ @SystemApi @@ -420,12 +423,8 @@ public final class BluetoothLeBroadcast implements AutoCloseable, BluetoothProfi }) public void registerCallback(@NonNull @CallbackExecutor Executor executor, @NonNull Callback callback) { - if (executor == null) { - throw new IllegalArgumentException("executor cannot be null"); - } - if (callback == null) { - throw new IllegalArgumentException("callback cannot be null"); - } + Objects.requireNonNull(executor, "executor cannot be null"); + Objects.requireNonNull(callback, "callback cannot be null"); if (!isEnabled()) { throw new IllegalStateException("service not enabled"); } @@ -466,7 +465,8 @@ public final class BluetoothLeBroadcast implements AutoCloseable, BluetoothProfi * <p>Callbacks are automatically unregistered when application process goes away * * @param callback user implementation of the {@link Callback} - * @throws IllegalArgumentException when callback is null or when no callback is registered + * @throws NullPointerException when callback is null or IllegalArgumentException when no + * callback is registered * @hide */ @SystemApi @@ -476,9 +476,7 @@ public final class BluetoothLeBroadcast implements AutoCloseable, BluetoothProfi android.Manifest.permission.BLUETOOTH_PRIVILEGED, }) public void unregisterCallback(@NonNull Callback callback) { - if (callback == null) { - throw new IllegalArgumentException("callback cannot be null"); - } + Objects.requireNonNull(callback, "callback cannot be null"); if (DBG) log("unregisterCallback"); |