set states for each device of REST call /api/v1/devices

This commit is contained in:
Simon Stürz 2015-08-13 12:46:20 +02:00 committed by Michael Zanetti
parent 3458208857
commit f3b46361ab

View File

@ -196,7 +196,18 @@ HttpReply *DevicesResource::getConfiguredDevices() const
{
qCDebug(dcRest) << "Get all configured devices";
HttpReply *reply = createSuccessReply();
reply->setPayload(QJsonDocument::fromVariant(JsonTypes::packConfiguredDevices()).toJson());
QVariantList devices = JsonTypes::packConfiguredDevices();
QVariantList finalDevices;
foreach (const QVariant &deviceVariant, devices) {
QVariantMap deviceMap = deviceVariant.toMap();
Device* device = GuhCore::instance()->findConfiguredDevice(DeviceId(deviceMap.value("id").toString()));
QVariantList deviceStates = JsonTypes::packDeviceStates(device);
deviceMap.insert("states", deviceStates);
finalDevices.append(deviceMap);
}
reply->setPayload(QJsonDocument::fromVariant(finalDevices).toJson());
return reply;
}