Merge "Merge "Bluetooth: Fix startAdvertisingSet error handling" am: ed12213b59 am: e9fe99571b am: 94cd5b22c1 am: b77581725f" into oc-mr1-dev-plus-aosp

am: 0374973a74

Change-Id: I862b5e5048c225f84494b8329f3b85fbaa754c20
This commit is contained in:
Jakub Pawlowski
2017-08-17 23:38:42 +00:00
committed by android-build-merger

View File

@@ -415,7 +415,8 @@ public final class BluetoothLeAdvertiser {
gatt = mBluetoothManager.getBluetoothGatt();
} catch (RemoteException e) {
Log.e(TAG, "Failed to get Bluetooth gatt - ", e);
throw new IllegalStateException("Failed to get Bluetooth");
postStartSetFailure(handler, callback, AdvertiseCallback.ADVERTISE_FAILED_INTERNAL_ERROR);
return;
}
IAdvertisingSetCallback wrapped = wrap(callback, handler);
@@ -429,7 +430,8 @@ public final class BluetoothLeAdvertiser {
periodicData, duration, maxExtendedAdvertisingEvents, wrapped);
} catch (RemoteException e) {
Log.e(TAG, "Failed to start advertising set - ", e);
throw new IllegalStateException("Failed to start advertising set");
postStartSetFailure(handler, callback, AdvertiseCallback.ADVERTISE_FAILED_INTERNAL_ERROR);
return;
}
}
@@ -648,6 +650,16 @@ public final class BluetoothLeAdvertiser {
};
}
private void postStartSetFailure(Handler handler, final AdvertisingSetCallback callback,
final int error) {
handler.post(new Runnable() {
@Override
public void run() {
callback.onAdvertisingSetStarted(null, 0, error);
}
});
}
private void postStartFailure(final AdvertiseCallback callback, final int error) {
mHandler.post(new Runnable() {
@Override