X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Frouter_flexml.hpp;h=aa6812579fb9eb4ebb29c6a372624f47f4df8807;hb=73628df41c26faaad94a3e66302dee7cb6a7e7b6;hp=1eae3e8c477c7bfa0db9594ae02d1c64f4f73ebc;hpb=5cc9145ea95e0a778bef7ad2a0ea9c1a4824bcc4;p=metaproxy-moved-to-github.git diff --git a/src/router_flexml.hpp b/src/router_flexml.hpp index 1eae3e8..aa68125 100644 --- a/src/router_flexml.hpp +++ b/src/router_flexml.hpp @@ -1,4 +1,4 @@ -/* $Id: router_flexml.hpp,v 1.6 2005-11-10 23:10:42 adam Exp $ +/* $Id: router_flexml.hpp,v 1.12 2006-01-09 13:53:13 adam Exp $ Copyright (c) 2005, Index Data. %LICENSE% @@ -6,6 +6,8 @@ #include "router.hpp" +#include "factory_filter.hpp" + #include #include @@ -15,13 +17,20 @@ namespace yp2 class RouterFleXML : public yp2::Router { class Rep; + class Route; + class Pos; public: - RouterFleXML(std::string xmlconf); + RouterFleXML(std::string xmlconf, yp2::FactoryFilter &factory); + RouterFleXML(xmlDocPtr doc, yp2::FactoryFilter &factory); ~RouterFleXML(); - - virtual const filter::Base *move(const filter::Base *filter, - const Package *package) const; + + virtual RoutePos *createpos() const; + class XMLError : public std::runtime_error { + public: + XMLError(const std::string msg) : + std::runtime_error("XMLError : " + msg) {} ; + }; private: boost::scoped_ptr m_p; };