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

56 lines
1.3 KiB
C++
Executable File

/**
* Handler for all exercise objects
* $Id$
* $HeadURL$
* $Author$
* Created by Hanna E. Rathje, SLSE, 2015-09-03
*/
#include "handler_access_control_level.h"
#include "object_access_control_level.h"
#include "opm_db.h"
namespace OperatorManagement
{
HandlerAccessControlLevel::HandlerAccessControlLevel(MainHandler *mainHandler)
: m_mainHandler(mainHandler)
, m_logger(getLogger("HandlerAccessControlLevel"))
{}
HandlerAccessControlLevel::~HandlerAccessControlLevel()
{
qDeleteAll(m_accesscontrollevelObjMap);
}
bool HandlerAccessControlLevel::init()
{
bool bRet = true;
// read all AccessControlLevels from database
auto cb = [this, &bRet] (const Database::OpmAccessControlLevel &data)
{
ObjectAccessControlLevel *ifs(new ObjectAccessControlLevel(m_mainHandler));
Core::FunctionReplyObject ret = ifs->createObject(data);
if(ret.error())
{
delete ifs;
ERROR_LOG(m_logger) << ret();
bRet = false;
return;
}
m_accesscontrollevelObjMap.insert(ifs->getId(), ifs);
};
if (!m_mainHandler->db()->select(cb) || !bRet)
{
ERROR_LOG(m_logger) << "Error reading data from database!";
return false;
}
DEBUG_LOG(m_logger) << "m_exeObjMap.size() = " << m_accesscontrollevelObjMap.size();
return true;
}
} // namespace OperatorManagement