2 //=============================================================================
6 * @author Carlos O'Ryan
8 //=============================================================================
11 #ifndef TAO_DSI_GATEWAY_TEST_DSI_H
12 #define TAO_DSI_GATEWAY_TEST_DSI_H
14 #include "tao/DynamicInterface/Server_Request.h"
15 #include "tao/DynamicInterface/Dynamic_Implementation.h"
16 #include "tao/DynamicInterface/AMH_DSI_Response_Handler.h"
17 #include "tao/PortableServer/PortableServer.h"
21 * @class DSI_Simple_Server
23 * @brief DSI Simpler Server implementation
25 * Implements the DSI/DII gateway.
27 class DSI_Simple_Server
: public TAO_DynamicImplementation
31 DSI_Simple_Server (CORBA::ORB_ptr orb
,
32 CORBA::Object_ptr target
,
33 PortableServer::POA_ptr poa
);
36 * Turns around and calls invoke, but using AMH style handler
37 * = The DynamicImplementation methods.
40 virtual void _dispatch (TAO_ServerRequest
&request
,
41 TAO::Portable_Server::Servant_Upcall
*context
);
43 // we need this because it is a pure virtual method in
45 virtual void invoke (CORBA::ServerRequest_ptr request
);
46 virtual void invoke (CORBA::ServerRequest_ptr request
,
47 TAO_AMH_DSI_Response_Handler_ptr rh
);
49 virtual CORBA::RepositoryId
_primary_interface (
50 const PortableServer::ObjectId
&oid
,
51 PortableServer::POA_ptr poa
);
53 virtual PortableServer::POA_ptr
_default_POA ();
59 /// Target object, forward requests to it...
60 CORBA::Object_var target_
;
63 PortableServer::POA_var poa_
;
66 #if defined(__ACE_INLINE__)
67 #include "test_dsi.inl"
68 #endif /* __ACE_INLINE__ */
70 #endif /* TAO_DSI_GATEWAY_TEST_I_H */