#include <Wait_Strategy.h>
Inheritance diagram for TAO_Wait_Strategy:
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 |
bool | is_registered (void) const |
Get method for the flag. | |
void | is_registered (bool flag) |
Set method for the flag. | |
Protected Attributes | |
TAO_Transport * | transport_ |
Transport object. | |
bool | is_registered_ |
Definition at line 42 of file Wait_Strategy.h.
|
Constructor.
Definition at line 18 of file Wait_Strategy.cpp.
00019 : transport_ (transport), 00020 is_registered_ (false) 00021 00022 { 00023 } |
|
Destructor.
Definition at line 26 of file Wait_Strategy.cpp.
00027 { 00028 } |
|
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. Referenced by TAO_Connection_Handler::handle_input_eh(). |
|
Set method for the flag.
Definition at line 12 of file Wait_Strategy.inl. References is_registered_.
00013 { 00014 this->is_registered_ = flag; 00015 } |
|
Get method for the flag.
Definition at line 6 of file Wait_Strategy.inl. References is_registered_. Referenced by TAO_Connection_Handler::close_connection_eh(), TAO::Transport_Cache_Manager::find_transport(), TAO_Transport::notify_reactor(), and TAO_Transport::register_handler().
00007 { 00008 return this->is_registered_; 00009 } |
|
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. Referenced by TAO::Transport_Cache_Manager::find_transport(), TAO_IIOP_Connection_Handler::open(), and TAO_Transport::provide_blockable_handler(). |
|
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. Referenced by TAO_IIOP_Connector::complete_connection(), TAO_Connector::connect(), and TAO_Transport::post_open(). |
|
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. Definition at line 35 of file Wait_Strategy.cpp. Referenced by TAO_IIOP_Transport::send_request(), and TAO_Wait_On_Leader_Follower::sending_request().
00036 {
00037 return 0;
00038 }
|
|
Base class virtual method. Wait till the Implemented in TAO_Wait_On_Leader_Follower, TAO::Wait_On_LF_No_Upcall, TAO_Wait_On_Reactor, and TAO_Wait_On_Read. Referenced by TAO::Synch_Twoway_Invocation::wait_for_reply(). |
|
Flag to indicate whether the service handler that created the above transport has been registered with the reactor or not. The default is false. Definition at line 95 of file Wait_Strategy.h. Referenced by is_registered(). |
|
Transport object.
Definition at line 90 of file Wait_Strategy.h. |