![]() |
The Gaudi Framework
v27r0
|
This class constitutes the core of the XML based FileCatalog API for using POOL within Gaudi. More...
#include <src/component/MultiFileCatalog.h>


Public Types | |
| typedef Service::Factory | Factory |
Public Types inherited from extends< BASE, Interfaces > | |
| using | base_class = extends |
| Typedef to this class. More... | |
| using | extend_interfaces_base = extend_interfaces< Interfaces...> |
| Typedef to the base of this class. More... | |
| using | base_class = extends |
| Typedef to this class. More... | |
| using | extend_interfaces_base = extend_interfaces< Interfaces...> |
| Typedef to the base of this class. More... | |
Public Types inherited from extend_interfaces< Interfaces...> | |
| using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
| take union of the ext_iids of all Interfaces... More... | |
| using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
| take union of the ext_iids of all Interfaces... More... | |
Public Member Functions | |
| MultiFileCatalog (const std::string &nam, ISvcLocator *svc) | |
| Create a catalog file, initialization of XercesC. More... | |
| ~MultiFileCatalog () override=default | |
| Destructor,. More... | |
| StatusCode | initialize () override |
| IService implementation. More... | |
| StatusCode | finalize () override |
| Finalize service object. More... | |
| std::string | createFID () const override |
| Catalog interface. More... | |
| CSTR | connectInfo () const override |
| Access to connect string. More... | |
| void | init () override |
| Parse the DOM tree of the XML catalog. More... | |
| void | commit () override |
| Save DOM catalog to file. More... | |
| void | rollback () override |
| Save DOM catalog to file. More... | |
| bool | readOnly () const override |
| Check if the catalog is read-only. More... | |
| bool | dirty () const override |
| Check if the catalog should be updated. More... | |
| bool | existsPFN (CSTR pfn) const override |
| Return the status of physical file name. More... | |
| std::string | lookupPFN (CSTR pfn) const override |
| Lookup file identifier by physical file name. More... | |
| bool | existsLFN (CSTR lfn) const override |
| Return the status of a logical file name. More... | |
| std::string | lookupLFN (CSTR lfn) const override |
| Lookup file identifier by logical file name. More... | |
| bool | existsFID (CSTR fid) const override |
| Return the status of a FileID. More... | |
| void | getPFN (CSTR fid, Files &files) const override |
| Dump all physical file names of the catalog and their attributes associate to the FileID. More... | |
| void | getLFN (CSTR fid, Files &files) const override |
| Dump all logical file names of the catalog associate to the FileID. More... | |
| void | getFID (Strings &fids) const override |
| Dump all file Identifiers. More... | |
| void | deleteFID (CSTR fid) const override |
| Delete FileID from the catalog. More... | |
| void | registerPFN (CSTR fid, CSTR pfn, CSTR ftype) const override |
| Create a FileID and DOM Node of the PFN with all the attributes. More... | |
| void | registerLFN (CSTR fid, CSTR lfn) const override |
| Create a FileID and DOM Node of the LFN with all the attributes. More... | |
| void | registerFID (CSTR fid) const override |
| Create a FileID and DOM Node. More... | |
| void | getMetaData (CSTR fid, Attributes &attr) const override |
| Dump all MetaData of the catalog for a given file ID. More... | |
| std::string | getMetaDataItem (CSTR fid, CSTR name) const override |
| Access metadata item. More... | |
| void | setMetaData (CSTR fid, CSTR attr, CSTR val) const override |
| Insert/update metadata item. More... | |
| void | dropMetaData (CSTR fid) const override |
| Drop all metadata of one FID. More... | |
| void | dropMetaData (CSTR fid, CSTR attr) const override |
| Drop specified metadata item. More... | |
| IFileCatalog * | findCatalog (CSTR connect, bool must_be_writable) const override |
| Catalog management. More... | |
| void | addCatalog (CSTR connect) override |
| Add new catalog identified by name to the existing ones. More... | |
| void | addCatalog (IFileCatalog *cat) override |
| Add new catalog identified by reference to the existing ones. More... | |
| void | removeCatalog (CSTR connect) override |
| Remove catalog identified by name from the existing ones. More... | |
| void | removeCatalog (const IFileCatalog *cat) override |
| Remove catalog identified by reference from the existing ones. More... | |
| Catalogs & | catalogs () override |
| Access catalog container. More... | |
| const Catalogs & | catalogs () const override |
| Access catalog container (CONST) More... | |
| IFileCatalog * | writeCatalog (CSTR fid="") const override |
| Access to the (first) writable file catalog. More... | |
| void | setWriteCatalog (IFileCatalog *cat) override |
| Define the writable catalog identified by reference. More... | |
| void | setWriteCatalog (CSTR connect) override |
| Define the writable catalog identified by name. More... | |
Public Member Functions inherited from extends< BASE, Interfaces > | |
| void * | i_cast (const InterfaceID &tid) const override |
| Implementation of IInterface::i_cast. More... | |
| StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
| Implementation of IInterface::queryInterface. More... | |
| std::vector< std::string > | getInterfaceNames () const override |
| Implementation of IInterface::getInterfaceNames. More... | |
| ~extends () override=default | |
| Virtual destructor. More... | |
| void * | i_cast (const InterfaceID &tid) const override |
| Implementation of IInterface::i_cast. More... | |
| StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
| Implementation of IInterface::queryInterface. More... | |
| std::vector< std::string > | getInterfaceNames () const override |
| Implementation of IInterface::getInterfaceNames. More... | |
| ~extends () override=default | |
| Virtual destructor. More... | |
Public Member Functions inherited from extend_interfaces< Interfaces...> | |
| ~extend_interfaces () override=default | |
| Virtual destructor. More... | |
| ~extend_interfaces () override=default | |
| Virtual destructor. More... | |
Protected Types | |
| typedef const std::string & | CSTR |
| typedef std::vector< IFileCatalog * > | Catalogs |
| typedef std::vector< std::string > | CatalogNames |
Protected Member Functions | |
| template<class A1 , class F > | |
| std::string | _find (A1 &arg1, F pmf) const |
| template<class A1 , class F > | |
| void | _collect (A1 &arg1, F f) const |
| template<class A2 , class A1 , class F > | |
| void | _collect (const A2 &arg2, A1 &arg1, F f) const |
Private Member Functions | |
| IFileCatalog * | getCatalog (CSTR fid, bool throw_if_not, bool writable=true, bool prt=true) const |
| Find catalog containing a given file identifier. More... | |
| Catalogs::iterator | i_findCatalog (CSTR connect, bool must_be_writable) |
| Find catalog by connect string. More... | |
| void | propHandler (Property &) |
| simple property handle to allow interactive modification of list of the file catalogs More... | |
| void | printError (CSTR msg, bool throw_exc=true) const |
| std::string | lookupFID (CSTR lfn) const |
Private Attributes | |
| Catalogs | m_catalogs |
| Container with references to known catalogs. More... | |
| CatalogNames | m_catalogNames = { { "xmlcatalog_file:test_catalog.xml" } } |
| Property : Container with catalog names. More... | |
| bool | m_started = false |
| Flag to indicate if catalog is started. More... | |
| CatalogNames | m_oldNames |
| BACKUP:: Container with catalog names. More... | |
This class constitutes the core of the XML based FileCatalog API for using POOL within Gaudi.
This class manages multiple file catalogs.
Definition at line 20 of file MultiFileCatalog.h.
|
protected |
Definition at line 29 of file MultiFileCatalog.h.
|
protected |
Definition at line 28 of file MultiFileCatalog.h.
|
protected |
Definition at line 27 of file MultiFileCatalog.h.
| typedef Service::Factory Gaudi::MultiFileCatalog::Factory |
Definition at line 24 of file MultiFileCatalog.h.
| MultiFileCatalog::MultiFileCatalog | ( | const std::string & | nam, |
| ISvcLocator * | svc | ||
| ) |
Create a catalog file, initialization of XercesC.
Definition at line 24 of file MultiFileCatalog.cpp.
|
overridedefault |
Destructor,.
|
inlineprotected |
Definition at line 39 of file MultiFileCatalog.h.
|
inlineprotected |
Definition at line 47 of file MultiFileCatalog.h.
|
inlineprotected |
Definition at line 31 of file MultiFileCatalog.h.
|
override |
Add new catalog identified by name to the existing ones.
Catalog is already present ... silently ignore request
Definition at line 119 of file MultiFileCatalog.cpp.
|
override |
Add new catalog identified by reference to the existing ones.
Definition at line 155 of file MultiFileCatalog.cpp.
|
inlineoverride |
Access catalog container.
Definition at line 144 of file MultiFileCatalog.h.
|
inlineoverride |
Access catalog container (CONST)
Definition at line 146 of file MultiFileCatalog.h.
|
override |
Save DOM catalog to file.
Definition at line 246 of file MultiFileCatalog.cpp.
|
override |
|
override |
Catalog interface.
Create file identifier using UUID mechanism.
Create file identifier using UUID mechanism
Definition at line 60 of file MultiFileCatalog.cpp.
|
inlineoverride |
Delete FileID from the catalog.
Definition at line 108 of file MultiFileCatalog.h.
|
override |
Check if the catalog should be updated.
Definition at line 238 of file MultiFileCatalog.cpp.
|
inlineoverride |
Drop all metadata of one FID.
Definition at line 126 of file MultiFileCatalog.h.
Drop specified metadata item.
Definition at line 129 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of a FileID.
Definition at line 95 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of a logical file name.
Definition at line 89 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of physical file name.
Definition at line 83 of file MultiFileCatalog.h.
|
override |
Finalize service object.
Definition at line 51 of file MultiFileCatalog.cpp.
|
override |
Catalog management.
Find catalog by connect string
Definition at line 89 of file MultiFileCatalog.cpp.
|
private |
Find catalog containing a given file identifier.
Definition at line 69 of file MultiFileCatalog.cpp.
|
inlineoverride |
Dump all file Identifiers.
Definition at line 105 of file MultiFileCatalog.h.
|
inlineoverride |
Dump all logical file names of the catalog associate to the FileID.
Definition at line 101 of file MultiFileCatalog.h.
|
inlineoverride |
Dump all MetaData of the catalog for a given file ID.
Definition at line 118 of file MultiFileCatalog.h.
Access metadata item.
Definition at line 212 of file MultiFileCatalog.cpp.
|
inlineoverride |
Dump all physical file names of the catalog and their attributes associate to the FileID.
Definition at line 98 of file MultiFileCatalog.h.
|
private |
Find catalog by connect string.
Definition at line 99 of file MultiFileCatalog.cpp.
|
override |
Parse the DOM tree of the XML catalog.
Definition at line 243 of file MultiFileCatalog.cpp.
|
override |
IService implementation.
Finalize service object
Definition at line 31 of file MultiFileCatalog.cpp.
|
private |
|
inlineoverride |
Lookup file identifier by logical file name.
Definition at line 92 of file MultiFileCatalog.h.
|
inlineoverride |
Lookup file identifier by physical file name.
Definition at line 86 of file MultiFileCatalog.h.
|
private |
Definition at line 110 of file MultiFileCatalog.cpp.
|
private |
simple property handle to allow interactive modification of list of the file catalogs
Definition at line 252 of file MultiFileCatalog.cpp.
|
override |
Check if the catalog is read-only.
Definition at line 233 of file MultiFileCatalog.cpp.
|
inlineoverride |
Create a FileID and DOM Node.
Definition at line 115 of file MultiFileCatalog.h.
Create a FileID and DOM Node of the LFN with all the attributes.
Definition at line 227 of file MultiFileCatalog.cpp.
Create a FileID and DOM Node of the PFN with all the attributes.
Definition at line 221 of file MultiFileCatalog.cpp.
|
override |
Remove catalog identified by name from the existing ones.
Definition at line 164 of file MultiFileCatalog.cpp.
|
override |
Remove catalog identified by reference from the existing ones.
Definition at line 173 of file MultiFileCatalog.cpp.
|
override |
Save DOM catalog to file.
Definition at line 249 of file MultiFileCatalog.cpp.
Insert/update metadata item.
Definition at line 123 of file MultiFileCatalog.h.
|
override |
Define the writable catalog identified by reference.
Definition at line 186 of file MultiFileCatalog.cpp.
|
override |
Define the writable catalog identified by name.
Definition at line 202 of file MultiFileCatalog.cpp.
|
inlineoverride |
Access to the (first) writable file catalog.
Definition at line 148 of file MultiFileCatalog.h.
|
private |
Property : Container with catalog names.
Definition at line 171 of file MultiFileCatalog.h.
|
private |
Container with references to known catalogs.
Definition at line 169 of file MultiFileCatalog.h.
|
private |
BACKUP:: Container with catalog names.
Definition at line 175 of file MultiFileCatalog.h.
|
private |
Flag to indicate if catalog is started.
Definition at line 173 of file MultiFileCatalog.h.