#include "tao/Transport.h"#include "tao/LF_Follower.h"#include "tao/Leader_Follower.h"#include "tao/Client_Strategy_Factory.h"#include "tao/Wait_Strategy.h"#include "tao/Transport_Mux_Strategy.h"#include "tao/Stub.h"#include "tao/Transport_Queueing_Strategies.h"#include "tao/Connection_Handler.h"#include "tao/Pluggable_Messaging.h"#include "tao/Synch_Queued_Message.h"#include "tao/Asynch_Queued_Message.h"#include "tao/Flushing_Strategy.h"#include "tao/Thread_Lane_Resources.h"#include "tao/Resume_Handle.h"#include "tao/Codeset_Manager.h"#include "tao/Codeset_Translator_Base.h"#include "tao/debug.h"#include "tao/CDR.h"#include "tao/ORB_Core.h"#include "tao/MMAP_Allocator.h"#include "ace/OS_NS_sys_time.h"#include "ace/OS_NS_stdio.h"#include "ace/Reactor.h"#include "ace/os_include/sys/os_uio.h"Include dependency graph for Transport.cpp:

Go to the source code of this file.
Functions | |
| void | dump_iov (iovec *iov, int iovcnt, size_t id, size_t current_transfer, const char *location) |
|
||||||||||||||||||||||||
|
Definition at line 50 of file Transport.cpp. References ACE_DEBUG, ACE_HEX_DUMP, ACE_SIZE_T_FORMAT_SPECIFIER, ACE_TCHAR, ACE_TEXT, ACE_TEXT_CHAR_TO_TCHAR, ACE_Log_Msg::acquire(), ACE_Log_Msg::instance(), iovec::iov_len, LM_DEBUG, ACE_Log_Msg::release(), and ACE_OS::sprintf(). Referenced by TAO_Transport::drain_queue_helper().
00053 {
00054 ACE_Log_Msg::instance ()->acquire ();
00055
00056 ACE_DEBUG ((LM_DEBUG,
00057 ACE_TEXT ("TAO (%P|%t) - Transport[%d]::%s, ")
00058 ACE_TEXT ("sending %d buffers\n"),
00059 id, ACE_TEXT_CHAR_TO_TCHAR (location), iovcnt));
00060
00061 for (int i = 0; i != iovcnt && 0 < current_transfer; ++i)
00062 {
00063 size_t iov_len = iov[i].iov_len;
00064
00065 // Possibly a partially sent iovec entry.
00066 if (current_transfer < iov_len)
00067 {
00068 iov_len = current_transfer;
00069 }
00070
00071 ACE_DEBUG ((LM_DEBUG,
00072 ACE_TEXT ("TAO (%P|%t) - Transport[%d]::%s, ")
00073 ACE_TEXT ("buffer %d/%d has %d bytes\n"),
00074 id, ACE_TEXT_CHAR_TO_TCHAR(location),
00075 i, iovcnt,
00076 iov_len));
00077
00078 size_t len;
00079
00080 for (size_t offset = 0; offset < iov_len; offset += len)
00081 {
00082 ACE_TCHAR header[1024];
00083 ACE_OS::sprintf (header,
00084 ACE_TEXT("TAO - ")
00085 ACE_TEXT("Transport[")
00086 ACE_SIZE_T_FORMAT_SPECIFIER
00087 ACE_TEXT("]::%s")
00088 ACE_TEXT(" (")
00089 ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT("/")
00090 ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT(")"),
00091 id, location, offset, iov_len);
00092
00093 len = iov_len - offset;
00094
00095 if (len > 512)
00096 {
00097 len = 512;
00098 }
00099
00100 ACE_HEX_DUMP ((LM_DEBUG,
00101 static_cast<char*> (iov[i].iov_base) + offset,
00102 len,
00103 header));
00104 }
00105 current_transfer -= iov_len;
00106 }
00107
00108 ACE_DEBUG ((LM_DEBUG,
00109 ACE_TEXT ("TAO (%P|%t) - Transport[%d]::%s, ")
00110 ACE_TEXT ("end of data\n"),
00111 id, ACE_TEXT_CHAR_TO_TCHAR(location)));
00112
00113 ACE_Log_Msg::instance ()->release ();
00114 }
|
1.3.6