#include <EC_ObserverStrategy.h>
Inheritance diagram for TAO_EC_Reactive_ObserverStrategy:
Public Member Functions | |
TAO_EC_Reactive_ObserverStrategy (TAO_EC_Event_Channel_Base *ec, ACE_Lock *lock) | |
Constructor. | |
virtual | ~TAO_EC_Reactive_ObserverStrategy (void) |
Destructor. | |
Protected Member Functions | |
virtual void | consumer_qos_update (TAO_EC_ProxyPushSupplier *supplier ACE_ENV_ARG_DECL) |
Recompute EC consumer subscriptions and send them out to all observers. | |
virtual void | supplier_qos_update (TAO_EC_ProxyPushConsumer *consumer ACE_ENV_ARG_DECL) |
Recompute EC supplier publications and send them out to all observers. | |
int | create_observer_map (Observer_Map &map ACE_ENV_ARG_DECL) |
void | observer_not_exists (Observer_Entry &observer ACE_ENV_ARG_DECL) |
The observer doesn't exist anymore. |
This class simply keeps the information about the current list of observers, whenever the list of consumers and/or suppliers changes in queries the EC, computes the global subscription and/or publication list and sends the update message to all the observers. When an observer isn't reachable it is removed from the observer list.
It assumes ownership of the <lock>, but not of the Event_Channel.
|
Constructor.
|
|
Destructor.
|
|
Recompute EC consumer subscriptions and send them out to all observers.
Reimplemented from TAO_EC_Basic_ObserverStrategy. |
|
Copies all current observers into a map and passes it back to the caller through map.
|
|
The observer doesn't exist anymore.
|
|
Recompute EC supplier publications and send them out to all observers.
Reimplemented from TAO_EC_Basic_ObserverStrategy. |