Merge pull request #2301 from sonndinh/remove-dup-reactor-functions
[ACE_TAO.git] / TAO / orbsvcs / tests / Bug_3215_Regression / ServerRequest_Interceptor2.h
blob7646627fd8ccc491679752b0ea6e24d03947b5e0
1 // -*- C++ -*-
3 //=============================================================================
4 //=============================================================================
6 #ifndef TAO249_SERVER_REQUEST_INTERCEPTOR2_H
7 #define TAO249_SERVER_REQUEST_INTERCEPTOR2_H
9 #include "ace/config-all.h"
11 #if !defined (ACE_LACKS_PRAGMA_ONCE)
12 # pragma once
13 #endif /* ACE_LACKS_PRAGMA_ONCE */
14 #include "tao/LocalObject.h"
15 #include "tao/PortableInterceptorC.h"
16 #include "tao/ORB.h"
17 #include "tao/PI/PI.h"
18 #include "tao/PI_Server/PI_Server.h"
19 #include "tao/TimeBaseC.h"
21 class TAO249_ServerRequest_Interceptor2
22 : public virtual PortableInterceptor::ServerRequestInterceptor,
23 public virtual ::CORBA::LocalObject
25 public:
26 /// Constructor.
27 TAO249_ServerRequest_Interceptor2 ();
29 /// Destructor.
30 ~TAO249_ServerRequest_Interceptor2 ();
32 /**
33 * @name Methods Required by the Server Request Interceptor
34 * Interface
36 * These are methods that must be implemented since they are pure
37 * virtual in the abstract base class. They are the canonical
38 * methods required for all server request interceptors.
40 //@{
41 /// Return the name of this ServerRequestinterceptor.
42 virtual char * name ();
44 virtual void destroy ();
46 virtual void receive_request_service_contexts (
47 PortableInterceptor::ServerRequestInfo_ptr ri);
49 virtual void receive_request (
50 PortableInterceptor::ServerRequestInfo_ptr ri);
52 virtual void send_reply (
53 PortableInterceptor::ServerRequestInfo_ptr ri);
55 virtual void send_exception (
56 PortableInterceptor::ServerRequestInfo_ptr ri);
58 virtual void send_other (
59 PortableInterceptor::ServerRequestInfo_ptr ri);
60 //@}
62 CORBA::Object_var server_iogr_;
64 protected:
65 TimeBase::TimeT get_now ();
67 private:
68 CORBA::ORB_var orb_;
70 CORBA::Boolean expired_;
73 #endif /* TAO249_SERVER_REQUEST_INTERCEPTOR2_H */