metaproxy  1.13.0
Public Member Functions | Public Attributes | List of all members
metaproxy_1::RouterFleXML::Pos Class Reference
Inheritance diagram for metaproxy_1::RouterFleXML::Pos:
Inheritance graph
Collaboration diagram for metaproxy_1::RouterFleXML::Pos:
Collaboration graph

Public Member Functions

virtual const filter::Base * move (const char *route)
 
virtual RoutePos * clone ()
 
virtual ~Pos ()
 

Public Attributes

mp::RouterFleXML::Rep * m_p
 
std::map< std::string, RouterFleXML::Route >::iterator m_route_it
 
std::list< boost::shared_ptr< const mp::filter::Base > >::iterator m_filter_it
 

Detailed Description

Definition at line 84 of file router_flexml.cpp.

Constructor & Destructor Documentation

metaproxy_1::RouterFleXML::Pos::~Pos ( )
virtual

Definition at line 497 of file router_flexml.cpp.

498 {
499 }

Member Function Documentation

mp::RoutePos * metaproxy_1::RouterFleXML::Pos::clone ( )
virtual

Definition at line 488 of file router_flexml.cpp.

References metaproxy_1::RouterFleXML::m_p.

489 {
490  mp::RouterFleXML::Pos *p = new mp::RouterFleXML::Pos;
491  p->m_filter_it = m_filter_it;
492  p->m_route_it = m_route_it;
493  p->m_p = m_p;
494  return p;
495 }
std::list< boost::shared_ptr< const mp::filter::Base > >::iterator m_filter_it
std::map< std::string, RouterFleXML::Route >::iterator m_route_it
mp::RouterFleXML::Rep * m_p
const mp::filter::Base * metaproxy_1::RouterFleXML::Pos::move ( const char *  route)
virtual

Definition at line 453 of file router_flexml.cpp.

References metaproxy_1::RouterFleXML::m_p.

454 {
455  if (route && *route)
456  {
457  //std::cout << "move to " << route << "\n";
458  m_route_it = m_p->m_routes.find(route);
459  if (m_route_it == m_p->m_routes.end())
460  {
461  std::cout << "no such route " << route << "\n";
462  throw mp::XMLError("bad route " + std::string(route));
463  }
464  m_filter_it = m_route_it->second.m_list.begin();
465  }
466  if (m_filter_it == m_route_it->second.m_list.end())
467  return 0;
468  const mp::filter::Base *f = (*m_filter_it).get();
469  m_filter_it++;
470  return f;
471 }
std::list< boost::shared_ptr< const mp::filter::Base > >::iterator m_filter_it
std::map< std::string, RouterFleXML::Route >::iterator m_route_it
mp::RouterFleXML::Rep * m_p

Member Data Documentation

std::list<boost::shared_ptr <const mp::filter::Base> >::iterator metaproxy_1::RouterFleXML::Pos::m_filter_it

Definition at line 93 of file router_flexml.cpp.

mp::RouterFleXML::Rep* metaproxy_1::RouterFleXML::Pos::m_p

Definition at line 89 of file router_flexml.cpp.

std::map<std::string, RouterFleXML::Route>::iterator metaproxy_1::RouterFleXML::Pos::m_route_it

Definition at line 92 of file router_flexml.cpp.


The documentation for this class was generated from the following file: