ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Database
AthenaPOOL
PoolSvc
src
MicroSessionManager.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef POOLSVC_MICROSESSIONMANAGER_H
6
#define POOLSVC_MICROSESSIONMANAGER_H
7
8
#include <string>
9
#include <set>
10
11
#include "
StorageSvc/pool.h
"
12
13
namespace
pool
{
14
15
// forward declarations
16
class
IStorageSvc
;
17
18
// forward declarations
19
class
DatabaseRegistry
;
20
class
DatabaseHandler
;
21
29
30
class
MicroSessionManager
{
31
public
:
33
MicroSessionManager
(
DatabaseRegistry
& registry,
long
technology );
35
virtual
~MicroSessionManager
();
36
38
bool
connect
( Io::IoFlag transType,
int
ageLimit );
39
41
DatabaseHandler
*
connect
( Io::IoFlag transType,
42
const
std::string& fid,
43
const
std::string& pfn );
44
46
void
disconnect
(
DatabaseHandler
* database );
47
49
bool
disconnectAll
();
50
52
std::string
fidForPfn
(
const
std::string& pfn );
53
54
virtual
55
bool
attributeOfType
(
const
std::string& attributeName,
56
void
* data,
57
const
std::type_info& typeInfo,
58
const
std::string& option );
59
60
virtual
61
bool
setAttributeOfType
(
const
std::string& attributeName,
62
const
void
* data,
63
const
std::type_info& typeInfo,
64
const
std::string& option );
65
66
private
:
67
DatabaseRegistry
&
m_registry
;
68
IStorageSvc
*
m_storageSvc
;
69
bool
m_inSession
;
70
long
m_technology
;
71
std::set<DatabaseHandler*>
m_databaseHandlers
;
72
};
73
}
74
75
#endif
pool.h
pool::DatabaseHandler
DatabaseHandler is a class taking care of the micro-connections and the micro transactions for a give...
Definition
DatabaseHandler.h:30
pool::DatabaseRegistry
Definition
DatabaseRegistry.h:17
pool::IStorageSvc
The IStorageSvc interface is able to handle user request for.
Definition
IStorageSvc.h:48
pool::MicroSessionManager::~MicroSessionManager
virtual ~MicroSessionManager()
Destructor.
Definition
MicroSessionManager.cxx:32
pool::MicroSessionManager::connect
bool connect(Io::IoFlag transType, int ageLimit)
Connects to the storage service.
Definition
MicroSessionManager.cxx:40
pool::MicroSessionManager::attributeOfType
virtual bool attributeOfType(const std::string &attributeName, void *data, const std::type_info &typeInfo, const std::string &option)
Definition
MicroSessionManager.cxx:154
pool::MicroSessionManager::disconnect
void disconnect(DatabaseHandler *database)
Disconnects from a database.
Definition
MicroSessionManager.cxx:89
pool::MicroSessionManager::fidForPfn
std::string fidForPfn(const std::string &pfn)
Fetches the FID by trying to temporatily connect to a database.
Definition
MicroSessionManager.cxx:124
pool::MicroSessionManager::setAttributeOfType
virtual bool setAttributeOfType(const std::string &attributeName, const void *data, const std::type_info &typeInfo, const std::string &option)
Definition
MicroSessionManager.cxx:168
pool::MicroSessionManager::m_storageSvc
IStorageSvc * m_storageSvc
Definition
MicroSessionManager.h:68
pool::MicroSessionManager::m_registry
DatabaseRegistry & m_registry
Definition
MicroSessionManager.h:67
pool::MicroSessionManager::MicroSessionManager
MicroSessionManager(DatabaseRegistry ®istry, long technology)
Constructor.
Definition
MicroSessionManager.cxx:17
pool::MicroSessionManager::m_inSession
bool m_inSession
Definition
MicroSessionManager.h:69
pool::MicroSessionManager::disconnectAll
bool disconnectAll()
Disconnects from all the databases.
Definition
MicroSessionManager.cxx:105
pool::MicroSessionManager::m_technology
long m_technology
Definition
MicroSessionManager.h:70
pool::MicroSessionManager::m_databaseHandlers
std::set< DatabaseHandler * > m_databaseHandlers
Definition
MicroSessionManager.h:71
pool
Framework include files.
Definition
libname.h:15
Generated on
for ATLAS Offline Software by
1.17.0