1 #ifndef FWCore_Catalog_FileLocator_h 2 #define FWCore_Catalog_FileLocator_h 11 #include <boost/property_tree/ptree.hpp> 19 unsigned iCatalog = 0,
41 typedef std::vector<Rule>
Rules;
80 #endif // FWCore_Catalog_FileLocator_h ProtocolRules m_directRules_trivialCatalog
std::map< std::string, Rules > ProtocolRules
FileLocator(edm::CatalogAttributes const &catAttr, unsigned iCatalog=0, std::string const &storageDescriptionPath=std::string())
static int s_numberOfInstances
std::string m_destination
std::string pfn(std::string const &ilfn, edm::CatalogType catType) const
static std::string const input
Container::value_type value_type
ProtocolRules m_inverseRules
void init_trivialCatalog(std::string const &catUrl, unsigned iCatalog)
void init(edm::CatalogAttributes const &input_dataCatalog, unsigned iCatalog, std::string const &storageDescriptionPath)
ProtocolRules m_directRules
std::vector< Rule > Rules
std::vector< std::string > m_protocols
void parseRuleTrivialCatalog(tinyxml2::XMLElement *ruleNode, ProtocolRules &rules)
void parseRule(boost::property_tree::ptree::value_type const &storageRule, std::string const &protocol, ProtocolRules &rules)
std::string convert(std::string const &input, ProtocolRules const &rules, bool direct) const
std::string applyRules(ProtocolRules const &protocolRules, std::string const &protocol, std::string const &destination, bool direct, std::string name) const
std::regex destinationMatch