TAO
2.0.8
|
Specialize TAO_Queued_Message for asynch requests, i.e. oneways sent with SYNC_NONE policy. More...
#include <Asynch_Queued_Message.h>
Public Member Functions | |
TAO_Asynch_Queued_Message (const ACE_Message_Block *contents, TAO_ORB_Core *oc, ACE_Time_Value *timeout, ACE_Allocator *alloc, bool is_heap_allocated) | |
Constructor. | |
virtual | ~TAO_Asynch_Queued_Message (void) |
Destructor. | |
Implement the Template Methods from TAO_Queued_Message | |
virtual size_t | message_length (void) const |
virtual int | all_data_sent (void) const |
virtual void | fill_iov (int iovcnt_max, int &iovcnt, iovec iov[]) const |
virtual void | bytes_transferred (size_t &byte_count) |
virtual TAO_Queued_Message * | clone (ACE_Allocator *alloc) |
virtual void | destroy (void) |
virtual bool | is_expired (const ACE_Time_Value &now) const |
virtual void | copy_if_necessary (const ACE_Message_Block *chain) |
Protected Member Functions | |
TAO_Asynch_Queued_Message (char *buf, TAO_ORB_Core *oc, size_t size, const ACE_Time_Value &abs_timeout, ACE_Allocator *alloc, bool is_heap_allocated) | |
Constructor. | |
Private Member Functions | |
void | operator= (const TAO_Asynch_Queued_Message &) |
TAO_Asynch_Queued_Message (const TAO_Asynch_Queued_Message &) | |
Private Attributes | |
size_t const | size_ |
The number of bytes in the buffer. | |
size_t | offset_ |
The offset in the buffer. | |
char * | buffer_ |
The buffer containing the complete message. | |
ACE_Time_Value | abs_timeout_ |
Specialize TAO_Queued_Message for asynch requests, i.e. oneways sent with SYNC_NONE policy.
TAO_Asynch_Queued_Message::TAO_Asynch_Queued_Message | ( | const ACE_Message_Block * | contents, |
TAO_ORB_Core * | oc, | ||
ACE_Time_Value * | timeout, | ||
ACE_Allocator * | alloc, | ||
bool | is_heap_allocated | ||
) |
Constructor.
contents | The message block chain that must be sent. |
alloc | Allocator used for creating this object. |
timeout | The relative timeout after which this message should be expired. |
TAO_Asynch_Queued_Message::~TAO_Asynch_Queued_Message | ( | void | ) | [virtual] |
Destructor.
TAO_Asynch_Queued_Message::TAO_Asynch_Queued_Message | ( | char * | buf, |
TAO_ORB_Core * | oc, | ||
size_t | size, | ||
const ACE_Time_Value & | abs_timeout, | ||
ACE_Allocator * | alloc, | ||
bool | is_heap_allocated | ||
) | [protected] |
Constructor.
buf | The buffer that needs to be sent on the wire. The buffer will be owned by this class. The buffer will be deleted when the destructor is called and hence the buffer should always come off the heap! |
oc | The ORB Core |
size | The size of the buffer <buf> that is being handed over. |
abs_timeout | The time after which this message should be expired. |
alloc | Allocator used for creating <this> object. |
TAO_Asynch_Queued_Message::TAO_Asynch_Queued_Message | ( | const TAO_Asynch_Queued_Message & | ) | [private] |
int TAO_Asynch_Queued_Message::all_data_sent | ( | void | ) | const [virtual] |
Implements TAO_Queued_Message.
void TAO_Asynch_Queued_Message::bytes_transferred | ( | size_t & | byte_count | ) | [virtual] |
Implements TAO_Queued_Message.
TAO_Queued_Message * TAO_Asynch_Queued_Message::clone | ( | ACE_Allocator * | alloc | ) | [virtual] |
Implements TAO_Queued_Message.
void TAO_Asynch_Queued_Message::copy_if_necessary | ( | const ACE_Message_Block * | chain | ) | [virtual] |
Implements TAO_Queued_Message.
void TAO_Asynch_Queued_Message::destroy | ( | void | ) | [virtual] |
Implements TAO_Queued_Message.
void TAO_Asynch_Queued_Message::fill_iov | ( | int | iovcnt_max, |
int & | iovcnt, | ||
iovec | iov[] | ||
) | const [virtual] |
Implements TAO_Queued_Message.
bool TAO_Asynch_Queued_Message::is_expired | ( | const ACE_Time_Value & | now | ) | const [virtual] |
Reimplemented from TAO_Queued_Message.
size_t TAO_Asynch_Queued_Message::message_length | ( | void | ) | const [virtual] |
Implements TAO_Queued_Message.
void TAO_Asynch_Queued_Message::operator= | ( | const TAO_Asynch_Queued_Message & | ) | [private] |
char* TAO_Asynch_Queued_Message::buffer_ [private] |
The buffer containing the complete message.
size_t TAO_Asynch_Queued_Message::offset_ [private] |
The offset in the buffer.
Data up to offset
has been sent already, only the [offset_,size_) range remains to be sent.
size_t const TAO_Asynch_Queued_Message::size_ [private] |
The number of bytes in the buffer.