Files
qt5-legatus-legacy/Lts/Services/MarkerManagement/initialization.cpp
T
2026-08-13 18:33:10 +02:00

91 lines
2.4 KiB
C++
Executable File

/**
* Initialization for MarkerManagement
* $Id$
* $HeadURL$
* $Author$
* Created by hjl, SLSE, 2016-04-05
*/
#include "initialization.h"
#include "handler_marker.h"
#include "handler_snapshot.h"
#include "settings.h"
#include <DDS/DDSConnector/dds_connector.h>
#include <ngldb/db_service_handler.h>
namespace MarkerManagement
{
Initialization::Initialization()
: m_logger(getLogger("Initialization"))
{
} // end of ctor()
//-----------------------------------------------------------------------------
Initialization::~Initialization()
{
m_handlerMarker = nullptr;
m_handlerSnapshot = nullptr;
m_dbHandler = nullptr;
m_ddsHandler = nullptr;
} // end of dtor()
//-----------------------------------------------------------------------------
bool Initialization::initialize(const std::shared_ptr<DDSConnector::DdsConnector> &ddsConnector, const QSqlDatabase &sqlDb)
{
INFO_LOG(m_logger) << "--- Start MarkerManagement Initialization.";
// initialize DDS
// for MarkerManagement => exerciseId = partitionId
m_ddsHandler = std::make_shared<DdsHandler>(ddsConnector);
if (!m_ddsHandler->init())
{
ERROR_LOG(m_logger) << "Initialisation DdsHandler failed.";
return false;
}
// initialize database
m_dbHandler = std::make_shared<DbHandler>();
if (!m_dbHandler->init(ddsConnector->getPartitionId(), sqlDb))
{
ERROR_LOG(m_logger) << "Initialisation dbHandler failed.";
return false;
}
// read project specific data from database
// publish project specific data
// initialize handler
m_handlerMarker.reset(new HandlerMarker(m_ddsHandler, m_dbHandler->db()));
m_handlerSnapshot.reset(new HandlerSnapshot(m_ddsHandler, m_dbHandler->db()));
INFO_LOG(m_logger) << "MRK Handler initialized.";
return true;
} // end of initialize()
//-----------------------------------------------------------------------------
bool Initialization::loadFromDatabase()
{
if (!m_handlerMarker || !m_handlerMarker->init())
{
ERROR_LOG(m_logger) << "Initialisation HandlerMarker failed.";
return false;
}
if (!m_handlerSnapshot || !m_handlerSnapshot->init())
{
ERROR_LOG(m_logger) << "Initialisation HandlerSnapshot failed.";
return false;
}
INFO_LOG(m_logger) << "MRK Handler initialized.";
return true;
} // end of loadFromDatabase()
//-----------------------------------------------------------------------------
} // namespace MarkerManagement