2 #ifndef TAO_SERVER_ORB_INITIALIZER_H
3 #define TAO_SERVER_ORB_INITIALIZER_H
5 #include /**/ "ace/pre.h"
7 #include "tao/LocalObject.h"
9 #if !defined (ACE_LACKS_PRAGMA_ONCE)
11 #endif /* ACE_LACKS_PRAGMA_ONCE */
13 #if TAO_HAS_INTERCEPTORS == 1
15 #include "tao/PI/PI.h"
17 // This is to remove "inherits via dominance" warnings from MSVC.
18 // MSVC is being a little too paranoid.
21 #pragma warning(disable:4250)
24 // Forward declaration.
25 class Server_Request_Interceptor
;
27 /// Server side ORB initializer.
28 class Server_ORBInitializer
:
29 public virtual PortableInterceptor::ORBInitializer
,
30 public virtual ::CORBA::LocalObject
34 Server_ORBInitializer (CORBA::ULong request_pass_count
);
36 virtual void pre_init (PortableInterceptor::ORBInitInfo_ptr info
);
38 virtual void post_init (PortableInterceptor::ORBInitInfo_ptr info
);
40 /// Return the created server request interceptor. Only valid after
41 /// post_init(), i.e. ORB_init(), has been called.
42 PortableInterceptor::ServerRequestInterceptor_ptr
server_interceptor ();
45 /// How much requests to pass thru before forwarding.
46 CORBA::ULong request_pass_count_
;
48 /// Pointer to the server request interceptor. ORB is responsible
50 PortableInterceptor::ServerRequestInterceptor_var server_interceptor_
;
57 #endif /* TAO_HAS_INTERCEPTORS == 1 */
59 #include /**/ "ace/post.h"
61 #endif /* TAO_SERVER_ORB_INITIALIZER_H */