metaproxy  1.15.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

◆ ~Pos()

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

Definition at line 496 of file router_flexml.cpp.

497 {
498 }

Member Function Documentation

◆ clone()

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

Definition at line 487 of file router_flexml.cpp.

References metaproxy_1::RouterFleXML::m_p.

488 {
489  mp::RouterFleXML::Pos *p = new mp::RouterFleXML::Pos;
490  p->m_filter_it = m_filter_it;
491  p->m_route_it = m_route_it;
492  p->m_p = m_p;
493  return p;
494 }
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

◆ move()

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  m_route_it = m_p->m_routes.find(route);
458  if (m_route_it == m_p->m_routes.end())
459  {
460  yaz_log(YLOG_FATAL, "no such route %s", route);
461  return 0;
462  }
463  m_filter_it = m_route_it->second.m_list.begin();
464  }
465  if (m_filter_it == m_route_it->second.m_list.end())
466  return 0;
467  const mp::filter::Base *f = (*m_filter_it).get();
468  m_filter_it++;
469  return f;
470 }
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

◆ m_filter_it

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.

◆ m_p

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

Definition at line 89 of file router_flexml.cpp.

◆ m_route_it

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: