Bug 906020: Remove BluetoothArrayOfDevicePropertiesRunnable, r=echou,gyeh

With the completely non-blocking handling of 'GetProperties' message
there is no need for BluetoothArrayOfDevicePropertiesRunnable any longer.

--HG--
extra : rebase_source : 8cbdf1bfdf4aec3dfd797326a6846931a8099723
This commit is contained in:
Thomas Zimmermann 2013-08-27 01:00:58 +02:00
Родитель 349561db67
Коммит 7e44be7f39
1 изменённых файлов: 10 добавлений и 47 удалений

Просмотреть файл

@ -2158,38 +2158,6 @@ private:
BluetoothValue mValues; BluetoothValue mValues;
}; };
class BluetoothArrayOfDevicePropertiesRunnable : public nsRunnable
{
public:
BluetoothArrayOfDevicePropertiesRunnable(
const nsTArray<nsString>& aDeviceAddresses,
BluetoothReplyRunnable* aRunnable,
FilterFunc aFilterFunc)
: mDeviceAddresses(aDeviceAddresses)
, mRunnable(dont_AddRef(aRunnable))
, mFilterFunc(aFilterFunc)
{
}
nsresult Run()
{
MOZ_ASSERT(!NS_IsMainThread());
nsRefPtr<BluetoothArrayOfDevicePropertiesReplyHandler> handler =
new BluetoothArrayOfDevicePropertiesReplyHandler(mDeviceAddresses,
mFilterFunc,
mRunnable);
handler->ProcessRemainingDeviceAddresses();
return NS_OK;
}
private:
nsTArray<nsString> mDeviceAddresses;
nsRefPtr<BluetoothReplyRunnable> mRunnable;
FilterFunc mFilterFunc;
};
nsresult nsresult
BluetoothDBusService::GetConnectedDevicePropertiesInternal(uint16_t aProfileId, BluetoothDBusService::GetConnectedDevicePropertiesInternal(uint16_t aProfileId,
BluetoothReplyRunnable* aRunnable) BluetoothReplyRunnable* aRunnable)
@ -2226,13 +2194,12 @@ BluetoothDBusService::GetConnectedDevicePropertiesInternal(uint16_t aProfileId,
} }
nsRefPtr<BluetoothReplyRunnable> runnable = aRunnable; nsRefPtr<BluetoothReplyRunnable> runnable = aRunnable;
nsRefPtr<nsRunnable> func( nsRefPtr<BluetoothArrayOfDevicePropertiesReplyHandler> handler =
new BluetoothArrayOfDevicePropertiesRunnable(deviceAddresses, new BluetoothArrayOfDevicePropertiesReplyHandler(deviceAddresses,
runnable, GetConnectedDevicesFilter,
GetConnectedDevicesFilter)); runnable);
mBluetoothCommandThread->Dispatch(func, NS_DISPATCH_NORMAL); handler->ProcessRemainingDeviceAddresses();
runnable.forget();
return NS_OK; return NS_OK;
} }
@ -2250,16 +2217,12 @@ BluetoothDBusService::GetPairedDevicePropertiesInternal(
} }
nsRefPtr<BluetoothReplyRunnable> runnable = aRunnable; nsRefPtr<BluetoothReplyRunnable> runnable = aRunnable;
nsRefPtr<nsRunnable> func( nsRefPtr<BluetoothArrayOfDevicePropertiesReplyHandler> handler =
new BluetoothArrayOfDevicePropertiesRunnable(aDeviceAddresses, new BluetoothArrayOfDevicePropertiesReplyHandler(aDeviceAddresses,
runnable, GetPairedDevicesFilter,
GetPairedDevicesFilter)); runnable);
if (NS_FAILED(mBluetoothCommandThread->Dispatch(func, NS_DISPATCH_NORMAL))) { handler->ProcessRemainingDeviceAddresses();
NS_WARNING("Cannot dispatch task!");
return NS_ERROR_FAILURE;
}
runnable.forget();
return NS_OK; return NS_OK;
} }