Merge pull request #2301 from sonndinh/remove-dup-reactor-functions
[ACE_TAO.git] / TAO / orbsvcs / tests / Bug_2248_Regression / Server_ORBInitializer.h
blobd8ca966bf5b0304e907097e4536ca6e2c0294e65
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Server_ORBInitializer.h
7 * @author Ossama Othman <ossama@uci.edu>
8 */
9 //=============================================================================
11 #ifndef BUG_2248_REGRESSION_SERVER_ORB_INITIALIZER_H
12 #define BUG_2248_REGRESSION_SERVER_ORB_INITIALIZER_H
14 #include /**/ "ace/pre.h"
16 #include "tao/LocalObject.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #if TAO_HAS_INTERCEPTORS == 1
24 #include "tao/PI/PI.h"
26 // This is to remove "inherits via dominance" warnings from MSVC.
27 // MSVC is being a little too paranoid.
28 #if defined(_MSC_VER)
29 #pragma warning(push)
30 #pragma warning(disable:4250)
31 #endif /* _MSC_VER */
33 // Forward declaration.
34 class Server_Request_Interceptor;
36 /// Server side ORB initializer.
37 class Server_ORBInitializer :
38 public virtual PortableInterceptor::ORBInitializer,
39 public virtual ::CORBA::LocalObject
41 public:
42 /// Constructor.
43 Server_ORBInitializer ();
45 virtual void pre_init (PortableInterceptor::ORBInitInfo_ptr info);
47 virtual void post_init (PortableInterceptor::ORBInitInfo_ptr info);
49 /// Return the created server request interceptor. Only valid after
50 /// post_init(), i.e. ORB_init(), has been called.
51 PortableInterceptor::ServerRequestInterceptor_ptr server_interceptor ();
53 private:
54 /// Pointer to the server request interceptor. ORB is responsible
55 /// for storage.
56 PortableInterceptor::ServerRequestInterceptor_var server_interceptor_;
59 #if defined(_MSC_VER)
60 #pragma warning(pop)
61 #endif /* _MSC_VER */
63 #endif /* TAO_HAS_INTERCEPTORS == 1 */
65 #include /**/ "ace/post.h"
67 #endif /* BUG_2248_REGRESSION_SERVER_ORB_INITIALIZER_H */