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


Public Member Functions | |
| XMLFileCatalog (CSTR url, IMessageSvc *m) | |
| Create a catalog file, initialization of XercesC. More... | |
| virtual | ~XMLFileCatalog ()=default |
| Destructor,. More... | |
| virtual std::string | createFID () const |
| Catalog interface. More... | |
| virtual CSTR | connectInfo () const |
| Access to connect string. More... | |
| virtual void | init () |
| Parse the DOM tree of the XML catalog. More... | |
| virtual void | commit () |
| Save DOM catalog to file. More... | |
| virtual void | rollback () |
| Save DOM catalog to file. More... | |
| virtual bool | readOnly () const |
| Check if the catalog is read-only. More... | |
| virtual bool | dirty () const |
| Check if the catalog should be updated. More... | |
| virtual bool | existsPFN (CSTR pfn) const |
| Return the status of a physical file name. More... | |
| virtual std::string | lookupPFN (CSTR fid) const |
| Lookup file identifier by physical file name. More... | |
| virtual bool | existsLFN (CSTR lfn) const |
| Return the status of a logical file name. More... | |
| virtual std::string | lookupLFN (CSTR lfn) const |
| Lookup file identifier by logical file name. More... | |
| virtual bool | existsFID (CSTR fid) const |
| Return the status of a FileID. More... | |
| virtual void | getPFN (CSTR fid, Files &files) const |
| Dump all physical file names of the catalog and their attributes associate to the FileID. More... | |
| virtual void | getLFN (CSTR fid, Files &files) const |
| Dump all logical file names of the catalog associate to the FileID. More... | |
| virtual void | getFID (Strings &fids) const |
| Dump all file Identifiers. More... | |
| virtual void | deleteFID (CSTR FileID) const |
| Delete FileID Node from the catalog. More... | |
| virtual void | registerPFN (CSTR fid, CSTR pfn, CSTR ftype) const |
| Create a FileID and Node of the physical file name with all the attributes. More... | |
| virtual void | registerLFN (CSTR fid, CSTR lfn) const |
| Create a FileID and Node of the logical file name with all the attributes. More... | |
| virtual void | registerFID (CSTR fid) const |
| Create a FileID and Node. More... | |
| virtual void | getMetaData (CSTR fid, Attributes &attr) const |
| Dump all MetaData of the catalog for a given file ID. More... | |
| virtual std::string | getMetaDataItem (CSTR fid, CSTR name) const |
| Access metadata item. More... | |
| virtual void | setMetaData (CSTR fid, CSTR name, CSTR value) const |
| Insert/update metadata item. More... | |
| virtual void | dropMetaData (CSTR fid) const |
| Drop all metadata of one FID. More... | |
| virtual void | dropMetaData (CSTR fid, CSTR attr) const |
| Drop specified metadata item. More... | |
Public Member Functions inherited from implements< 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... | |
| implements ()=default | |
| Default constructor. More... | |
| implements (const implements &) | |
| Copy constructor (zero the reference count) More... | |
| implements & | operator= (const implements &) |
| Assignment operator (do not touch the reference count). More... | |
| ~implements () override=default | |
| Virtual destructor. More... | |
| unsigned long | addRef () override |
| Reference Interface instance. More... | |
| unsigned long | release () override |
| Release Interface instance. More... | |
| unsigned long | refCount () const override |
| Current reference count. 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... | |
| implements ()=default | |
| Default constructor. More... | |
| implements (const implements &) | |
| Copy constructor (zero the reference count) More... | |
| implements & | operator= (const implements &) |
| Assignment operator (do not touch the reference count). More... | |
| ~implements () override=default | |
| Virtual destructor. More... | |
| unsigned long | addRef () override |
| Reference Interface instance. More... | |
| unsigned long | release () override |
| Release Interface instance. More... | |
| unsigned long | refCount () const override |
| Current reference count. 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 |
Private Member Functions | |
| xercesc::DOMDocument * | getDoc (bool throw_if_no_exists=true) const |
| std::string | getfile (bool create) |
| void | printError (CSTR msg, bool throw_exc=true) const |
| std::string | lookupFID (CSTR lfn) const |
| xercesc::DOMNode * | element (CSTR fid, bool print_err=true) const |
| xercesc::DOMNode * | child (xercesc::DOMNode *par, CSTR tag, CSTR attr="", CSTR val="") const |
| std::pair< xercesc::DOMElement *, xercesc::DOMElement * > | i_registerFID (CSTR fid) const |
Private Attributes | |
| bool | m_rdOnly |
| bool | m_update |
| xercesc::DOMDocument * | m_doc |
| std::unique_ptr< xercesc::XercesDOMParser > | m_parser |
| std::unique_ptr< xercesc::ErrorHandler > | m_errHdlr |
| std::string | m_file |
| IMessageSvc * | m_msgSvc |
Additional Inherited Members | |
Public Types inherited from implements< Interfaces > | |
| using | base_class = implements< Interfaces...> |
| Typedef to this class. More... | |
| using | extend_interfaces_base = extend_interfaces< Interfaces...> |
| Typedef to the base of this class. More... | |
| using | iids = typename extend_interfaces_base::ext_iids |
| using | base_class = implements< Interfaces...> |
| Typedef to this class. More... | |
| using | extend_interfaces_base = extend_interfaces< Interfaces...> |
| Typedef to the base of this class. More... | |
| using | iids = typename extend_interfaces_base::ext_iids |
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... | |
Protected Attributes inherited from implements< Interfaces > | |
| unsigned long | m_refCount = 0 |
| Reference counter. More... | |
This class constitutes the core of the XML based FileCatalog API for POOL.
It uses the DOM model and the external XercesC library for parsing.
Definition at line 25 of file XMLFileCatalog.h.
|
protected |
Definition at line 27 of file XMLFileCatalog.h.
| XMLFileCatalog::XMLFileCatalog | ( | CSTR | url, |
| IMessageSvc * | m | ||
| ) |
Create a catalog file, initialization of XercesC.
Definition at line 205 of file XMLFileCatalog.cpp.
|
virtualdefault |
Destructor,.
|
private |
Definition at line 303 of file XMLFileCatalog.cpp.
|
virtual |
Save DOM catalog to file.
Definition at line 459 of file XMLFileCatalog.cpp.
|
inlinevirtual |
|
virtual |
Catalog interface.
Create file identifier using UUID mechanism.
Create file identifier using UUID mechanism
Definition at line 212 of file XMLFileCatalog.cpp.
|
virtual |
Delete FileID Node from the catalog.
Definition at line 349 of file XMLFileCatalog.cpp.
|
inlinevirtual |
|
inlinevirtual |
Drop all metadata of one FID.
Definition at line 81 of file XMLFileCatalog.h.
Drop specified metadata item.
Definition at line 334 of file XMLFileCatalog.cpp.
|
private |
Definition at line 343 of file XMLFileCatalog.cpp.
|
inlinevirtual |
Return the status of a FileID.
Definition at line 59 of file XMLFileCatalog.h.
|
inlinevirtual |
Return the status of a logical file name.
Definition at line 55 of file XMLFileCatalog.h.
|
inlinevirtual |
Return the status of a physical file name.
Definition at line 51 of file XMLFileCatalog.h.
|
private |
Definition at line 216 of file XMLFileCatalog.cpp.
|
virtual |
Dump all file Identifiers.
Definition at line 276 of file XMLFileCatalog.cpp.
|
private |
Definition at line 490 of file XMLFileCatalog.cpp.
|
virtual |
Dump all logical file names of the catalog associate to the FileID.
Definition at line 289 of file XMLFileCatalog.cpp.
|
virtual |
Dump all MetaData of the catalog for a given file ID.
Definition at line 295 of file XMLFileCatalog.cpp.
Access metadata item.
Definition at line 329 of file XMLFileCatalog.cpp.
|
virtual |
Dump all physical file names of the catalog and their attributes associate to the FileID.
Definition at line 283 of file XMLFileCatalog.cpp.
|
private |
It creates a new node File with name = fid in the XML file catalog
Definition at line 366 of file XMLFileCatalog.cpp.
|
virtual |
Parse the DOM tree of the XML catalog.
Definition at line 230 of file XMLFileCatalog.cpp.
|
private |
Definition at line 261 of file XMLFileCatalog.cpp.
|
inlinevirtual |
Lookup file identifier by logical file name.
Definition at line 57 of file XMLFileCatalog.h.
|
inlinevirtual |
Lookup file identifier by physical file name.
Definition at line 53 of file XMLFileCatalog.h.
|
private |
Definition at line 222 of file XMLFileCatalog.cpp.
|
inlinevirtual |
|
virtual |
Create a FileID and Node.
Definition at line 355 of file XMLFileCatalog.cpp.
Create a FileID and Node of the logical file name with all the attributes.
Definition at line 431 of file XMLFileCatalog.cpp.
Create a FileID and Node of the physical file name with all the attributes.
Definition at line 401 of file XMLFileCatalog.cpp.
|
inlinevirtual |
Save DOM catalog to file.
Definition at line 45 of file XMLFileCatalog.h.
Insert/update metadata item.
Definition at line 313 of file XMLFileCatalog.cpp.
|
private |
Definition at line 94 of file XMLFileCatalog.h.
|
private |
Definition at line 96 of file XMLFileCatalog.h.
|
private |
Definition at line 97 of file XMLFileCatalog.h.
|
private |
Definition at line 98 of file XMLFileCatalog.h.
|
private |
Definition at line 95 of file XMLFileCatalog.h.
|
private |
Definition at line 92 of file XMLFileCatalog.h.
|
mutableprivate |
Definition at line 93 of file XMLFileCatalog.h.