/** * Convert db structures to dds structures * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2017-07-20 */ #pragma once #include #include #include namespace FileManagement { namespace Database { inline FileContent convert(const FlmFileContent &dbData) { FileContent ddsData; ddsData.id(dbData.id); ddsData.name(dbData.name.toStdString()); ddsData.isTemplate(dbData.isTemplate); ddsData.isHidden(dbData.isHidden); ddsData.fileCategory(dbData.fileCategoryId); ddsData.folderId(dbData.folderId); ddsData.fileType(dbData.fileTypeId); ddsData.operatorId(dbData.operatorId); if (!dbData.exerciseId.isNull() && dbData.exerciseId.canConvert()) ddsData.exerciseId(dbData.exerciseId.toInt()); if (!dbData.phaseId.isNull() && dbData.phaseId.canConvert()) ddsData.phaseId(dbData.phaseId.toInt()); ddsData.fileStatus(dbData.fileStatusId); ddsData.isUsedBy(dbData.isUsedBy); ddsData.usedBy(dbData.usedBy); if (!dbData.properties.isEmpty()) ddsData.properties(dbData.properties.toStdString()); ddsData.lastModified(dbData.lastModified); // init data not in db ddsData.isDeleted(false); ddsData.isUsed(false); return ddsData; } inline FileTypeInfo convert(const FlmFileTypeInfo &dbData) { FileTypeInfo ddsData; ddsData.id(dbData.id); ddsData.description(dbData.description.toStdString()); ddsData.extension(dbData.extension.toStdString()); // init data not in db ddsData.isDeleted(false); ddsData.isUsed(false); return ddsData; } inline Folder convert(const FlmFolder &dbData) { Folder ddsData; ddsData.id(dbData.id); ddsData.name(dbData.name.toStdString()); ddsData.path(dbData.path()); ddsData.isEditable(dbData.isEditable); ddsData.isHidden(dbData.isHidden); ddsData.operatorId(dbData.operatorId); ddsData.parentId(dbData.parentId); ddsData.lastModified(dbData.lastModified); // init data not in db ddsData.isDeleted(false); ddsData.isUsed(false); return ddsData; } } }