2 //=============================================================================
6 * @author Balachandran Natarajan <bala@cs.wustl.edu>
8 //=============================================================================
11 #ifndef TAO_BIDIRECTIONAL_TEST_I_H
12 #define TAO_BIDIRECTIONAL_TEST_I_H
15 #include "ace/Event_Handler.h"
20 * @brief A callback object to the "client"
22 * To test that the server can call the client on the same
23 * connection that was established by the client
25 class Callback_i
: public virtual POA_Callback
29 Callback_i (CORBA::ORB_ptr orb
, Simple_Server_ptr srv
);
31 /// Safe way to shutdown
34 /// The callback method
35 void callback_method (void);
41 Simple_Server_var server_
;
45 * @class Simple_Server_i
47 * @brief Simpler Server implementation
49 * Implements the Simple_Server interface in test.idl
51 class Simple_Server_i
: public virtual POA_Simple_Server
, public virtual ACE_Event_Handler
55 Simple_Server_i (CORBA::ORB_ptr orb
, int no_iterations
);
57 // = The Simple_Server methods.
58 CORBA::Long
test_method (CORBA::Boolean do_callback
);
60 void callback_object (Callback_ptr callback
);
64 virtual int handle_timeout (const ACE_Time_Value
¤t_time
,
71 /// Flag to indicate, whether we are ready for a remote call.
75 Callback_var callback_
;
77 /// Number of times the callback needs to be called
81 #if defined(__ACE_INLINE__)
83 #endif /* __ACE_INLINE__ */
85 #endif /* TAO_BIDIRECTIONAL_TEST_I_H */