summaryrefslogtreecommitdiff
path: root/TAO/tao/Connection_Handler.cpp
diff options
context:
space:
mode:
authoroci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-03-17 00:53:51 +0000
committeroci <oci@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-03-17 00:53:51 +0000
commit4d17a14b71a4cbcc0edde54c00772b3a3bdce55e (patch)
treec67ee2b9dad64ae3ea6e9b418a7fcd3300e5b771 /TAO/tao/Connection_Handler.cpp
parent328d5e3ba10ab70711af60dbd3413791372806b6 (diff)
downloadATCD-4d17a14b71a4cbcc0edde54c00772b3a3bdce55e.tar.gz
ChangeLogTag: Fri Mar 16 18:25:54 2001 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'TAO/tao/Connection_Handler.cpp')
-rw-r--r--TAO/tao/Connection_Handler.cpp59
1 files changed, 12 insertions, 47 deletions
diff --git a/TAO/tao/Connection_Handler.cpp b/TAO/tao/Connection_Handler.cpp
index 85897954427..acf4c6c9b13 100644
--- a/TAO/tao/Connection_Handler.cpp
+++ b/TAO/tao/Connection_Handler.cpp
@@ -15,9 +15,8 @@ ACE_RCSID(tao, Connection_Handler, "$Id$")
TAO_Connection_Handler::TAO_Connection_Handler (TAO_ORB_Core *orb_core)
:orb_core_ (orb_core),
+ transport_ (0),
tss_resources_ (orb_core->get_tss_resources ()),
- ref_count_ (1),
- cache_map_entry_ (0),
is_registered_ (0)
{
}
@@ -29,55 +28,11 @@ TAO_Connection_Handler::~TAO_Connection_Handler (void)
// nobody tries to access these
this->orb_core_ = 0;
this->tss_resources_ = 0;
- this->cache_map_entry_ = 0;
+ TAO_Transport::release (this->transport_);
}
int
-TAO_Connection_Handler::purge_entry (void)
-{
- int retval =
- this->orb_core_->connection_cache ().purge_entry (this->cache_map_entry_);
-
- this->cache_map_entry_ = 0;
-
- // Decrement our reference count as we have been removed from the
- // cache map.
- this->decr_ref_count ();
-
- return retval;
-}
-
-void
-TAO_Connection_Handler::mark_invalid (void)
-{
- if (this->cache_map_entry_)
- this->cache_map_entry_->int_id_.recycle_state
- (ACE_RECYCLABLE_PURGABLE_BUT_NOT_IDLE);
-}
-
-
-int
-TAO_Connection_Handler::make_idle (void)
-{
- return
- this->orb_core_->connection_cache ().make_idle (this->cache_map_entry_);
-}
-
-int
-TAO_Connection_Handler::recache_handler (TAO_Connection_Descriptor_Interface *desc)
-{
- // First purge our entry
- this->orb_core_->connection_cache ().purge_entry (this->cache_map_entry_);
-
- // Then add ourselves to the cache
- return this->orb_core_->connection_cache ().cache_handler (desc,
- this);
-}
-
-
-
-int
TAO_Connection_Handler::set_socket_option (ACE_SOCK &sock,
int snd_size,
int rcv_size)
@@ -166,3 +121,13 @@ TAO_Connection_Handler::svc_i (void)
return result;
}
+
+void
+TAO_Connection_Handler::transport (TAO_Transport* transport)
+{
+ if (this->transport_ != 0) {
+ this->transport_->connection_handler_closing ();
+ }
+
+ this->transport_ = TAO_Transport::_duplicate (transport);
+}