Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / tests / Portable_Interceptors / ORB_Shutdown / Server_ORBInitializer.h
blob3d40a03806b7a767bdc96f347a8dbcdb2f14e4f8
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Server_ORBInitializer.h
7 * Implementation header for the PortableInterceptor ORB::shutdown()
8 * test server side ORB initializer.
10 * @author Ossama Othman <ossama@dre.vanderbilt.edu>
12 //=============================================================================
14 #ifndef TAO_SERVER_ORB_INITIALIZER_H
15 #define TAO_SERVER_ORB_INITIALIZER_H
17 #include "tao/LocalObject.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 # pragma once
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #if TAO_HAS_INTERCEPTORS == 1
25 #include "tao/PI/PI.h"
27 // This is to remove "inherits via dominance" warnings from MSVC.
28 // MSVC is being a little too paranoid.
29 #if defined(_MSC_VER)
30 #pragma warning(push)
31 #pragma warning(disable:4250)
32 #endif /* _MSC_VER */
34 // Forward declaration.
35 class Server_Request_Interceptor;
37 /// Server side ORB initializer.
38 class Server_ORBInitializer
39 : public virtual PortableInterceptor::ORBInitializer,
40 public virtual ::CORBA::LocalObject
42 public:
44 /// Constructor.
45 Server_ORBInitializer (bool & destroy_called);
47 virtual void pre_init (PortableInterceptor::ORBInitInfo_ptr info);
49 virtual void post_init (PortableInterceptor::ORBInitInfo_ptr info);
51 private:
53 /// Flag that states whether this interceptor's @c destroy() method
54 /// was called.
55 bool & destroy_called_;
59 #if defined(_MSC_VER)
60 #pragma warning(pop)
61 #endif /* _MSC_VER */
63 #endif /* TAO_HAS_INTERCEPTORS == 1 */
65 #endif /* TAO_SERVER_ORB_INITIALIZER_H */