/** * @RDE_HEADER@ * Data Plugin for ExerciseManangement * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2016-02-29 */ #include "pdm_data_plugin.h" #include #include #include #include #include #include namespace ProjectDataManagement { std::shared_ptr DataPlugin::createDataInterface(LtsSession::LtsSessionDataDds *session) { std::shared_ptr dtc; std::shared_ptr ftc; if (!session->createTopicClient(dtc, ftc, false, true)) return std::shared_ptr(); connect(dtc.get(), &ProjectDataManagement::Interface::Dtc::translationBlobChanged, this, &DataPlugin::onTranslationBlobChanged); dtc.get()->enableTranslationBlob(); return std::make_shared(dtc, ftc); } void DataPlugin::onTranslationBlobChanged(const ProjectDataManagement::TranslationBlob &data, DataModification modType) { if (modType == DataModification::eRemoved) return; // always compressed by definition NGL::setTranslationDataJson(LtsUtils::toQByteArray(data.payload()), data.md5sum().c_str(), true); } DataInterfaceImpl::DataInterfaceImpl(const std::shared_ptr &dtc, const std::shared_ptr &ftc) : DataInterface() , m_dtc(dtc) , m_ftc(ftc) {} } // namespace ProjectDataManagement