diff options
Diffstat (limited to 'apps/Gateway/Gateway/Event_Forwarding_Discriminator.h')
-rw-r--r-- | apps/Gateway/Gateway/Event_Forwarding_Discriminator.h | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/apps/Gateway/Gateway/Event_Forwarding_Discriminator.h b/apps/Gateway/Gateway/Event_Forwarding_Discriminator.h index 35a594b61b5..9b7531c1f46 100644 --- a/apps/Gateway/Gateway/Event_Forwarding_Discriminator.h +++ b/apps/Gateway/Gateway/Event_Forwarding_Discriminator.h @@ -20,29 +20,27 @@ #include "ace/Map_Manager.h" #include "Concurrency_Strategies.h" #include "Event.h" -#include "Dispatch_Set.h" +#include "Consumer_Dispatch_Set.h" class Event_Forwarding_Discriminator { // = TITLE - // Define a generic consumer map based on the ACE Map_Manager. - // - // = DESCRIPTION - // This class makes it easier to use the Map_Manager. + // Map events to the set of Consumer_Proxies that have subscribed + // to receive the event. public: - int bind (Event_Addr event, Dispatch_Set *Dispatch_Set); - // Associate Event with the Dispatch_Set. + int bind (Event_Key event, Consumer_Dispatch_Set *cds); + // Associate Event with the Consumer_Dispatch_Set. - int find (Event_Addr event, Dispatch_Set *&Dispatch_Set); - // Break any association of EXID. - - int unbind (Event_Addr event); + int unbind (Event_Key event); // Locate EXID and pass out parameter via INID. If found, // return 0, else -1. + int find (Event_Key event, Consumer_Dispatch_Set *&cds); + // Break any association of EXID. + public: - ACE_Map_Manager<Event_Addr, Dispatch_Set *, MAP_MUTEX> map_; - // Map that associates Event Addrs (external ids) with Dispatch_Set *'s + ACE_Map_Manager<Event_Key, Consumer_Dispatch_Set *, MAP_MUTEX> map_; + // Map that associates Event Addrs (external ids) with Consumer_Dispatch_Set *'s // <internal IDs>. }; @@ -52,11 +50,11 @@ class Event_Forwarding_Discriminator_Iterator // Define an iterator for the Consumer Map. public: Event_Forwarding_Discriminator_Iterator (Event_Forwarding_Discriminator &mm); - int next (Dispatch_Set *&); + int next (Consumer_Dispatch_Set *&); int advance (void); private: - ACE_Map_Iterator<Event_Addr, Dispatch_Set *, MAP_MUTEX> map_iter_; + ACE_Map_Iterator<Event_Key, Consumer_Dispatch_Set *, MAP_MUTEX> map_iter_; // Map we are iterating over. }; #endif /* _CONSUMER_MAP_H */ |