#include <Incoming_Message_Queue.h>
Collaboration diagram for TAO_Incoming_Message_Queue:
Public Methods | |
TAO_Incoming_Message_Queue (TAO_ORB_Core *orb_core) | |
Constructor. More... | |
~TAO_Incoming_Message_Queue (void) | |
Destructor. More... | |
TAO_Queued_Data * | dequeue_head (void) |
Adding and deleting a node from the queue. More... | |
TAO_Queued_Data * | dequeue_tail (void) |
int | enqueue_tail (TAO_Queued_Data *nd) |
size_t | copy_tail (ACE_Message_Block &block) |
Copy message from <block> to the tail of the queue. The size of message that is copied to the tail node is returned. The number of bytes copied depends on the amount of bytes needed to make the tail node consistent. More... | |
CORBA::ULong | queue_length (void) |
Return the length of the queue.. More... | |
int | is_tail_complete (void) |
Methods for sanity check. Checks to see whether the node on the head or tail is complete or not and ready for further processing. More... | |
int | is_head_complete (void) |
int | is_tail_fragmented (void) |
This method checks whether the last message that was queued up was fragmented... More... | |
size_t | missing_data_tail (void) const |
Return the size of data that is missing in tail of the queue. More... | |
Private Methods | |
TAO_Queued_Data * | get_node (void) |
Make a node for the queue. More... | |
Private Attributes | |
TAO_Queued_Data * | queued_data_ |
A linked listof messages that await processing. More... | |
CORBA::ULong | size_ |
The size of the queue. More... | |
TAO_ORB_Core * | orb_core_ |
Copy of our ORB Core. More... | |
Friends | |
class | TAO_Transport |
void missing_data (size_t data);. More... |
Please read the documentation in the TAO_Transport class to find out more about the design of the incoming data path.
Under certain conditions TAO may have to maintain a queue per-connection. This queue is drained by the pluggable protocols framework, normally under control of the ACE_Reactor, but other configurations are conceivable.
The memory that is allocated for holding the messages comes from the global pool for the following reasons
|
Constructor.
|
|
Destructor.
|
|
Copy message from <block> to the tail of the queue. The size of message that is copied to the tail node is returned. The number of bytes copied depends on the amount of bytes needed to make the tail node consistent.
|
|
Adding and deleting a node from the queue.
|
|
|
|
|
|
Make a node for the queue.
|
|
|
|
Methods for sanity check. Checks to see whether the node on the head or tail is complete or not and ready for further processing.
|
|
This method checks whether the last message that was queued up was fragmented...
|
|
Return the size of data that is missing in tail of the queue.
|
|
Return the length of the queue..
|
|
void missing_data (size_t data);.
|
|
Copy of our ORB Core.
|
|
A linked listof messages that await processing.
|
|
The size of the queue.
|