#include <Pluggable_Messaging.h>
Inheritance diagram for TAO_Pluggable_Messaging:
This interface tries to define generic methods that could be different messaging protocols
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Pluggable_Messaging::~TAO_Pluggable_Messaging | ( | void | ) | [virtual] |
Dtor.
virtual int TAO_Pluggable_Messaging::consolidate_fragmented_message | ( | TAO_Queued_Data * | qd, | |
TAO_Queued_Data *& | con_msg | |||
) | [pure virtual] |
Consolidate newly received fragment with previously arrived associated fragments to achieve consolidated message. All fragments having been received previously are being managed within implementation. If reliable transport is used (like TCP) this operation will be invoked with fragments being received partially ordered, last fragment being received last. Otherwise If un-reliable transport is used (like UDP) fragments may be received dis-ordered, and must be ordered before consolidation within implementation.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::consolidate_node | ( | TAO_Queued_Data * | qd, | |
ACE_Message_Block & | incoming | |||
) | [pure virtual] |
Check whether the node qd needs consolidation from incoming
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::discard_fragmented_message | ( | const TAO_Queued_Data * | cancel_request | ) | [pure virtual] |
Discard all fragments associated to request-id encoded in cancel_request. Transport implementaion guarantees that this operation will never be invoked // concurrently by multiplpe threads nor concurrently to consolidate_fragmented_message
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::extract_next_message | ( | ACE_Message_Block & | incoming, | |
TAO_Queued_Data *& | qd | |||
) | [pure virtual] |
Extract the details of the next message from the incoming through qd. Returns 0 if the message header could not be parsed completely, returns a 1 if the message header could be parsed completely and returns -1 on error.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::format_message | ( | TAO_OutputCDR & | cdr | ) | [pure virtual] |
Format the message in the cdr. May not be needed in general.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual size_t TAO_Pluggable_Messaging::fragment_header_length | ( | CORBA::Octet | major, | |
CORBA::Octet | minor | |||
) | const [pure virtual] |
virtual TAO_GIOP_Fragmentation_Strategy* TAO_Pluggable_Messaging::fragmentation_strategy | ( | void | ) | [pure virtual] |
Outgoing GIOP message fragmentation strategy.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_exception_reply | ( | TAO_OutputCDR & | cdr, | |
TAO_Pluggable_Reply_Params_Base & | params, | |||
CORBA::Exception & | ex | |||
) | [pure virtual] |
Generate a reply message with the exception ex.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_fragment_header | ( | TAO_OutputCDR & | cdr, | |
CORBA::ULong | request_id | |||
) | [pure virtual] |
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_locate_reply_header | ( | TAO_OutputCDR & | cdr, | |
TAO_Pluggable_Reply_Params_Base & | params | |||
) | [pure virtual] |
Write the locate reply header The locate reply header is a part of any messaging protocol. The messaging protocol implementation would implement the way the locate reply header is written.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_locate_request_header | ( | TAO_Operation_Details & | op, | |
TAO_Target_Specification & | spec, | |||
TAO_OutputCDR & | cdr | |||
) | [pure virtual] |
Write the RequestHeader in to the cdr stream.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_reply_header | ( | TAO_OutputCDR & | cdr, | |
TAO_Pluggable_Reply_Params_Base & | params | |||
) | [pure virtual] |
Write the reply header The reply header is a part of any messaging protocol. The messaging protocol implementation would implement the way the reply header is written.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::generate_request_header | ( | TAO_Operation_Details & | op, | |
TAO_Target_Specification & | spec, | |||
TAO_OutputCDR & | cdr | |||
) | [pure virtual] |
Write the RequestHeader in to the cdr stream. The underlying implementation of the mesaging should do the right thing.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual size_t TAO_Pluggable_Messaging::header_length | ( | void | ) | const [pure virtual] |
virtual void TAO_Pluggable_Messaging::init | ( | CORBA::Octet | major, | |
CORBA::Octet | minor | |||
) | [pure virtual] |
Do any initialisations that may be needed.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::is_ready_for_bidirectional | ( | TAO_OutputCDR & | msg | ) | [pure virtual] |
Is the messaging object ready for processing BiDirectional request/response?
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual TAO_OutputCDR& TAO_Pluggable_Messaging::out_stream | ( | void | ) | [pure virtual] |
Accessor for the output CDR stream.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::parse_next_message | ( | ACE_Message_Block & | incoming, | |
TAO_Queued_Data & | qd, | |||
size_t & | mesg_length | |||
) | [pure virtual] |
Parse the details of the next message from the incoming and initializes attributes of qd. Returns 0 if the message header could not be parsed completely, returns a 1 if the message header could be parsed completely and returns -1 on error. As the parsed data is stored directly in qd, no state must be stored in instance of implementation.
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::process_reply_message | ( | TAO_Pluggable_Reply_Params & | reply_info, | |
TAO_Queued_Data * | qd | |||
) | [pure virtual] |
Parse the reply message that we received and return the reply information through reply_info
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual int TAO_Pluggable_Messaging::process_request_message | ( | TAO_Transport * | transport, | |
TAO_Queued_Data * | qd | |||
) | [pure virtual] |
Parse the request message, make an upcall and send the reply back to the "request initiator"
Implemented in TAO_GIOP_Message_Base, and TAO_GIOP_Message_Lite.
virtual void TAO_Pluggable_Messaging::reset | ( | void | ) | [pure virtual] |