#include "commonObjects.h" #include "appEngine.h" #include "xmlObjectLoader.h" #include "xmlScriptParser.h" CommonObjects::~CommonObjects() { rowSets.clear(); datasources.clear(); } RowSetPtr CommonObjects::getSource(const std::string & name) const { RowSets::const_iterator i = rowSets.find(name); if (i != rowSets.end()) { return i->second; } throw CommonObjects::DataSourceNotFound(name); } CommonObjects::DataSources::const_iterator CommonObjects::loadDataSource(const std::string & name) const { XmlScriptParser xml(ApplicationEngine::getCurrent()->env()->getDatasourceRoot(), name, true); LoaderBase loader(true); loader.supportedStorers.insert(Storer::into(&datasources)); loader.collectAll(xml.get_document()->get_root_node(), false); DataSources::const_iterator i = datasources.find(name); if (i == datasources.end()) { throw DataSourceNotFound(name); } return i; }