/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
CondCore/Utilities/bin/conddb_test.cpp
60 строк
2 KB
Ivan Razumov
Cleanup more analyzer warnings
05 мар 2025, 13:05
05 мар 2025, 13:05
74a9d1a
Код
Авторство
О чём код?
#include "CondCore/CondDB/interface/ConnectionPool.h" #include "CondCore/Utilities/interface/Utilities.h" #include "CondCore/Utilities/interface/CondDBImport.h" #include <iostream> #include <sstream> namespace cond { class TestIovUtilities : public cond::Utilities { public: TestIovUtilities(); ~TestIovUtilities() override; int execute() override; }; } // namespace cond cond::TestIovUtilities::TestIovUtilities() : Utilities("conddb_copy_iov") { addConnectOption("connect", "c", "target connection string (required)"); addAuthenticationOptions(); addOption<bool>("read", "r", "de-serialize the specified payload"); addOption<std::string>("hash", "x", "hash of the payload"); } cond::TestIovUtilities::~TestIovUtilities() {} int cond::TestIovUtilities::execute() { std::string connect = getOptionValue<std::string>("connect"); std::string hash(""); bool read = hasOptionValue("read"); if (read) { hash = getOptionValue<std::string>("hash"); } persistency::ConnectionPool connPool; if (hasOptionValue("authPath")) { connPool.setAuthenticationPath(getOptionValue<std::string>("authPath")); } connPool.configure(); std::cout << "# Connecting to source database on " << connect << std::endl; persistency::Session session = connPool.createSession(connect); session.transaction().start(true); try { persistency::fetch(hash, session); std::cout << "De-serialization of payload " << hash << " performed correctly." << std::endl; } catch (const persistency::Exception& e) { std::cout << "De-serialization of payload " << hash << " failed: " << e.what() << std::endl; } session.transaction().commit(); return 0; } int main(int argc, char** argv) { cond::TestIovUtilities utilities; return utilities.run(argc, argv); }