From 3d3195419b851cc02103dc6891e5dcc17c953438 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 2 Jan 2014 01:27:46 +0100 Subject: [PATCH] make use of actions in addconfigureddevice --- libhive/devicemanager.cpp | 8 ++++++++ server/jsonrpcserver.cpp | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/libhive/devicemanager.cpp b/libhive/devicemanager.cpp index b48e7b90..cfc8112e 100644 --- a/libhive/devicemanager.cpp +++ b/libhive/devicemanager.cpp @@ -62,6 +62,14 @@ DeviceManager::DeviceError DeviceManager::addConfiguredDevice(const QUuid &devic triggers.append(trigger); } device->setTriggers(triggers); + QList actions; + foreach (const ActionType &actionType, deviceClass.actions()) { + Action action(QUuid::createUuid()); + action.setName(actionType.name()); + action.setParams(actionType.parameters()); + actions.append(action); + } + device->setActions(actions); m_configuredDevices.append(device); storeConfiguredDevices(); diff --git a/server/jsonrpcserver.cpp b/server/jsonrpcserver.cpp index 86e8e682..79014fcb 100644 --- a/server/jsonrpcserver.cpp +++ b/server/jsonrpcserver.cpp @@ -140,6 +140,7 @@ QVariantMap JsonRPCServer::packDeviceClass(const DeviceClass &deviceClass) triggerTypes.append(triggerMap); } QVariantList actionTypes; + qDebug() << "*******************" << deviceClass.actions().count(); foreach (const ActionType &actionType, deviceClass.actions()) { QVariantMap actionMap; actionMap.insert("id", actionType.id().toString()); @@ -165,6 +166,11 @@ QVariantMap JsonRPCServer::packDevice(Device *device) triggers.append(trigger.id()); } variant.insert("triggers", triggers); + QVariantList actions; + foreach (const Action &action, device->actions()) { + actions.append(action.id()); + } + variant.insert("actions", actions); variant.insert("params", device->params()); return variant; }