summaryrefslogtreecommitdiff
path: root/TAO/tao/IIOP_Transport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/IIOP_Transport.cpp')
-rw-r--r--TAO/tao/IIOP_Transport.cpp270
1 files changed, 0 insertions, 270 deletions
diff --git a/TAO/tao/IIOP_Transport.cpp b/TAO/tao/IIOP_Transport.cpp
deleted file mode 100644
index cf1fcb4ec61..00000000000
--- a/TAO/tao/IIOP_Transport.cpp
+++ /dev/null
@@ -1,270 +0,0 @@
-// This may look like C, but it's really -*- C++ -*-
-// $Id$
-
-#include "tao/IIOP_Transport.h"
-#include "tao/GIOP.h"
-#include "tao/Connect.h"
-#include "tao/Timeprobe.h"
-
-#if defined (ACE_ENABLE_TIMEPROBES)
-
- static const char *TAO_Transport_Timeprobe_Description[] =
-{
- "IIOP_Client_Transport::send_request - start",
- "IIOP_Client_Transport::send_request - end",
- "IIOP_Transport::send - start",
- "IIOP_Transport::send - end",
- "IIOP_Transport::receive - start",
- "IIOP_Transport::recieve - end"
-};
-
-enum
-{
- TAO_IIOP_CLIENT_TRANSPORT_SEND_REQUEST_START = 1200,
- TAO_IIOP_CLIENT_TRANSPORT_SEND_REQUEST_END,
- TAO_IIOP_TRANSPORT_SEND_START,
- TAO_IIOP_TRANSPORT_SEND_END,
- TAO_IIOP_TRANSPORT_RECEIVE_START,
- TAO_IIOP_TRANSPORT_RECEIVE_END
-};
-
-
-// Setup Timeprobes
-ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_Transport_Timeprobe_Description,
- TAO_IIOP_CLIENT_TRANSPORT_SEND_REQUEST_START);
-
-#endif /* ACE_ENABLE_TIMEPROBES */
-
-
-TAO_IIOP_Transport::TAO_IIOP_Transport (TAO_IIOP_Handler_Base* handler)
- : handler_(handler),
- tag_(TAO_IOP_TAG_INTERNET_IOP)
-{
-}
-
-TAO_IIOP_Transport::~TAO_IIOP_Transport (void)
-{
-}
-
-TAO_IIOP_Server_Transport::TAO_IIOP_Server_Transport (TAO_Server_Connection_Handler *handler)
- : TAO_IIOP_Transport(handler),
- server_handler_ (0)
-{
- server_handler_ = handler;
-}
-
-TAO_IIOP_Client_Transport::TAO_IIOP_Client_Transport (TAO_Client_Connection_Handler *handler)
- : TAO_IIOP_Transport(handler),
- client_handler_ (0)
-{
- client_handler_ = handler;
-}
-
-TAO_IIOP_Server_Transport::~TAO_IIOP_Server_Transport (void)
-{
-}
-
-TAO_IIOP_Client_Transport::~TAO_IIOP_Client_Transport (void)
-{
-}
-
-CORBA::ULong
-TAO_IIOP_Transport::tag (void)
-{
- return this->tag_;
-}
-
-TAO_Client_Connection_Handler *
-TAO_IIOP_Client_Transport::client_handler (void)
-{
- return this->client_handler_;
-}
-
-TAO_Server_Connection_Handler *
-TAO_IIOP_Server_Transport::server_handler (void)
-{
- return this->server_handler_;
-}
-
-TAO_IIOP_Handler_Base *&
-TAO_IIOP_Transport::handler (void)
-{
- return this->handler_;
-}
-
-int
-TAO_IIOP_Transport::idle (void)
-{
- return this->handler_->idle();
-}
-
-int
-TAO_IIOP_Transport::is_nil (TAO_Transport *obj)
-{
- return obj == 0;
-}
-
-TAO_Transport *
-TAO_IIOP_Transport::_nil (void)
-{
- return (TAO_IIOP_Transport *)0;
-}
-
-void
-TAO_IIOP_Transport::resume_connection (ACE_Reactor *reactor)
-{
- int result = reactor->resume_handler (this->handler_);
- // @@ Are these needed!!
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result == 0);
-}
-
-void
-TAO_IIOP_Transport::close_connection (void)
-{
- this->handler_->handle_close ();
-}
-
-ACE_HANDLE
-TAO_IIOP_Transport::handle (void)
-{
- return this->handler_->get_handle ();
-}
-
-int
-TAO_IIOP_Client_Transport::send_request (TAO_ORB_Core *orb_core,
- TAO_OutputCDR &stream,
- int twoway)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_CLIENT_TRANSPORT_SEND_REQUEST_START);
-
- return this->client_handler_->send_request (orb_core, stream, twoway);
-}
-
-// int
-// TAO_IIOP_Server_Transport::send_response (TAO_OutputCDR &response)
-// {
-// this->server_handler_->send_response (response);
-// return 1;
-// }
-
-ssize_t
-TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_SEND_START);
-
- ACE_UNUSED_ARG (s);
-
- // For the most part this was copied from GIOP::send_request and
- // friends.
-
- // @@ Fred, this should NOT be a local constant... It should use a
- // macro defined in OS.h...
- const int TAO_WRITEV_MAX = 16;
- iovec iov[TAO_WRITEV_MAX];
- int iovcnt = 0;
- ssize_t n = 0;
- ssize_t nbytes = 0;
-
- for (const ACE_Message_Block *i = mblk;
- i != 0;
- i = i->cont ())
- {
- // Make sure there is something to send!
- if (i->length () > 0)
- {
- iov[iovcnt].iov_base = i->rd_ptr ();
- iov[iovcnt].iov_len = i->length ();
- iovcnt++;
-
- // The buffer is full make a OS call. @@ TODO this should
- // be optimized on a per-platform basis, for instance, some
- // platforms do not implement writev() there we should copy
- // the data into a buffer and call send_n(). In other cases
- // there may be some limits on the size of the iovec, there
- // we should set TAO_WRITEV_MAX to that limit.
- if (iovcnt == TAO_WRITEV_MAX)
- {
- n = this->handler_->peer ().sendv_n ((const iovec *) iov,
- iovcnt);
- if (n < 1)
- return n;
-
- nbytes += n;
- iovcnt = 0;
- }
- }
- }
-
- // Check for remaining buffers to be sent!
- if (iovcnt != 0)
- {
- n = this->handler_->peer ().sendv_n ((const iovec *) iov,
- iovcnt);
- if (n < 0 )
- return 0;
-
- nbytes += n;
- }
-
- return nbytes;
-}
-
-ssize_t
-TAO_IIOP_Transport::send (const u_char *buf,
- size_t len,
- ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_SEND_START);
-
- ACE_UNUSED_ARG (s);
- return this->handler_->peer ().send_n (buf, len);
-}
-
-ssize_t
-TAO_IIOP_Transport::send (const iovec *iov,
- int iovcnt,
- ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_SEND_START);
-
- ACE_UNUSED_ARG (s);
- return this->handler_->peer ().sendv_n ((const iovec *) iov,
- iovcnt);
-}
-
-ssize_t
-TAO_IIOP_Transport::recv (char *buf,
- size_t len,
- ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_RECEIVE_START);
-
- ACE_UNUSED_ARG (s);
- return this->handler_->peer ().recv_n (buf, len);
-}
-
-ssize_t
-TAO_IIOP_Transport::recv (char *buf,
- size_t len,
- int flags,
- ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_RECEIVE_START);
-
- ACE_UNUSED_ARG (s);
- return this->handler_->peer ().recv_n (buf,
- len,
- flags);
-}
-
-ssize_t
-TAO_IIOP_Transport::recv (iovec *iov,
- int iovcnt,
- ACE_Time_Value *s)
-{
- ACE_FUNCTION_TIMEPROBE (TAO_IIOP_TRANSPORT_RECEIVE_START);
-
- ACE_UNUSED_ARG (s);
- return handler_->peer ().recvv_n (iov, iovcnt);
-}