00001 // $Id: Event_Map_Entry_T.cpp 76589 2007-01-25 18:04:11Z elliott_c $ 00002 00003 #ifndef TAO_Notify_EVENT_MAP_ENTRY_CPP 00004 #define TAO_Notify_EVENT_MAP_ENTRY_CPP 00005 00006 #include "orbsvcs/Notify/Event_Map_Entry_T.h" 00007 00008 #if ! defined (__ACE_INLINE__) 00009 #include "orbsvcs/Notify/Event_Map_Entry_T.inl" 00010 #endif /* __ACE_INLINE__ */ 00011 00012 ACE_RCSID (Notify, 00013 TAO_Notify_Event_Map_Entry_T, 00014 "$Id: Event_Map_Entry_T.cpp 76589 2007-01-25 18:04:11Z elliott_c $") 00015 00016 #include "orbsvcs/ESF/ESF_Proxy_Collection.h" 00017 #include "orbsvcs/Notify/Properties.h" 00018 #include "orbsvcs/Notify/Factory.h" 00019 00020 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00021 00022 template <class PROXY> 00023 TAO_Notify_Event_Map_Entry_T<PROXY>::TAO_Notify_Event_Map_Entry_T (void) 00024 : collection_ (0), count_ (0), usage_count_ (1) 00025 { 00026 } 00027 00028 template <class PROXY> 00029 TAO_Notify_Event_Map_Entry_T<PROXY>::~TAO_Notify_Event_Map_Entry_T () 00030 { 00031 delete collection_; 00032 } 00033 00034 template <class PROXY> void 00035 TAO_Notify_Event_Map_Entry_T<PROXY>::init (void) 00036 { 00037 TAO_Notify_Factory* factory = TAO_Notify_PROPERTIES::instance ()->factory (); 00038 00039 factory->create (collection_); 00040 } 00041 00042 template <class PROXY> void 00043 TAO_Notify_Event_Map_Entry_T<PROXY>::connected (PROXY* proxy) 00044 { 00045 this->collection_->connected (proxy); 00046 ++count_; 00047 } 00048 00049 template <class PROXY> void 00050 TAO_Notify_Event_Map_Entry_T<PROXY>::disconnected (PROXY* proxy) 00051 { 00052 this->collection_->disconnected (proxy); 00053 --count_; 00054 } 00055 00056 TAO_END_VERSIONED_NAMESPACE_DECL 00057 00058 #endif /* TAO_Notify_EVENT_MAP_ENTRY_CPP */