Rename Backend type and define ZigbeeNetworkState within the manager

This commit is contained in:
Simon Stürz 2020-10-28 11:42:06 +01:00
parent afc97fd244
commit 4a520d8ba1
4 changed files with 16 additions and 9 deletions

View File

@ -73,6 +73,7 @@
#include "tagshandler.h"
#include "systemhandler.h"
#include "usershandler.h"
#include "zigbeehandler.h"
#include <QJsonDocument>
#include <QStringList>
@ -595,6 +596,7 @@ void JsonRPCServerImplementation::setup()
registerHandler(new TagsHandler(this));
registerHandler(new SystemHandler(NymeaCore::instance()->platform(), this));
registerHandler(new UsersHandler(NymeaCore::instance()->userManager(), this));
registerHandler(new ZigbeeHandler(NymeaCore::instance()->zigbeeManager(), this));
connect(NymeaCore::instance()->cloudManager(), &CloudManager::pairingReply, this, &JsonRPCServerImplementation::pairingFinished);
connect(NymeaCore::instance()->cloudManager(), &CloudManager::connectionStateChanged, this, &JsonRPCServerImplementation::onCloudConnectionStateChanged);

View File

@ -37,11 +37,8 @@ ZigbeeHandler::ZigbeeHandler(ZigbeeManager *zigbeeManager, QObject *parent) :
JsonHandler(parent),
m_zigbeeManager(zigbeeManager)
{
registerEnum<ZigbeeNetwork::State>();
registerEnum<Zigbee::BackendType>();
// registerObject<ZigbeeSerialPort>();
// registerObject<ZigbeeSerialPort, ZigbeeSerialPortList>();
registerEnum<ZigbeeManager::ZigbeeNetworkState>();
registerEnum<Zigbee::ZigbeeBackendType>();
QVariantMap params, returns;
QString description;
@ -60,13 +57,13 @@ ZigbeeHandler::ZigbeeHandler(ZigbeeManager *zigbeeManager, QObject *parent) :
returns.insert("configured", enumValueName(Bool));
returns.insert("serialPort", enumValueName(String));
returns.insert("baudRate", enumValueName(Uint));
returns.insert("backend", enumRef<Zigbee::BackendType>());
returns.insert("backend", enumRef<Zigbee::ZigbeeBackendType>());
returns.insert("firmwareVersion", enumValueName(String));
returns.insert("networkIeeeeAddress", enumValueName(String));
returns.insert("networkPanId", enumValueName(Uint));
returns.insert("channel", enumValueName(Uint));
returns.insert("permitJoin", enumValueName(Bool));
returns.insert("networkState", enumRef<ZigbeeNetwork::State>());
returns.insert("networkState", enumRef<ZigbeeManager::ZigbeeNetworkState>());
registerMethod("GetNetworkStatus", description, params, returns);
// GetUartInterfaces

View File

@ -59,7 +59,7 @@ ZigbeeNetwork *ZigbeeManager::zigbeeNetwork() const
return m_zigbeeNetwork;
}
void ZigbeeManager::createZigbeeNetwork(const QString &serialPort, qint32 baudrate, Zigbee::BackendType backend)
void ZigbeeManager::createZigbeeNetwork(const QString &serialPort, qint32 baudrate, Zigbee::ZigbeeBackendType backend)
{
if (m_zigbeeNetwork) {
delete m_zigbeeNetwork;

View File

@ -41,6 +41,14 @@ class ZigbeeManager : public QObject
{
Q_OBJECT
public:
enum ZigbeeNetworkState {
ZigbeeNetworkStateOffline,
ZigbeeNetworkStateUpdating,
ZigbeeNetworkStateOnline,
ZigbeeNetworkStateError
};
Q_ENUM(ZigbeeNetworkState)
explicit ZigbeeManager(QObject *parent = nullptr);
bool available() const;
@ -48,7 +56,7 @@ public:
ZigbeeNetwork *zigbeeNetwork() const;
void createZigbeeNetwork(const QString &serialPort, qint32 baudrate, Zigbee::BackendType backend);
void createZigbeeNetwork(const QString &serialPort, qint32 baudrate, Zigbee::ZigbeeBackendType backend);
private:
ZigbeeNetwork *m_zigbeeNetwork = nullptr;