Merge "BluetoothHearingAid System APIs now throw an exception if a null BluetoothDevice is passed in"
This commit is contained in:
@@ -379,6 +379,7 @@ public final class BluetoothHearingAid implements BluetoothProfile {
|
|||||||
public boolean setConnectionPolicy(@NonNull BluetoothDevice device,
|
public boolean setConnectionPolicy(@NonNull BluetoothDevice device,
|
||||||
@ConnectionPolicy int connectionPolicy) {
|
@ConnectionPolicy int connectionPolicy) {
|
||||||
if (DBG) log("setConnectionPolicy(" + device + ", " + connectionPolicy + ")");
|
if (DBG) log("setConnectionPolicy(" + device + ", " + connectionPolicy + ")");
|
||||||
|
verifyDeviceNotNull(device, "setConnectionPolicy");
|
||||||
final IBluetoothHearingAid service = getService();
|
final IBluetoothHearingAid service = getService();
|
||||||
try {
|
try {
|
||||||
if (service != null && isEnabled()
|
if (service != null && isEnabled()
|
||||||
@@ -428,6 +429,7 @@ public final class BluetoothHearingAid implements BluetoothProfile {
|
|||||||
@RequiresPermission(Manifest.permission.BLUETOOTH_PRIVILEGED)
|
@RequiresPermission(Manifest.permission.BLUETOOTH_PRIVILEGED)
|
||||||
public @ConnectionPolicy int getConnectionPolicy(@NonNull BluetoothDevice device) {
|
public @ConnectionPolicy int getConnectionPolicy(@NonNull BluetoothDevice device) {
|
||||||
if (VDBG) log("getConnectionPolicy(" + device + ")");
|
if (VDBG) log("getConnectionPolicy(" + device + ")");
|
||||||
|
verifyDeviceNotNull(device, "getConnectionPolicy");
|
||||||
final IBluetoothHearingAid service = getService();
|
final IBluetoothHearingAid service = getService();
|
||||||
try {
|
try {
|
||||||
if (service != null && isEnabled()
|
if (service != null && isEnabled()
|
||||||
@@ -504,6 +506,7 @@ public final class BluetoothHearingAid implements BluetoothProfile {
|
|||||||
if (VDBG) {
|
if (VDBG) {
|
||||||
log("getHiSyncId(" + device + ")");
|
log("getHiSyncId(" + device + ")");
|
||||||
}
|
}
|
||||||
|
verifyDeviceNotNull(device, "getConnectionPolicy");
|
||||||
final IBluetoothHearingAid service = getService();
|
final IBluetoothHearingAid service = getService();
|
||||||
try {
|
try {
|
||||||
if (service == null) {
|
if (service == null) {
|
||||||
@@ -577,6 +580,13 @@ public final class BluetoothHearingAid implements BluetoothProfile {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void verifyDeviceNotNull(BluetoothDevice device, String methodName) {
|
||||||
|
if (device == null) {
|
||||||
|
Log.e(TAG, methodName + ": device param is null");
|
||||||
|
throw new IllegalArgumentException("Device cannot be null");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private boolean isValidDevice(BluetoothDevice device) {
|
private boolean isValidDevice(BluetoothDevice device) {
|
||||||
if (device == null) return false;
|
if (device == null) return false;
|
||||||
|
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ public class HearingAidProfile implements LocalBluetoothProfile {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isEnabled(BluetoothDevice device) {
|
public boolean isEnabled(BluetoothDevice device) {
|
||||||
if (mService == null) {
|
if (mService == null || device == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
|
return mService.getConnectionPolicy(device) > CONNECTION_POLICY_FORBIDDEN;
|
||||||
@@ -182,7 +182,7 @@ public class HearingAidProfile implements LocalBluetoothProfile {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getConnectionPolicy(BluetoothDevice device) {
|
public int getConnectionPolicy(BluetoothDevice device) {
|
||||||
if (mService == null) {
|
if (mService == null || device == null) {
|
||||||
return CONNECTION_POLICY_FORBIDDEN;
|
return CONNECTION_POLICY_FORBIDDEN;
|
||||||
}
|
}
|
||||||
return mService.getConnectionPolicy(device);
|
return mService.getConnectionPolicy(device);
|
||||||
@@ -191,7 +191,7 @@ public class HearingAidProfile implements LocalBluetoothProfile {
|
|||||||
@Override
|
@Override
|
||||||
public boolean setEnabled(BluetoothDevice device, boolean enabled) {
|
public boolean setEnabled(BluetoothDevice device, boolean enabled) {
|
||||||
boolean isEnabled = false;
|
boolean isEnabled = false;
|
||||||
if (mService == null) {
|
if (mService == null || device == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
@@ -213,7 +213,7 @@ public class HearingAidProfile implements LocalBluetoothProfile {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public long getHiSyncId(BluetoothDevice device) {
|
public long getHiSyncId(BluetoothDevice device) {
|
||||||
if (mService == null) {
|
if (mService == null || device == null) {
|
||||||
return BluetoothHearingAid.HI_SYNC_ID_INVALID;
|
return BluetoothHearingAid.HI_SYNC_ID_INVALID;
|
||||||
}
|
}
|
||||||
return mService.getHiSyncId(device);
|
return mService.getHiSyncId(device);
|
||||||
|
|||||||
Reference in New Issue
Block a user