ATLAS Offline Software
Loading...
Searching...
No Matches
SessionMgr.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TrigConf_SessionMgr
6#define TrigConf_SessionMgr
7
8#include <string>
9#include <iostream>
10#include <stdexcept>
11#include <memory>
12#include "RelationalAccess/IRelationalService.h"
13#include "RelationalAccess/IRelationalDomain.h"
15
16namespace coral {
17 class ISessionProxy;
18}
19
20
21namespace TrigConf {
22
23 class ReplicaSorter;
24
30 {
31 public:
32
34 SessionMgr();
35
37 virtual ~SessionMgr() override;
38
40 void closeSession();
41
43 coral::ISessionProxy& createSession();
44
47
48 // setters
49 void setConnectionString(const std::string & connStr) { m_connectionString = connStr; }
54
55 void setDbType(const std::string & s);
56 void setDbServer(const std::string & s);
57 void setDbName(const std::string & s);
58 void setDbUser(const std::string & s);
59 void setDbPassword(const std::string & s);
60
61 // accessors
62 const std::string& connection() const { return m_connectionString; }
63 bool useFrontier() const { return m_useFrontier; }
64 int retrialPeriod() const { return m_retrialPeriod; }
65 int retrialTimeout() const { return m_retrialTimeout; }
66 int connectionTimeout() const { return m_connectionTimeout; }
67 const std::string & dbType() const { return m_dbtype; }
68 const std::string & dbServer() const { return m_dbserver; }
69 const std::string & dbName() const { return m_dbname; }
70 const std::string & dbUser() const { return m_user; }
71 const std::string & dbPassword() const { return m_password; }
72
73 private:
74
76
78 void setCppTypeForSqlType(const std::string& cpp_type,
79 const std::string& sql_type);
80
81 coral::ISessionProxy * m_sessionproxy { nullptr };
82
83 std::string m_connectionString { "" };
84 std::string m_dbtype { "" };
85 std::string m_dbserver { "" };
86 std::string m_dbname { "" };
87 std::string m_user { "" };
88 std::string m_password { "" };
89 bool m_useFrontier { false };
93
94 ReplicaSorter * m_replicaSorter { nullptr }; // private replica sorter in case of standalone usage of SessionMgr
95
96 };
97}
98
99#endif
Messaging base class for TrigConf code shared with Lvl1 ( AthMessaging)
std::string m_dbtype
db type
Definition SessionMgr.h:84
void setConnectionString(const std::string &connStr)
Definition SessionMgr.h:49
int connectionTimeout() const
Definition SessionMgr.h:66
const std::string & dbName() const
Definition SessionMgr.h:69
coral::ISessionProxy & createSession()
instantiates the session
std::string m_dbname
db name
Definition SessionMgr.h:86
void closeSession()
close open sessions
const std::string & dbPassword() const
Definition SessionMgr.h:71
void setDbPassword(const std::string &s)
void setDbName(const std::string &s)
ReplicaSorter * m_replicaSorter
Definition SessionMgr.h:94
void setConnectionTimeout(int connectionTimeout)
Definition SessionMgr.h:53
void setUseFrontier(bool useFrontier)
Definition SessionMgr.h:50
std::string m_dbserver
db server
Definition SessionMgr.h:85
coral::ISessionProxy * m_sessionproxy
the coral database session
Definition SessionMgr.h:81
std::string m_password
password
Definition SessionMgr.h:88
const std::string & dbUser() const
Definition SessionMgr.h:70
const std::string & dbType() const
Definition SessionMgr.h:67
std::string m_connectionString
connection string
Definition SessionMgr.h:83
std::string m_user
user name
Definition SessionMgr.h:87
void setDbType(const std::string &s)
void setDbServer(const std::string &s)
void setRetrialPeriod(int retrialPeriod)
Definition SessionMgr.h:51
int retrialTimeout() const
Definition SessionMgr.h:65
virtual ~SessionMgr() override
destructor
void setCppTypeForSqlType(const std::string &cpp_type, const std::string &sql_type)
SQL -> C++ type conversion interface to CORAL.
void setDbUser(const std::string &s)
void setTypeConversionRules()
SQL -> C++ type conversion mapping for Oracle database to match MySQL.
const std::string & connection() const
Definition SessionMgr.h:62
const std::string & dbServer() const
Definition SessionMgr.h:68
int retrialPeriod() const
Definition SessionMgr.h:64
bool useFrontier() const
Definition SessionMgr.h:63
SessionMgr()
constructor
bool m_useFrontier
uses frontier instead of oracle
Definition SessionMgr.h:89
void setRetrialTimeout(int retrialTimeout)
Definition SessionMgr.h:52
TrigConfMessaging(const std::string &name)
Constructor with parameters.
Forward iterator to traverse the main components of the trigger configuration.
Definition Config.h:22