TAO::Wait_On_LF_No_Upcall Class Reference

#include <Wait_On_LF_No_Upcall.h>

Inheritance diagram for TAO::Wait_On_LF_No_Upcall:

Inheritance graph
[legend]
Collaboration diagram for TAO::Wait_On_LF_No_Upcall:

Collaboration graph
[legend]
List of all members.

Public Types

typedef TAO_Wait_On_Leader_Follower base

Public Member Functions

 Wait_On_LF_No_Upcall (TAO_Transport *t)
virtual ~Wait_On_LF_No_Upcall (void)
virtual int wait (ACE_Time_Value *max_wait_time, TAO_Synch_Reply_Dispatcher &rd)
virtual bool can_process_upcalls (void) const

Member Typedef Documentation

typedef TAO_Wait_On_Leader_Follower TAO::Wait_On_LF_No_Upcall::base
 

Definition at line 47 of file Wait_On_LF_No_Upcall.h.

Referenced by Wait_On_LF_No_Upcall().


Constructor & Destructor Documentation

TAO::Wait_On_LF_No_Upcall::Wait_On_LF_No_Upcall TAO_Transport t  ) 
 

Definition at line 76 of file Wait_On_LF_No_Upcall.cpp.

References base.

00077     : base (t)
00078   {
00079   }

TAO::Wait_On_LF_No_Upcall::~Wait_On_LF_No_Upcall void   )  [virtual]
 

Definition at line 81 of file Wait_On_LF_No_Upcall.cpp.

00082   {
00083   }


Member Function Documentation

bool TAO::Wait_On_LF_No_Upcall::can_process_upcalls void   )  const [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.

Reimplemented from TAO_Wait_On_Leader_Follower.

Definition at line 95 of file Wait_On_LF_No_Upcall.cpp.

References TAO_Transport::bidirectional_flag(), TAO_ORB_Core::get_tss_resources(), TAO_Transport::opened_as(), TAO_Transport::orb_core(), and TAO_ORB_Core_TSS_Resources::upcalls_temporarily_suspended_on_this_thread_.

00096   {
00097     TAO_ORB_Core_TSS_Resources *tss =
00098       this->transport_->orb_core()->get_tss_resources ();
00099 
00100     if ((this->transport_->opened_as () == TAO::TAO_CLIENT_ROLE) &&
00101         (this->transport_->bidirectional_flag () == 0) &&
00102         (tss->upcalls_temporarily_suspended_on_this_thread_ == true))
00103       return false;
00104 
00105     return true;
00106   }

int TAO::Wait_On_LF_No_Upcall::wait ACE_Time_Value max_wait_time,
TAO_Synch_Reply_Dispatcher rd
[virtual]
 

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

Reimplemented from TAO_Wait_On_Leader_Follower.

Definition at line 86 of file Wait_On_LF_No_Upcall.cpp.

00088   {
00089     Nested_Upcall_Guard upcall_guard (this->transport_);
00090 
00091     return base::wait (max_wait_time, rd);
00092   }


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:27:35 2006 for TAO by doxygen 1.3.6