1 //=============================================================================
5 * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
7 //=============================================================================
9 #ifndef TAO_WAIT_ON_READ_H
10 #define TAO_WAIT_ON_READ_H
12 #include /**/ "ace/pre.h"
14 #include "tao/Wait_Strategy.h"
16 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 #endif /* ACE_LACKS_PRAGMA_ONCE */
20 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
23 * @class TAO_Wait_On_Read
25 * Simply block on read() to wait for the reply.
27 class TAO_Wait_On_Read
: public TAO_Wait_Strategy
31 explicit TAO_Wait_On_Read (TAO_Transport
*transport
);
34 ~TAO_Wait_On_Read () override
= default;
36 /*! @copydoc TAO_Wait_Strategy::sending_request() */
37 int sending_request (TAO_ORB_Core
*orb_core
, TAO_Message_Semantics msg_semantics
) override
;
39 /*! @copydoc TAO_Wait_Strategy::finished_request() */
40 void finished_request () override
;
42 /*! @copydoc TAO_Wait_Strategy::wait() */
43 int wait (ACE_Time_Value
*max_wait_time
, TAO_Synch_Reply_Dispatcher
&rd
) override
;
45 /*! @copydoc TAO_Wait_Strategy::register_handler() */
46 int register_handler () override
;
48 /*! @copydoc TAO_Wait_Strategy::non_blocking() */
49 bool non_blocking () const override
;
51 /*! @copydoc TAO_Wait_Strategy::can_process_upcalls() */
52 bool can_process_upcalls () const override
;
55 TAO_END_VERSIONED_NAMESPACE_DECL
57 #include /**/ "ace/post.h"
59 #endif /* TAO_WAIT_ON_READ_H */