summaryrefslogtreecommitdiff
path: root/TAO/tao/Connection_Handler.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Connection_Handler.h')
-rw-r--r--TAO/tao/Connection_Handler.h41
1 files changed, 11 insertions, 30 deletions
diff --git a/TAO/tao/Connection_Handler.h b/TAO/tao/Connection_Handler.h
index 6401e86aca6..9394e52c1ac 100644
--- a/TAO/tao/Connection_Handler.h
+++ b/TAO/tao/Connection_Handler.h
@@ -17,12 +17,12 @@
#include "ace/pre.h"
#include "LF_CH_Event.h"
+#include "ace/Event_Handler.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
-
class TAO_ORB_Core;
class TAO_ORB_Core_TSS_Resources;
class TAO_Transport;
@@ -51,23 +51,23 @@ public:
/// Constructor
TAO_Connection_Handler (TAO_ORB_Core *orb_core);
+ /// Destructor
+ virtual ~TAO_Connection_Handler (void);
+
/// Return the underlying transport object
TAO_Transport *transport (void);
/// Set the underlying transport object
void transport (TAO_Transport* transport);
- /// Is the state final?
- int is_finalized (void);
+ /// Is the handler closed?
+ int is_closed (void);
- /// Increment and decrement the refcount. The object is deleted when
- /// the refcount reaches zero.
- long incr_refcount (void);
- long decr_refcount (void);
+ /// Is the handler open?
+ int is_open (void);
- /// Set the handler in <CODE>LF_EVENT_CONNECTION_CLOSE_WAIT </CODE>
- /// state
- void connection_close_wait (void);
+ /// Is the handler in the process of being connected?
+ int is_connecting (void);
/// Close the underlying connection.
/**
@@ -96,13 +96,6 @@ public:
protected:
- /// Destructor
- /**
- * Protected destructor to enforce proper memory management through
- * the reference counting mechanism.
- */
- virtual ~TAO_Connection_Handler (void);
-
/// Return our TAO_ORB_Core pointer
TAO_ORB_Core *orb_core (void);
@@ -125,11 +118,6 @@ protected:
* place.
*/
- /// Implement the handle_close() callback
- virtual int handle_close_eh (ACE_HANDLE h,
- unsigned long reactor_mask,
- ACE_Event_Handler * eh);
-
/// Implement the handle_output() callback
int handle_output_eh (ACE_HANDLE h, ACE_Event_Handler * eh);
@@ -140,8 +128,7 @@ protected:
/// also Event_Handlers.
int close_connection_eh (ACE_Event_Handler * eh);
- /// Release the OS resources related to this handler, used in
- /// handle_close_eh()
+ /// Release the OS resources related to this handler.
virtual int release_os_resources (void);
/// Pre-invocation hook for I/O operations (handle_input() &
@@ -170,12 +157,6 @@ private:
/// Cached tss resources of the ORB that activated this object.
TAO_ORB_Core_TSS_Resources *tss_resources_;
- /// Pretty obvious
- long reference_count_;
-
- /// Lock for the reference count
- ACE_Lock *refcount_lock_;
-
/// Internal state lock, needs to be separate from the reference
/// count / pending upcalls lock because they interleave.
ACE_Lock * lock_;