3 //=============================================================================
5 * @file Thread_Per_Connection_Handler.h
7 * Definition of a connection handler for the thread-per-connection
10 * @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
12 //=============================================================================
14 #ifndef TAO_THREAD_PER_CONNECTION_HANDLER_H
15 #define TAO_THREAD_PER_CONNECTION_HANDLER_H
17 #include /**/ "ace/pre.h"
20 #if !defined (ACE_LACKS_PRAGMA_ONCE)
22 #endif /* ACE_LACKS_PRAGMA_ONCE */
24 #include /**/ "tao/TAO_Export.h"
25 #include /**/ "tao/Versioned_Namespace.h"
27 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
29 class TAO_Connection_Handler
;
33 * @class TAO_Thread_Per_Connection_Handler
35 * @brief Definition for the thread-per-connection strategy.
37 * This object acts as an active object, encapsulating the protocol
38 * specific handler which the active thread uses to process incoming
41 class TAO_Export TAO_Thread_Per_Connection_Handler
: public ACE_Task_Base
44 TAO_Thread_Per_Connection_Handler (TAO_Connection_Handler
*ch
,
47 ~TAO_Thread_Per_Connection_Handler ();
49 /// Template hook method that the thread uses...
51 * Please see the documentation in ace/Task.h for details.
54 virtual int open (void *);
55 virtual int close (u_long
);
58 /// Pointer to protocol specific code that does the bunch of the
60 TAO_Connection_Handler
*ch_
;
63 TAO_END_VERSIONED_NAMESPACE_DECL
65 #include /**/ "ace/post.h"
67 #endif /*TAO_THREAD_PER_CONNECTION_HANDLER_H*/