Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

TAO_Wait_Strategy Class Reference

Strategy for waiting for the reply. More...

#include <Wait_Strategy.h>

Inheritance diagram for TAO_Wait_Strategy:

Inheritance graph
[legend]
Collaboration diagram for TAO_Wait_Strategy:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_Wait_Strategy (TAO_Transport *transport)
 Constructor.
virtual ~TAO_Wait_Strategy (void)
 Destructor.
virtual int sending_request (TAO_ORB_Core *orb_core, int two_way)
virtual int wait (ACE_Time_Value *max_wait_time, TAO_Synch_Reply_Dispatcher &rd)=0
virtual int register_handler (void)=0
virtual bool non_blocking (void) const =0
virtual bool can_process_upcalls (void) const =0
int is_registered (void)
 Get method for the flag.
void is_registered (int flag)
 Set method for the flag.

Protected Attributes

TAO_Transporttransport_
 Transport object.
int is_registered_

Detailed Description

Strategy for waiting for the reply.


Constructor & Destructor Documentation

TAO_Wait_Strategy::TAO_Wait_Strategy TAO_Transport transport  ) 
 

Constructor.

TAO_Wait_Strategy::~TAO_Wait_Strategy void   )  [virtual]
 

Destructor.


Member Function Documentation

virtual bool TAO_Wait_Strategy::can_process_upcalls void   )  const [pure virtual]
 

This flag is to check whether the thread can process upcalls while waiting for the reply. Some wait strategies, like Wait_On_LF_No_Upcall does not allow the client threads to process requests while waiting for the reply.

Implemented in TAO_Wait_On_Leader_Follower, TAO::Wait_On_LF_No_Upcall, TAO_Wait_On_Reactor, and TAO_Wait_On_Read.

ACE_INLINE void TAO_Wait_Strategy::is_registered int  flag  ) 
 

Set method for the flag.

ACE_INLINE int TAO_Wait_Strategy::is_registered void   ) 
 

Get method for the flag.

virtual bool TAO_Wait_Strategy::non_blocking void   )  const [pure virtual]
 

Returns a value to indicate whether the transport needs to set the socket on which it is waiting to non-blocking mode or not.

Implemented in TAO_Wait_On_Leader_Follower, TAO_Wait_On_Reactor, and TAO_Wait_On_Read.

virtual int TAO_Wait_Strategy::register_handler void   )  [pure virtual]
 

Register the handler needs with the reactor provided that it makes sense for the strategy.

Implemented in TAO_Wait_On_Leader_Follower, TAO_Wait_On_Reactor, and TAO_Wait_On_Read.

int TAO_Wait_Strategy::sending_request TAO_ORB_Core orb_core,
int  two_way
[virtual]
 

The user is going to send a request, prepare any internal variables because the reply may arrive *before* the user calls wait.

Reimplemented in TAO_Wait_On_Leader_Follower.

virtual int TAO_Wait_Strategy::wait ACE_Time_Value max_wait_time,
TAO_Synch_Reply_Dispatcher rd
[pure virtual]
 

Base class virtual method. Wait till the reply_received flag is true or the time expires.

Implemented in TAO_Wait_On_Leader_Follower, TAO::Wait_On_LF_No_Upcall, TAO_Wait_On_Reactor, and TAO_Wait_On_Read.


Member Data Documentation

int TAO_Wait_Strategy::is_registered_ [protected]
 

Flag to indicate whether the service handler that created the above transport has been registered with the reactor or not. The default is 0.

TAO_Transport* TAO_Wait_Strategy::transport_ [protected]
 

Transport object.


The documentation for this class was generated from the following files:
Generated on Thu Jun 9 00:18:23 2005 for TAO by  doxygen 1.3.9.1