/** * Load/Publish db-translations * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include #include #include #include #include #include #include "logger.h" namespace ProjectDataManagement { class DdsHandler; class Translation : public QObject, protected Interface::Fts::InsertUpdateTranslationRequestHandler { public: Translation(const std::shared_ptr &dds, const std::shared_ptr &db); ~Translation(); protected Q_SLOTS: void collectAndPublishData(); void publishData(); private: void addToJson(const Database::PdmTranslation &data); void onInsertUpdateTranslationRequest(const rti::core::SampleIdentity &cookie, const InsertUpdateTranslationRequest &request) override; private: QHash m_jsonData; std::shared_ptr m_dds; std::shared_ptr m_db; QTimer m_publishTimer; NGL::INGLLogger &m_logger; }; }