summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/AV/MCast.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/AV/MCast.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/MCast.cpp211
1 files changed, 0 insertions, 211 deletions
diff --git a/TAO/orbsvcs/orbsvcs/AV/MCast.cpp b/TAO/orbsvcs/orbsvcs/AV/MCast.cpp
deleted file mode 100644
index c881ce103b4..00000000000
--- a/TAO/orbsvcs/orbsvcs/AV/MCast.cpp
+++ /dev/null
@@ -1,211 +0,0 @@
-// $Id$
-
-#include "MCast.h"
-#include "Nil.h"
-#include "AVStreams_i.h"
-
-#if !defined(__ACE_INLINE__)
-#include "MCast.i"
-#endif /* __ACE_INLINE__ */
-
-//------------------------------------------------------------
-//TAO_AV_UDP_MCast_Flow_Handler
-//------------------------------------------------------------
-
-TAO_AV_UDP_MCast_Flow_Handler::TAO_AV_UDP_MCast_Flow_Handler (void)
-{
- ACE_NEW (transport_,
- TAO_AV_UDP_MCast_Transport (this));
- ACE_NEW (dgram_mcast_,
- ACE_SOCK_Dgram_Mcast);
-}
-
-TAO_AV_UDP_MCast_Flow_Handler::~TAO_AV_UDP_MCast_Flow_Handler (void)
-{
- delete this->transport_;
- delete this->dgram_mcast_;
-}
-
-
-int
-TAO_AV_UDP_MCast_Flow_Handler::handle_input (ACE_HANDLE /*fd*/)
-{
- this->protocol_object_->handle_input ();
- return 0;
-}
-
-int
-TAO_AV_UDP_MCast_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
- const void *arg)
-{
- return TAO_AV_Flow_Handler::handle_timeout (tv,arg);
-}
-
-ACE_HANDLE
-TAO_AV_UDP_MCast_Flow_Handler::get_handle (void) const
-{
- if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG,"TAO_AV_UDP_MCast_Flow_Handler::get_handle "));
- return this->get_mcast_socket ()->get_handle () ;
-}
-
-
-//------------------------------------------------------------
-// TAO_AV_UDP_MCast_Transport
-//------------------------------------------------------------
-
-TAO_AV_UDP_MCast_Transport::TAO_AV_UDP_MCast_Transport (void)
- :handler_ (0)
-{
-}
-
-TAO_AV_UDP_MCast_Transport::TAO_AV_UDP_MCast_Transport (TAO_AV_UDP_MCast_Flow_Handler *handler)
- :handler_ (handler)
-{
-}
-
-TAO_AV_UDP_MCast_Transport::~TAO_AV_UDP_MCast_Transport (void)
-{
-}
-
-int
-TAO_AV_UDP_MCast_Transport::open (ACE_Addr * /*address*/)
-{
- return 0;
-}
-
-int
-TAO_AV_UDP_MCast_Transport::close (void)
-{
- return 0;
-}
-
-
-ACE_Addr*
-TAO_AV_UDP_MCast_Transport::get_peer_addr (void)
-{
- return &this->peer_addr_;
-}
-
-ACE_Addr*
-TAO_AV_UDP_MCast_Transport::get_local_addr (void)
-{
- this->handler_->get_mcast_socket ()->get_local_addr (this->local_addr_);
- return &this->local_addr_;
-}
-
-ssize_t
-TAO_AV_UDP_MCast_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *)
-{
- // For the most part this was copied from GIOP::send_request and
- // friends.
-
- iovec iov[IOV_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 IOV_MAX to that limit.
- if (iovcnt == IOV_MAX)
- {
- n = this->handler_->get_mcast_socket ()->send ((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_->get_mcast_socket ()->send ((const iovec *) iov,
- iovcnt);
- if (n < 1)
- return n;
-
- nbytes += n;
- }
-
- return nbytes;
-}
-
-ssize_t
-TAO_AV_UDP_MCast_Transport::send (const char *buf,
- size_t len,
- ACE_Time_Value *)
-{
-// if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG,"TAO_AV_UDP_MCast_Transport::send "));
-// char addr [BUFSIZ];
-// this->peer_addr_.addr_to_string (addr,BUFSIZ);
-// if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG,"to %s\n",addr));
-
- return this->handler_->get_mcast_socket ()->send (buf, len);
-}
-
-ssize_t
-TAO_AV_UDP_MCast_Transport::send (const iovec *iov,
- int iovcnt,
- ACE_Time_Value *)
-{
- return this->handler_->get_mcast_socket ()->send (iov,
- iovcnt,
- 0);
-
-}
-
-ACE_INLINE int
-TAO_AV_UDP_MCast_Transport::mtu (void)
-{
- return ACE_MAX_DGRAM_SIZE;
-}
-
-
-ACE_INLINE ssize_t
-TAO_AV_UDP_MCast_Transport::recv (char *buf,
- size_t len,
- ACE_Time_Value *)
-{
- return this->handler_->get_mcast_socket ()->recv (buf, len,this->peer_addr_);
-}
-
-ACE_INLINE ssize_t
-TAO_AV_UDP_MCast_Transport::recv (char *buf,
- size_t len,
- int flags,
- ACE_Time_Value *timeout)
-{
- return this->handler_->get_mcast_socket ()->recv (buf,
- len,
- this->peer_addr_,
- flags,
- timeout);
-}
-
-
-ssize_t
-TAO_AV_UDP_MCast_Transport::recv (iovec *iov,
- int /*iovcnt*/,
- ACE_Time_Value *timeout)
-{
- return handler_->get_mcast_socket ()->recv (iov,this->peer_addr_,0,timeout);
-}