![]() |
ATLAS Offline Software
|
MicroSessionManager is a class taking care of starting sessions for a given major technology and managing the individual database connections. More...
#include <MicroSessionManager.h>
Public Member Functions | |
| MicroSessionManager (DatabaseRegistry ®istry, long technology) | |
| Constructor. | |
| virtual | ~MicroSessionManager () |
| Destructor. | |
| bool | connect (Io::IoFlag transType, int ageLimit) |
| Connects to the storage service. | |
| DatabaseHandler * | connect (Io::IoFlag transType, const std::string &fid, const std::string &pfn) |
| Connects to a database. | |
| void | disconnect (DatabaseHandler *database) |
| Disconnects from a database. | |
| bool | disconnectAll () |
| Disconnects from all the databases. | |
| std::string | fidForPfn (const std::string &pfn) |
| Fetches the FID by trying to temporatily connect to a database. | |
| template<class T> | |
| T | attribute (const std::string &attributeName, const std::string &option="") |
| Templated method to retrieve an attribute. | |
| template<class T> | |
| bool | setAttribute (const std::string &attributeName, const T &atttibuteValue, const std::string &option="") |
| Templated method to set an attribute. | |
Protected Member Functions | |
| virtual bool | attributeOfType (const std::string &attributeName, void *data, const std::type_info &typeInfo, const std::string &option) override |
| The actual method returning the attribute data given a name. | |
| virtual bool | setAttributeOfType (const std::string &attributeName, const void *data, const std::type_info &typeInfo, const std::string &option) override |
| The actual method setting the attribute data given a name. | |
Private Attributes | |
| DatabaseRegistry & | m_registry |
| IStorageSvc * | m_storageSvc |
| bool | m_inSession |
| long | m_technology |
| std::set< DatabaseHandler * > | m_databaseHandlers |
MicroSessionManager is a class taking care of starting sessions for a given major technology and managing the individual database connections.
Definition at line 31 of file MicroSessionManager.h.
| pool::MicroSessionManager::MicroSessionManager | ( | pool::DatabaseRegistry & | registry, |
| long | technology ) |
Constructor.
Definition at line 17 of file MicroSessionManager.cxx.
|
virtual |
Destructor.
Definition at line 32 of file MicroSessionManager.cxx.
|
inlineinherited |
Templated method to retrieve an attribute.
Definition at line 25 of file ITechnologySpecificAttributes.h.
|
overrideprotectedvirtual |
The actual method returning the attribute data given a name.
Implements pool::ITechnologySpecificAttributes.
Definition at line 154 of file MicroSessionManager.cxx.
| pool::DatabaseHandler * pool::MicroSessionManager::connect | ( | Io::IoFlag | transType, |
| const std::string & | fid, | ||
| const std::string & | pfn ) |
Connects to a database.
Definition at line 50 of file MicroSessionManager.cxx.
| bool pool::MicroSessionManager::connect | ( | Io::IoFlag | transType, |
| int | ageLimit ) |
Connects to the storage service.
Definition at line 40 of file MicroSessionManager.cxx.
| void pool::MicroSessionManager::disconnect | ( | pool::DatabaseHandler * | database | ) |
Disconnects from a database.
Definition at line 89 of file MicroSessionManager.cxx.
| bool pool::MicroSessionManager::disconnectAll | ( | ) |
Disconnects from all the databases.
Definition at line 105 of file MicroSessionManager.cxx.
| std::string pool::MicroSessionManager::fidForPfn | ( | const std::string & | pfn | ) |
Fetches the FID by trying to temporatily connect to a database.
Definition at line 124 of file MicroSessionManager.cxx.
|
inlineinherited |
Templated method to set an attribute.
Definition at line 41 of file ITechnologySpecificAttributes.h.
|
overrideprotectedvirtual |
The actual method setting the attribute data given a name.
Implements pool::ITechnologySpecificAttributes.
Definition at line 168 of file MicroSessionManager.cxx.
|
private |
Definition at line 73 of file MicroSessionManager.h.
|
private |
Definition at line 71 of file MicroSessionManager.h.
|
private |
Definition at line 69 of file MicroSessionManager.h.
|
private |
Definition at line 70 of file MicroSessionManager.h.
|
private |
Definition at line 72 of file MicroSessionManager.h.