![]() |
The Gaudi Framework
v27r1
|
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 |
![]() | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
![]() | |
typedef Gaudi::PluginService::Factory< IService *, const std::string &, ISvcLocator * > | Factory |
![]() | |
using | base_class = CommonMessaging |
![]() | |
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... | |
![]() | |
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... | |
![]() | |
const std::string & | name () const override |
Retrieve name of the service. More... | |
StatusCode | configure () override |
StatusCode | initialize () override |
StatusCode | start () override |
StatusCode | stop () override |
StatusCode | finalize () override |
StatusCode | terminate () override |
Gaudi::StateMachine::State | FSMState () const override |
Gaudi::StateMachine::State | targetFSMState () const override |
StatusCode | reinitialize () override |
StatusCode | restart () override |
StatusCode | sysInitialize () override |
Initialize Service. More... | |
StatusCode | sysStart () override |
Initialize Service. More... | |
StatusCode | sysStop () override |
Initialize Service. More... | |
StatusCode | sysFinalize () override |
Finalize Service. More... | |
StatusCode | sysReinitialize () override |
Re-initialize the Service. More... | |
StatusCode | sysRestart () override |
Re-initialize the Service. More... | |
StatusCode | setProperty (const Property &p) override |
StatusCode | setProperty (const std::string &s) override |
StatusCode | setProperty (const std::string &n, const std::string &v) override |
StatusCode | getProperty (Property *p) const override |
const Property & | getProperty (const std::string &name) const override |
StatusCode | getProperty (const std::string &n, std::string &v) const override |
const std::vector< Property * > & | getProperties () const override |
bool | hasProperty (const std::string &name) const override |
template<class TYPE > | |
StatusCode | setProperty (const std::string &name, const TYPE &value) |
set the property form the value More... | |
Service (std::string name, ISvcLocator *svcloc) | |
Standard Constructor. More... | |
SmartIF< ISvcLocator > & | serviceLocator () const override |
Retrieve pointer to service locator. More... | |
StatusCode | setProperties () |
Method for setting declared properties to the values specified for the job. More... | |
template<class T > | |
StatusCode | service (const std::string &name, const T *&psvc, bool createIf=true) const |
Access a service by name, creating it if it doesn't already exist. More... | |
template<class T > | |
StatusCode | service (const std::string &name, T *&psvc, bool createIf=true) const |
template<typename IFace = IService> | |
SmartIF< IFace > | service (const std::string &name, bool createIf=true) const |
template<class T > | |
StatusCode | service (const std::string &svcType, const std::string &svcName, T *&psvc) const |
Access a service by name and type, creating it if it doesn't already exist. More... | |
template<class T > | |
Property * | declareProperty (const std::string &name, T &property, const std::string &doc="none") const |
Declare the named property. More... | |
Property * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const |
Declare remote named properties. More... | |
template<class T > | |
StatusCode | declarePrivateTool (ToolHandle< T > &handle, std::string toolTypeAndName="", bool createIf=true) |
Declare used Private tool. More... | |
template<class T > | |
StatusCode | declarePublicTool (ToolHandle< T > &handle, std::string toolTypeAndName="", bool createIf=true) |
Declare used Public tool. More... | |
SmartIF< IAuditorSvc > & | auditorSvc () const |
The standard auditor service.May not be invoked before sysInitialize() has been invoked. More... | |
![]() | |
virtual | ~CommonMessagingBase ()=default |
Virtual destructor. More... | |
SmartIF< IMessageSvc > & | msgSvc () const |
The standard message service. More... | |
MsgStream & | msgStream () const |
Return an uninitialized MsgStream. More... | |
MsgStream & | msgStream (const MSG::Level level) const |
Predefined configurable message stream for the efficient printouts. More... | |
MsgStream & | always () const |
shortcut for the method msgStream(MSG::ALWAYS) More... | |
MsgStream & | fatal () const |
shortcut for the method msgStream(MSG::FATAL) More... | |
MsgStream & | err () const |
shortcut for the method msgStream(MSG::ERROR) More... | |
MsgStream & | error () const |
shortcut for the method msgStream(MSG::ERROR) More... | |
MsgStream & | warning () const |
shortcut for the method msgStream(MSG::WARNING) More... | |
MsgStream & | info () const |
shortcut for the method msgStream(MSG::INFO) More... | |
MsgStream & | debug () const |
shortcut for the method msgStream(MSG::DEBUG) More... | |
MsgStream & | verbose () const |
shortcut for the method msgStream(MSG::VERBOSE) More... | |
MsgStream & | msg () const |
shortcut for the method msgStream(MSG::INFO) More... | |
MSG::Level | msgLevel () const |
get the output level from the embedded MsgStream More... | |
MSG::Level | outputLevel () const __attribute__((deprecated)) |
Backward compatibility function for getting the output level. More... | |
bool | msgLevel (MSG::Level lvl) const |
get the output level from the embedded MsgStream 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 |
![]() | |
~Service () override | |
Standard Destructor. More... | |
int | outputLevel () const |
get the Service's output level More... | |
![]() | |
void | updateMsgStreamOutputLevel (int level) |
Update the output level of the cached MsgStream. More... | |
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... | |
Additional Inherited Members | |
![]() | |
IntegerProperty | m_outputLevel = MSG::NIL |
Service output level. More... | |
Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE |
Service state. More... | |
Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE |
Service state. 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 31 of file MultiFileCatalog.h.
|
protected |
Definition at line 30 of file MultiFileCatalog.h.
|
protected |
Definition at line 29 of file MultiFileCatalog.h.
typedef Service::Factory Gaudi::MultiFileCatalog::Factory |
Definition at line 26 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 41 of file MultiFileCatalog.h.
|
inlineprotected |
Definition at line 49 of file MultiFileCatalog.h.
|
inlineprotected |
Definition at line 33 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 117 of file MultiFileCatalog.cpp.
|
override |
Add new catalog identified by reference to the existing ones.
Definition at line 153 of file MultiFileCatalog.cpp.
|
inlineoverride |
Access catalog container.
Definition at line 146 of file MultiFileCatalog.h.
|
inlineoverride |
Access catalog container (CONST)
Definition at line 148 of file MultiFileCatalog.h.
|
override |
Save DOM catalog to file.
Definition at line 244 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 110 of file MultiFileCatalog.h.
|
override |
Check if the catalog should be updated.
Definition at line 236 of file MultiFileCatalog.cpp.
|
inlineoverride |
Drop all metadata of one FID.
Definition at line 128 of file MultiFileCatalog.h.
Drop specified metadata item.
Definition at line 131 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of a FileID.
Definition at line 97 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of a logical file name.
Definition at line 91 of file MultiFileCatalog.h.
|
inlineoverride |
Return the status of physical file name.
Definition at line 85 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 88 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 107 of file MultiFileCatalog.h.
|
inlineoverride |
Dump all logical file names of the catalog associate to the FileID.
Definition at line 103 of file MultiFileCatalog.h.
|
inlineoverride |
Dump all MetaData of the catalog for a given file ID.
Definition at line 120 of file MultiFileCatalog.h.
Access metadata item.
Definition at line 210 of file MultiFileCatalog.cpp.
|
inlineoverride |
Dump all physical file names of the catalog and their attributes associate to the FileID.
Definition at line 100 of file MultiFileCatalog.h.
|
private |
Find catalog by connect string.
Definition at line 98 of file MultiFileCatalog.cpp.
|
override |
Parse the DOM tree of the XML catalog.
Definition at line 241 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 94 of file MultiFileCatalog.h.
|
inlineoverride |
Lookup file identifier by physical file name.
Definition at line 88 of file MultiFileCatalog.h.
|
private |
Definition at line 109 of file MultiFileCatalog.cpp.
|
private |
simple property handle to allow interactive modification of list of the file catalogs
Definition at line 250 of file MultiFileCatalog.cpp.
|
override |
Check if the catalog is read-only.
Definition at line 231 of file MultiFileCatalog.cpp.
|
inlineoverride |
Create a FileID and DOM Node.
Definition at line 117 of file MultiFileCatalog.h.
Create a FileID and DOM Node of the LFN with all the attributes.
Definition at line 225 of file MultiFileCatalog.cpp.
Create a FileID and DOM Node of the PFN with all the attributes.
Definition at line 219 of file MultiFileCatalog.cpp.
|
override |
Remove catalog identified by name from the existing ones.
Definition at line 162 of file MultiFileCatalog.cpp.
|
override |
Remove catalog identified by reference from the existing ones.
Definition at line 171 of file MultiFileCatalog.cpp.
|
override |
Save DOM catalog to file.
Definition at line 247 of file MultiFileCatalog.cpp.
Insert/update metadata item.
Definition at line 125 of file MultiFileCatalog.h.
|
override |
Define the writable catalog identified by reference.
Definition at line 184 of file MultiFileCatalog.cpp.
|
override |
Define the writable catalog identified by name.
Definition at line 200 of file MultiFileCatalog.cpp.
|
inlineoverride |
Access to the (first) writable file catalog.
Definition at line 150 of file MultiFileCatalog.h.
|
private |
Property : Container with catalog names.
Definition at line 173 of file MultiFileCatalog.h.
|
private |
Container with references to known catalogs.
Definition at line 171 of file MultiFileCatalog.h.
|
private |
BACKUP:: Container with catalog names.
Definition at line 177 of file MultiFileCatalog.h.
|
private |
Flag to indicate if catalog is started.
Definition at line 175 of file MultiFileCatalog.h.