Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Reply_Dispatcher Class Reference

#include <Reply_Dispatcher.h>

Inheritance diagram for TAO_Reply_Dispatcher:

Inheritance graph
[legend]
List of all members.

Public Methods

 TAO_Reply_Dispatcher (void)
 Constructor. More...

virtual ~TAO_Reply_Dispatcher (void)
 Destructor. More...

virtual int dispatch_reply (TAO_Pluggable_Reply_Params &params)=0
virtual void connection_closed (void)=0
CORBA::ULong reply_status (void) const
 Get the reply status. More...


Protected Attributes

CORBA::ULong reply_status_
 Reply or LocateReply status. More...


Detailed Description

Different invocation modes process the Reply messages in different ways. Traditional synchronous replies simply receive the message and wake up the waiting thread (if any). Asynchronous Method Invocation (Callbacks) must process the message in the thread that receives it. Deferred Synchronous (DII) and AMI in the Poller mode save the reply for later processing in the application. The lower level components in the ORB only deal with this abstract interface, when the invocation is made the right type of Reply Dispatcher is instantiated and registered with the Transport object.

Definition at line 52 of file Reply_Dispatcher.h.


Constructor & Destructor Documentation

TAO_Reply_Dispatcher::TAO_Reply_Dispatcher void   
 

Constructor.

Definition at line 14 of file Reply_Dispatcher.cpp.

00016   : reply_status_ (100)
00017 {
00018 }

TAO_Reply_Dispatcher::~TAO_Reply_Dispatcher void    [virtual]
 

Destructor.

Definition at line 21 of file Reply_Dispatcher.cpp.

00022 {
00023 }


Member Function Documentation

virtual void TAO_Reply_Dispatcher::connection_closed void    [pure virtual]
 

The used for the pending reply has been closed. No reply is expected. @ TODO: If the connection was closed due to a CloseConnection message then we could re-issue the request instead of raising the exception, it would a matter of simply adding a boolean argument to this function.

Implemented in TAO_Asynch_Reply_Dispatcher_Base.

Referenced by TAO_Exclusive_TMS::connection_closed.

virtual int TAO_Reply_Dispatcher::dispatch_reply TAO_Pluggable_Reply_Params   params [pure virtual]
 

Dispatch the reply. Return 1 on sucess, -1 on error. @ TODO Pluggable Messaging: this method has too many arguments, the "Right Thing"[tm] is for the Transport Object to create a "ClientReply" that encapsulates all we need to process a reply. Naturally it is possible that different messaging protocols implement different variants of such ClientReply class.

Implemented in TAO_Asynch_Reply_Dispatcher_Base.

Referenced by TAO_Muxed_TMS::dispatch_reply, and TAO_Exclusive_TMS::dispatch_reply.

ACE_INLINE CORBA::ULong TAO_Reply_Dispatcher::reply_status void    const
 

Get the reply status.

Definition at line 4 of file Reply_Dispatcher.i.

References reply_status_.

00005 {
00006   return this->reply_status_;
00007 }


Member Data Documentation

CORBA::ULong TAO_Reply_Dispatcher::reply_status_ [protected]
 

Reply or LocateReply status.

Definition at line 88 of file Reply_Dispatcher.h.

Referenced by TAO_Synch_Reply_Dispatcher::dispatch_reply, and reply_status.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:38:33 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002