diff options
Diffstat (limited to 'TAO/tao/Strategies/SHMIOP_Connection_Handler.h')
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connection_Handler.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/TAO/tao/Strategies/SHMIOP_Connection_Handler.h b/TAO/tao/Strategies/SHMIOP_Connection_Handler.h index a75209b2c9e..be17915c0bd 100644 --- a/TAO/tao/Strategies/SHMIOP_Connection_Handler.h +++ b/TAO/tao/Strategies/SHMIOP_Connection_Handler.h @@ -84,6 +84,9 @@ public: virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE, ACE_Reactor_Mask = ACE_Event_Handler::NULL_MASK); + /// Return the underlying transport object + TAO_Transport *transport (void); + /// Return the underlying handle virtual ACE_HANDLE fetch_handle (void); @@ -91,8 +94,11 @@ public: virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg = 0); + /// Object termination hook. + virtual int close (u_long flags = 0); + /// Add ourselves to Cache. - int add_transport_to_cache (void); + int add_handler_to_cache (void); protected: @@ -110,11 +116,14 @@ protected: private: - /// Count nested upcalls on this + /// Transport object reference. + TAO_SHMIOP_Transport transport_; + + /// Reference count.It is used to count nested upcalls on this /// svc_handler i.e., the connection can close during nested upcalls, /// you should not delete the svc_handler until the stack unwinds /// from the nested upcalls. - u_long pending_upcalls_; + u_long refcount_; }; |