/** * Asset object * $Id$ * $HeadURL$ * $Author$ * Created by Iuliana Ojog, SLSE, 2017-09-20 */ #pragma once #include "dds_handler.h" #include "logger.h" #include // Generated #include namespace NGL { class INGLLogger; } namespace AssetManagement { class MainHandler; class ObjectRelayInfo { public: explicit ObjectRelayInfo(MainHandler *mainHandler); ~ObjectRelayInfo(); Core::FunctionReplyObject createObject(const RelayInfo &data); Core::FunctionReplyObject updateObject(const RelayInfo &data); Core::FunctionReplyObject removeObject(); qint32 getId() const { return m_data.id(); } QString getName() const { return QString::fromStdString(m_data.name()); } const RelayInfo &getData() const { return m_data; } bool isValid() const; bool isUsed() const; Core::FunctionReplyObject setUsed(bool isUsed); // convert methods static Database::AsmEgcuRelayInfo toDbData(const RelayInfo &ddsData); // dds -> db static RelayInfo toDdsData(const Database::AsmEgcuRelayInfo &dbData); // db -> dds protected: void onPublishData(); private: MainHandler *m_mainHandler; RelayInfo m_data; NGL::INGLLogger &m_logger; }; }