summaryrefslogtreecommitdiff
path: root/TAO/tao/Connection_Handler.inl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Connection_Handler.inl')
-rw-r--r--TAO/tao/Connection_Handler.inl37
1 files changed, 37 insertions, 0 deletions
diff --git a/TAO/tao/Connection_Handler.inl b/TAO/tao/Connection_Handler.inl
index 2fcd9d21b75..6e982ced480 100644
--- a/TAO/tao/Connection_Handler.inl
+++ b/TAO/tao/Connection_Handler.inl
@@ -30,6 +30,43 @@ TAO_Connection_Handler::transport (void)
return this->transport_;
}
+ACE_INLINE int
+TAO_Connection_Handler::is_connect_complete (void) const
+{
+ return this->successful () ||
+ this->error_detected ();
+}
+
+ACE_INLINE int
+TAO_Connection_Handler::is_connect_successful (void) const
+{
+ return this->error_detected ();
+}
+
+ACE_INLINE int
+TAO_Connection_Handler::incr_refcount (void)
+{
+ ACE_GUARD_RETURN (ACE_Lock,
+ ace_mon,
+ *this->pending_upcall_lock_, -1);
+
+ return ++this->reference_count_;
+}
+
+ACE_INLINE void
+TAO_Connection_Handler::decr_refcount (void)
+{
+ {
+ ACE_GUARD (ACE_Lock,
+ ace_mon,
+ *this->pending_upcall_lock_);
+
+ --this->reference_count_;
+ }
+
+ if (this->reference_count_ == 0)
+ this->handle_close_i ();
+}
ACE_INLINE int
TAO_Connection_Handler::incr_pending_upcalls (void)