1 #ifndef CondCore_CondDB_SessionImpl_h 2 #define CondCore_CondDB_SessionImpl_h 9 #include "RelationalAccess/ConnectionService.h" 10 #include "RelationalAccess/ISessionProxy.h" 23 namespace persistency {
28 virtual void commit() = 0;
29 virtual void rollback() = 0;
30 virtual bool isActive() = 0;
31 bool iovDbExists =
false;
32 bool iovDbOpen =
false;
33 bool gtDbExists =
false;
34 bool gtDbOpen =
false;
35 bool runInfoDbExists =
false;
36 bool runInfoDbOpen =
true;
51 bool isActive()
const;
52 void startTransaction(
bool readOnly =
true);
53 void commitTransaction();
54 void rollbackTransaction();
55 bool isTransactionActive(
bool deep =
true)
const;
57 void openIovDb(FailureOnOpeningPolicy policy = THROW);
58 void openGTDb(FailureOnOpeningPolicy policy = THROW);
std::shared_ptr< coral::ISessionProxy > coralSession
std::string connectionString
std::unique_ptr< IIOVSchema > iovSchemaHandle
std::unique_ptr< IRunInfoSchema > runInfoSchemaHandle
std::recursive_mutex transactionMutex
std::unique_lock< std::recursive_mutex > transactionLock
std::unique_ptr< IGTSchema > gtSchemaHandle
std::unique_ptr< ITransaction > transaction