Specialize TAO_Queued_Message for asynch requests, i.e. oneways sent with SYNC_NONE policy.
More...
#include <Asynch_Queued_Message.h>
|
| 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. More...
|
|
virtual | ~TAO_Asynch_Queued_Message (void) |
| Destructor. More...
|
|
| TAO_Queued_Message (TAO_ORB_Core *oc, ACE_Allocator *alloc=0, bool is_heap_allocated=false) |
| Constructor. More...
|
|
virtual | ~TAO_Queued_Message (void) |
| Destructor. More...
|
|
TAO_Queued_Message * | next (void) const |
| Set/get the next element in the list. More...
|
|
TAO_Queued_Message * | prev (void) const |
| Set/get the previous element in the list. More...
|
|
void | remove_from_list (TAO_Queued_Message *&head, TAO_Queued_Message *&tail) |
| Remove this element from the list. More...
|
|
void | push_back (TAO_Queued_Message *&head, TAO_Queued_Message *&tail) |
| Insert the current element at the tail of the queue. More...
|
|
void | push_front (TAO_Queued_Message *&head, TAO_Queued_Message *&tail) |
| Insert the current element at the head of the queue. More...
|
|
| TAO_LF_Invocation_Event (void) |
| Constructor. More...
|
|
virtual | ~TAO_LF_Invocation_Event (void) |
| Destructor. More...
|
|
| TAO_LF_Event (void) |
| Constructor. More...
|
|
virtual | ~TAO_LF_Event (void) |
| Destructor. More...
|
|
virtual int | bind (TAO_LF_Follower *follower) |
| Bind a follower. More...
|
|
virtual int | unbind (TAO_LF_Follower *follower) |
| Unbind the follower. More...
|
|
void | state_changed (LFS_STATE new_state, TAO_Leader_Follower &lf) |
|
bool | successful (TAO_Leader_Follower &lf) const |
|
bool | error_detected (TAO_Leader_Follower &lf) const |
|
bool | keep_waiting (TAO_Leader_Follower &lf) const |
| Check if we should keep waiting. More...
|
|
void | reset_state (LFS_STATE new_state) |
| Reset the state, irrespective of the previous states. More...
|
|
Specialize TAO_Queued_Message for asynch requests, i.e. oneways sent with SYNC_NONE policy.
◆ TAO_Asynch_Queued_Message() [1/3]
Constructor.
- Parameters
-
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. |
- Todo:
- I'm almost sure this class will require a callback interface for AMIs sent with SYNC_NONE policy. Those guys need to hear when the connection timeouts or closes, but cannot block waiting for the message to be delivered.
◆ ~TAO_Asynch_Queued_Message()
TAO_Asynch_Queued_Message::~TAO_Asynch_Queued_Message |
( |
void |
| ) |
|
|
virtual |
◆ TAO_Asynch_Queued_Message() [2/3]
Constructor.
- Parameters
-
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() [3/3]
The number of bytes in the buffer.
◆ all_data_sent()
int TAO_Asynch_Queued_Message::all_data_sent |
( |
void |
| ) |
const |
|
virtual |
◆ bytes_transferred()
void TAO_Asynch_Queued_Message::bytes_transferred |
( |
size_t & |
byte_count | ) |
|
|
virtual |
◆ clone()
- Note
- No reason to believe why this would be called. But have it here for the sake of uniformity.
Implements TAO_Queued_Message.
◆ copy_if_necessary()
◆ destroy()
void TAO_Asynch_Queued_Message::destroy |
( |
void |
| ) |
|
|
virtual |
◆ fill_iov()
void TAO_Asynch_Queued_Message::fill_iov |
( |
int |
iovcnt_max, |
|
|
int & |
iovcnt, |
|
|
iovec |
iov[] |
|
) |
| const |
|
virtual |
◆ is_expired()
bool TAO_Asynch_Queued_Message::is_expired |
( |
const ACE_Time_Value & |
now | ) |
const |
|
virtual |
◆ message_length()
size_t TAO_Asynch_Queued_Message::message_length |
( |
void |
| ) |
const |
|
virtual |
◆ operator=()
The number of bytes in the buffer.
◆ abs_timeout_
The number of bytes in the buffer.
◆ buffer_
char* TAO_Asynch_Queued_Message::buffer_ |
|
private |
The buffer containing the complete message.
◆ offset_
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_
size_t const TAO_Asynch_Queued_Message::size_ |
|
private |
The number of bytes in the buffer.
The documentation for this class was generated from the following files: