Merge "Add return value connect()" into rvc-dev
This commit is contained in:
@@ -145,15 +145,16 @@ public class LocalMediaManager implements BluetoothCallback {
|
|||||||
/**
|
/**
|
||||||
* Connect the MediaDevice to transfer media
|
* Connect the MediaDevice to transfer media
|
||||||
* @param connectDevice the MediaDevice
|
* @param connectDevice the MediaDevice
|
||||||
|
* @return {@code true} if successfully call, otherwise return {@code false}
|
||||||
*/
|
*/
|
||||||
public void connectDevice(MediaDevice connectDevice) {
|
public boolean connectDevice(MediaDevice connectDevice) {
|
||||||
MediaDevice device = null;
|
MediaDevice device = null;
|
||||||
synchronized (mMediaDevicesLock) {
|
synchronized (mMediaDevicesLock) {
|
||||||
device = getMediaDeviceById(mMediaDevices, connectDevice.getId());
|
device = getMediaDeviceById(mMediaDevices, connectDevice.getId());
|
||||||
}
|
}
|
||||||
if (device == null) {
|
if (device == null) {
|
||||||
Log.w(TAG, "connectDevice() connectDevice not in the list!");
|
Log.w(TAG, "connectDevice() connectDevice not in the list!");
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
if (device instanceof BluetoothMediaDevice) {
|
if (device instanceof BluetoothMediaDevice) {
|
||||||
final CachedBluetoothDevice cachedDevice =
|
final CachedBluetoothDevice cachedDevice =
|
||||||
@@ -162,13 +163,13 @@ public class LocalMediaManager implements BluetoothCallback {
|
|||||||
mOnTransferBluetoothDevice = connectDevice;
|
mOnTransferBluetoothDevice = connectDevice;
|
||||||
device.setState(MediaDeviceState.STATE_CONNECTING);
|
device.setState(MediaDeviceState.STATE_CONNECTING);
|
||||||
cachedDevice.connect();
|
cachedDevice.connect();
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (device == mCurrentConnectedDevice) {
|
if (device == mCurrentConnectedDevice) {
|
||||||
Log.d(TAG, "connectDevice() this device all ready connected! : " + device.getName());
|
Log.d(TAG, "connectDevice() this device all ready connected! : " + device.getName());
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mCurrentConnectedDevice != null) {
|
if (mCurrentConnectedDevice != null) {
|
||||||
@@ -181,6 +182,7 @@ public class LocalMediaManager implements BluetoothCallback {
|
|||||||
} else {
|
} else {
|
||||||
device.connect();
|
device.connect();
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dispatchSelectedDeviceStateChanged(MediaDevice device, @MediaDeviceState int state) {
|
void dispatchSelectedDeviceStateChanged(MediaDevice device, @MediaDeviceState int state) {
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ public class LocalMediaManagerTest {
|
|||||||
when(currentDevice.getId()).thenReturn(TEST_CURRENT_DEVICE_ID);
|
when(currentDevice.getId()).thenReturn(TEST_CURRENT_DEVICE_ID);
|
||||||
|
|
||||||
mLocalMediaManager.registerCallback(mCallback);
|
mLocalMediaManager.registerCallback(mCallback);
|
||||||
mLocalMediaManager.connectDevice(device);
|
assertThat(mLocalMediaManager.connectDevice(device)).isTrue();
|
||||||
|
|
||||||
verify(currentDevice).disconnect();
|
verify(currentDevice).disconnect();
|
||||||
verify(device).connect();
|
verify(device).connect();
|
||||||
@@ -154,7 +154,7 @@ public class LocalMediaManagerTest {
|
|||||||
mLocalMediaManager.mCurrentConnectedDevice = mInfoMediaDevice1;
|
mLocalMediaManager.mCurrentConnectedDevice = mInfoMediaDevice1;
|
||||||
|
|
||||||
mLocalMediaManager.registerCallback(mCallback);
|
mLocalMediaManager.registerCallback(mCallback);
|
||||||
mLocalMediaManager.connectDevice(mInfoMediaDevice2);
|
assertThat(mLocalMediaManager.connectDevice(mInfoMediaDevice2)).isTrue();
|
||||||
|
|
||||||
assertThat(mInfoMediaDevice2.getState()).isEqualTo(LocalMediaManager.MediaDeviceState
|
assertThat(mInfoMediaDevice2.getState()).isEqualTo(LocalMediaManager.MediaDeviceState
|
||||||
.STATE_CONNECTING);
|
.STATE_CONNECTING);
|
||||||
@@ -167,7 +167,7 @@ public class LocalMediaManagerTest {
|
|||||||
mLocalMediaManager.mCurrentConnectedDevice = mInfoMediaDevice1;
|
mLocalMediaManager.mCurrentConnectedDevice = mInfoMediaDevice1;
|
||||||
|
|
||||||
mLocalMediaManager.registerCallback(mCallback);
|
mLocalMediaManager.registerCallback(mCallback);
|
||||||
mLocalMediaManager.connectDevice(mInfoMediaDevice1);
|
assertThat(mLocalMediaManager.connectDevice(mInfoMediaDevice1)).isFalse();
|
||||||
|
|
||||||
assertThat(mInfoMediaDevice1.getState()).isNotEqualTo(LocalMediaManager.MediaDeviceState
|
assertThat(mInfoMediaDevice1.getState()).isNotEqualTo(LocalMediaManager.MediaDeviceState
|
||||||
.STATE_CONNECTING);
|
.STATE_CONNECTING);
|
||||||
@@ -185,7 +185,7 @@ public class LocalMediaManagerTest {
|
|||||||
when(cachedDevice.isBusy()).thenReturn(false);
|
when(cachedDevice.isBusy()).thenReturn(false);
|
||||||
|
|
||||||
mLocalMediaManager.registerCallback(mCallback);
|
mLocalMediaManager.registerCallback(mCallback);
|
||||||
mLocalMediaManager.connectDevice(device);
|
assertThat(mLocalMediaManager.connectDevice(device)).isTrue();
|
||||||
|
|
||||||
verify(cachedDevice).connect();
|
verify(cachedDevice).connect();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user