Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TAO_CSD_POA_H
00014 #define TAO_CSD_POA_H
00015
00016 #include "ace/pre.h"
00017
00018 #include "tao/CSD_Framework/CSD_FW_Export.h"
00019
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 #pragma once
00022 #endif
00023
00024 #include "tao/PortableServer/Regular_POA.h"
00025 #include "tao/CSD_Framework/CSD_Strategy_Proxy.h"
00026
00027 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00028
00029
00030
00031
00032
00033
00034
00035
00036 class TAO_CSD_FW_Export TAO_CSD_POA
00037 : public virtual CSD_Framework::POA,
00038 public virtual TAO_Regular_POA
00039 {
00040 public:
00041
00042 TAO_CSD_POA (const String &name,
00043 PortableServer::POAManager_ptr poa_manager,
00044 const TAO_POA_Policy_Set &policies,
00045 TAO_Root_POA *parent,
00046 ACE_Lock &lock,
00047 TAO_SYNCH_MUTEX &thread_lock,
00048 TAO_ORB_Core &orb_core,
00049 TAO_Object_Adapter *object_adapter);
00050
00051
00052 virtual ~TAO_CSD_POA (void);
00053
00054
00055 virtual
00056 void set_csd_strategy (::CSD_Framework::Strategy_ptr s);
00057
00058
00059 virtual void poa_activated_hook ();
00060
00061
00062 virtual void poa_deactivated_hook ();
00063
00064
00065 virtual void servant_activated_hook (PortableServer::Servant servant,
00066 const PortableServer::ObjectId& oid);
00067
00068
00069 virtual void servant_deactivated_hook (PortableServer::Servant servant,
00070 const PortableServer::ObjectId& oid);
00071
00072
00073 TAO_Root_POA * new_POA (const String &name,
00074 PortableServer::POAManager_ptr poa_manager,
00075 const TAO_POA_Policy_Set &policies,
00076 TAO_Root_POA *parent,
00077 ACE_Lock &lock,
00078 TAO_SYNCH_MUTEX &thread_lock,
00079 TAO_ORB_Core &orb_core,
00080 TAO_Object_Adapter *object_adapter);
00081
00082
00083 TAO::CSD::Strategy_Proxy&
00084 servant_dispatching_strategy_proxy (void) const;
00085
00086 private:
00087
00088 TAO::CSD::Strategy_Proxy* sds_proxy_;
00089 };
00090
00091 TAO_END_VERSIONED_NAMESPACE_DECL
00092
00093
00094 #if defined (__ACE_INLINE__)
00095 # include "tao/CSD_Framework/CSD_POA.inl"
00096 #endif
00097
00098 #include "ace/post.h"
00099
00100 #endif
00101