Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / PortableServer / RequestProcessingStrategyDefaultServant.h
blob5318c0482a73d984b68a576251e604d118b50978
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file RequestProcessingStrategyDefaultServant.h
7 * @author Johnny Willemsen <jwillemsen@remedy.nl>
8 */
9 //=============================================================================
11 #ifndef TAO_REQUESTPROCESSINGSTRATEGYDEFAULTSERVANT_H
12 #define TAO_REQUESTPROCESSINGSTRATEGYDEFAULTSERVANT_H
13 #include /**/ "ace/pre.h"
15 #include "tao/PortableServer/RequestProcessingStrategy.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 # pragma once
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #include "tao/PortableServer/Servant_Base.h"
23 #include "tao/PortableServer/Servant_Location.h"
24 #include "tao/PortableServer/PortableServer.h"
26 #if (TAO_HAS_MINIMUM_POA == 0) && !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO)
28 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
30 class TAO_Root_POA;
32 namespace TAO
34 namespace Portable_Server
36 class RequestProcessingStrategyDefaultServant
37 : public RequestProcessingStrategy
39 public:
40 RequestProcessingStrategyDefaultServant () = default;
42 void strategy_cleanup() override;
44 PortableServer::ServantManager_ptr get_servant_manager () override;
46 void set_servant_manager (PortableServer::ServantManager_ptr imgr) override;
48 PortableServer::Servant get_servant () override;
50 void set_servant (PortableServer::Servant servant) override;
52 TAO_Servant_Location locate_servant (
53 const PortableServer::ObjectId &system_id,
54 PortableServer::Servant &servant) override;
56 PortableServer::Servant locate_servant (
57 const char *operation,
58 const PortableServer::ObjectId &system_id,
59 TAO::Portable_Server::Servant_Upcall &servant_upcall,
60 TAO::Portable_Server::POA_Current_Impl &poa_current_impl,
61 bool &wait_occurred_restart_call) override;
63 PortableServer::Servant system_id_to_servant (
64 const PortableServer::ObjectId &system_id) override;
66 PortableServer::Servant id_to_servant (
67 const PortableServer::ObjectId &id) override;
69 void cleanup_servant (
70 PortableServer::Servant servant,
71 const PortableServer::ObjectId &user_id) override;
73 void etherealize_objects (CORBA::Boolean etherealize_objects) override;
75 PortableServer::ObjectId *servant_to_id (
76 PortableServer::Servant servant) override;
78 void post_invoke_servant_cleanup(
79 const PortableServer::ObjectId &system_id,
80 const TAO::Portable_Server::Servant_Upcall &servant_upcall) override;
82 private:
83 PortableServer::ServantBase_var default_servant_ {};
88 TAO_END_VERSIONED_NAMESPACE_DECL
90 #endif /* TAO_HAS_MINIMUM_POA == 0 */
92 #include /**/ "ace/post.h"
93 #endif /* TAO_REQUESTPROCESSINGSTRATEGYDEFAULTSERVANT_H */