/** * Initialization for Presentation * $Id$ * $HeadURL$ * $Author$ */ #include "initialization.h" #include "settings.h" #include "dds_handler.h" #include "handler_presentation.h" #include #include #include namespace PresentationManagement { Initialization::Initialization(QObject *parent) : QObject(parent) , m_logger(getLogger("Initialization")) { qsrand(time(nullptr)); } Initialization::~Initialization() { m_handlerPresentation = nullptr; m_dbHandler = nullptr; m_ddsHandler = nullptr; } bool Initialization::initialize(const std::shared_ptr &ddsConnector, const QSqlDatabase &sqlDb) { // initialize DDS m_ddsHandler = std::make_shared(ddsConnector); if (!m_ddsHandler->init()) return false; // initialize database m_dbHandler = std::make_shared(); if (!m_dbHandler->init(ddsConnector->getPartitionId(), sqlDb)) return false; // read project specific data from database // publish project specific data m_handlerPresentation = std::make_shared(this); return true; } bool Initialization::loadFromDatabase() { if (!m_handlerPresentation->init()) return false; return true; } std::shared_ptr Initialization::db() const { return m_dbHandler->db(); } int Initialization::exerciseId() const { if (dds()) return dds()->ddsConnector()->getPartitionId(); return -1; } } // namespace PresentationManagement