#include <Incoming_Message_Queue.h>
Collaboration diagram for TAO_Queued_Data:
Public Member Functions | |
TAO_Queued_Data (ACE_Allocator *alloc=0) | |
Default Constructor. | |
TAO_Queued_Data (ACE_Message_Block *mb, ACE_Allocator *alloc=0) | |
Constructor. | |
TAO_Queued_Data (const TAO_Queued_Data &qd) | |
Copy constructor. | |
void | consolidate (void) |
Consolidate this fragments chained message blocks into one. | |
Static Public Member Functions | |
TAO_Queued_Data * | make_queued_data (ACE_Allocator *alloc=0) |
Creation of a node in the queue. | |
void | release (TAO_Queued_Data *qd) |
Deletion of a node from the queue. | |
TAO_Queued_Data * | duplicate (TAO_Queued_Data &qd) |
Public Attributes | |
ACE_Message_Block * | msg_block_ |
The message block that contains the message. | |
CORBA::Octet | byte_order_ |
The byte order of the message that is stored in the node. | |
CORBA::Octet | major_version_ |
CORBA::Octet | minor_version_ |
CORBA::Octet | more_fragments_ |
CORBA::ULong | request_id_ |
The fragment request id. | |
TAO_Pluggable_Message_Type | msg_type_ |
The message type of the message. | |
TAO_Queued_Data * | next_ |
Pounter to the next element in the queue. | |
Missing Data details | |
The missing_data_ member contains the number of bytes of data missing from msg_block_. | |
CORBA::Long | missing_data_ |
Static Private Member Functions | |
void | replace_data_block (ACE_Message_Block &mb) |
Private Attributes | |
ACE_Allocator * | allocator_ |
The allocator used to allocate this class. |
This class contains necessary information about a message that is stored in the queue. Such a node can be used by the incoming thread from the reactor to dequeue and process the message by sending it to the higher layers of the ORB.
The ACE_Message_Block contained within this class may contain a chain of message blocks (usually when GIOP fragments are involved). In that case consolidate () needs to be called prior to being sent to higher layers of the ORB when the GIOP fragment chain is complete.
|
Default Constructor.
|
|
Constructor.
|
|
Copy constructor.
|
|
Consolidate this fragments chained message blocks into one.
|
|
Duplicate ourselves. This creates a copy of ourselves on the heap and returns a pointer to the duplicated node. |
|
Creation of a node in the queue.
|
|
Deletion of a node from the queue.
|
|
Replace the datablock with a one allocated on the heap or allocator |
|
The allocator used to allocate this class.
|
|
The byte order of the message that is stored in the node.
|
|
Many protocols like GIOP have a major and minor version information that would be needed to read and decipher the message. |
|
|
|
Data missing in the above message that hasn't been read or processed yet. |
|
Some messages can be fragmented by the protocol (this is an ORB level fragmentation on top of the TCP/IP fragmentation. This member indicates whether the message that we have recd. and queue already has more fragments that is missing.. |
|
The message block that contains the message.
|
|
The message type of the message.
|
|
Pounter to the next element in the queue.
|
|
The fragment request id.
|