1 #ifndef GAUDIUTILS_XMLFILECATALOG_H
2 #define GAUDIUTILS_XMLFILECATALOG_H
5 #include "xercesc/dom/DOMElement.hpp"
6 #include "xercesc/dom/DOMDocument.hpp"
7 #include "xercesc/sax/ErrorHandler.hpp"
8 #include "xercesc/parsers/XercesDOMParser.hpp"
27 typedef const std::string&
CSTR;
43 virtual void commit();
61 virtual void getPFN(
CSTR fid, Files& files)
const;
63 virtual void getLFN(
CSTR fid, Files& files)
const;
65 virtual void getFID(Strings& fids)
const;
67 virtual void deleteFID(
CSTR FileID)
const;
69 virtual void registerPFN(
CSTR fid,
CSTR pfn,
CSTR ftype)
const;
71 virtual void registerLFN(
CSTR fid,
CSTR lfn)
const;
73 virtual void registerFID(
CSTR fid)
const;
75 virtual void getMetaData(
CSTR fid, Attributes& attr)
const;
77 virtual std::string getMetaDataItem(
CSTR fid,
CSTR name)
const;
79 virtual void setMetaData(
CSTR fid,
CSTR name,
CSTR value)
const;
83 virtual void dropMetaData(
CSTR fid,
CSTR attr)
const;
85 xercesc::DOMDocument* getDoc(
bool throw_if_no_exists=
true)
const;
86 std::string getfile(
bool create);
87 void printError(
CSTR msg,
bool throw_exc=
true)
const;
88 std::string lookupFID(
CSTR lfn)
const;
89 xercesc::DOMNode* element(
CSTR fid,
bool print_err=
true)
const;
90 xercesc::DOMNode* child(xercesc::DOMNode*
par,
CSTR tag,
CSTR attr=
"",
CSTR val=
"")
const;
91 std::pair<xercesc::DOMElement*, xercesc::DOMElement*> i_registerFID(
CSTR fid)
const;