3 //=============================================================================
5 * @file RequestProcessingStrategyAOMOnly.h
7 * @author Johnny Willemsen <jwillemsen@remedy.nl>
9 //=============================================================================
11 #ifndef TAO_REQUESTPROCESSINGSTRATEGYAOMONLY_H
12 #define TAO_REQUESTPROCESSINGSTRATEGYAOMONLY_H
13 #include /**/ "ace/pre.h"
15 #include "tao/PortableServer/RequestProcessingStrategy.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #include "tao/PortableServer/Servant_Location.h"
22 #include "tao/PortableServer/PortableServer.h"
24 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
28 namespace Portable_Server
31 * @class RequestProcessingStrategyAOMOnly
33 * Request Processing Strategy which only uses the Active Object Map (AOM)
35 class RequestProcessingStrategyAOMOnly
: public RequestProcessingStrategy
38 RequestProcessingStrategyAOMOnly () = default;
40 #if (TAO_HAS_MINIMUM_POA == 0) && !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO)
41 PortableServer::ServantManager_ptr
get_servant_manager () override
;
43 void set_servant_manager (PortableServer::ServantManager_ptr imgr
) override
;
45 void set_servant (PortableServer::Servant servant
) override
;
47 PortableServer::Servant
get_servant () override
;
48 #endif /* TAO_HAS_MINIMUM_POA == 0 !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO) */
51 locate_servant (const PortableServer::ObjectId
&system_id
,
52 PortableServer::Servant
&servant
) override
;
54 PortableServer::Servant
55 locate_servant (const char *operation
,
56 const PortableServer::ObjectId
&system_id
,
57 TAO::Portable_Server::Servant_Upcall
&servant_upcall
,
58 TAO::Portable_Server::POA_Current_Impl
&poa_current_impl
,
59 bool &wait_occurred_restart_call
) override
;
61 PortableServer::Servant
system_id_to_servant (
62 const PortableServer::ObjectId
&system_id
) override
;
64 PortableServer::Servant
id_to_servant (
65 const PortableServer::ObjectId
&id
) override
;
67 void cleanup_servant (
68 PortableServer::Servant servant
,
69 const PortableServer::ObjectId
&user_id
) override
;
71 void etherealize_objects (CORBA::Boolean etherealize_objects
) override
;
73 PortableServer::ObjectId
*servant_to_id (PortableServer::Servant servant
) override
;
75 void post_invoke_servant_cleanup(
76 const PortableServer::ObjectId
&system_id
,
77 const TAO::Portable_Server::Servant_Upcall
&servant_upcall
) override
;
82 TAO_END_VERSIONED_NAMESPACE_DECL
84 #include /**/ "ace/post.h"
85 #endif /* TAO_REQUESTPROCESSINGSTRATEGYAOMONLY_H */