Finder Class Reference

Inheritance diagram for Finder:
NONCOPYABLE FinderMessengerManager

List of all members.

Public Types

typedef list
< FinderMessengerBase * > 
typedef map
< FinderMessengerBase
*, FinderXrlCommandQueue
typedef map< string, FinderTargetTargetTable
typedef map< string, FinderClassClassTable
typedef list< string > Resolveables
typedef list< FinderEventEventQueue

Public Member Functions

 Finder (EventLoop &e)
XrlCmdMapcommands ()
bool add_target (const string &class_name, const string &instance_name, bool singleton, const string &cookie)
bool active_messenger_represents_target (const string &target_name) const
bool remove_target (const string &target_name)
bool remove_target_with_cookie (const string &cookie)
bool set_target_enabled (const string &target_name, bool en)
bool target_enabled (const string &target_name, bool &is_enabled) const
bool add_resolution (const string &target, const string &key, const string &value)
bool remove_resolutions (const string &target, const string &key)
bool add_class_watch (const string &target, const string &class_to_watch, string &err_msg)
bool remove_class_watch (const string &target, const string &class_to_watch)
bool add_instance_watch (const string &target, const string &instance_to_watch, string &err_msg)
bool remove_instance_watch (const string &target, const string &instance_to_watch)
const string & primary_instance (const string &instance_or_class) const
const Resolveables * resolve (const string &target, const string &key)
size_t messengers () const
bool fill_target_list (list< string > &target_list) const
bool fill_targets_xrl_list (const string &target, list< string > &xrl_list) const

Protected Member Functions

void messenger_active_event (FinderMessengerBase *)
 Method called before Xrl is dispatched.
void messenger_inactive_event (FinderMessengerBase *)
 Method called immediately after Xrl is dispatched.
void messenger_stopped_event (FinderMessengerBase *)
 Method called when Messenger is unable to continue.
void messenger_birth_event (FinderMessengerBase *)
 Method called by messenger constructor.
void messenger_death_event (FinderMessengerBase *)
 Method called by messenger destructor.
bool manages (const FinderMessengerBase *) const
 Method called to tell if FinderMessengerManager instance manages a particular messenger.
void log_arrival_event (const string &class_name, const string &instance_name)
 Buffer event of instance becoming externally visible.
void log_departure_event (const string &class_name, const string &instance_name)
 Buffer event of instance ceasing to be externally visible.
void announce_xrl_departure (const string &target, const string &key)
void announce_events_externally ()
void announce_class_instances (const string &recv_instance_name, const string &class_name)
void announce_new_instance (const string &recv_instance_name, FinderXrlCommandQueue &out_queue, const string &class_name, const string &instance_name)
bool hello_timer_running () const
void start_hello_timer ()
bool send_hello ()
void remove_target (TargetTable::iterator &i)
bool add_class_instance (const string &class_name, const string &instance, bool singleton)
bool remove_class_instance (const string &class_name, const string &instance)
bool class_default_instance (const string &class_name, string &instance) const
bool class_exists (const string &class_name) const
EventLoopeventloop () const

Protected Attributes

XrlCmdMap _cmds
FinderMessengerList _messengers
TargetTable _targets
ClassTable _classes
OutQueueTable _out_queues
EventQueue _event_queue
XorpTimer _hello

Member Function Documentation

void Finder::messenger_stopped_event ( FinderMessengerBase ) [protected, virtual]

Method called when Messenger is unable to continue.

For instance, network connection lost.

Implements FinderMessengerManager.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations