Revert "Use a variable on the stack to not have a temporary in the call"
[ACE_TAO.git] / TAO / orbsvcs / tests / Bug_2615_Regression / ServerRequest_Interceptor2.h
blob5e2354ef9fcd5fb42bac2bbfe46a779056d7c101
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"
20 class ServerRequest_Interceptor2
21 : public virtual PortableInterceptor::ServerRequestInterceptor,
22 public virtual ::CORBA::LocalObject
24 public:
25 /// Constructor.
26 ServerRequest_Interceptor2 ();
28 /// Destructor.
29 ~ServerRequest_Interceptor2 ();
31 /**
32 * @name Methods Required by the Server Request Interceptor
33 * Interface
35 * These are methods that must be implemented since they are pure
36 * virtual in the abstract base class. They are the canonical
37 * methods required for all server request interceptors.
39 //@{
40 /// Return the name of this ServerRequestinterceptor.
41 virtual char * name ();
43 virtual void destroy ();
45 virtual void receive_request_service_contexts (
46 PortableInterceptor::ServerRequestInfo_ptr ri);
48 virtual void receive_request (
49 PortableInterceptor::ServerRequestInfo_ptr ri);
51 virtual void send_reply (
52 PortableInterceptor::ServerRequestInfo_ptr ri);
54 virtual void send_exception (
55 PortableInterceptor::ServerRequestInfo_ptr ri);
57 virtual void send_other (
58 PortableInterceptor::ServerRequestInfo_ptr ri);
59 //@}
61 static CORBA::Boolean has_ft_request_sc_;
63 private:
64 CORBA::ORB_var orb_;
67 #endif /* TAO249_SERVER_REQUEST_INTERCEPTOR2_H */