diff options
author | fhunleth <fhunleth@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-06-12 18:58:44 +0000 |
---|---|---|
committer | fhunleth <fhunleth@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-06-12 18:58:44 +0000 |
commit | 849ed197c824efc0c79eace4ebb1b58233ad5307 (patch) | |
tree | 468291519f5de84e2d73520262cff279db26aa67 /TAO/tao/PortableServer | |
parent | 5070be68f08f53deaee31754020ab36c0391af79 (diff) | |
download | ATCD-849ed197c824efc0c79eace4ebb1b58233ad5307.tar.gz |
Tue Jun 12 13:30:02 2001 Frank Hunleth <fhunleth@cs.wustl.edu>, Angelo Corsaro <corsaro@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/PortableServer')
35 files changed, 3185 insertions, 4360 deletions
diff --git a/TAO/tao/PortableServer/Default_Policy_Validator.cpp b/TAO/tao/PortableServer/Default_Policy_Validator.cpp new file mode 100644 index 00000000000..1f9f0afa055 --- /dev/null +++ b/TAO/tao/PortableServer/Default_Policy_Validator.cpp @@ -0,0 +1,103 @@ +// @(#) $Id$ + +#include "Default_Policy_Validator.h" +#include "POA_Policies.h" +#include "tao/Policy_Set.h" + +ACE_RCSID(tao, POA, "$Id$") + + +TAO_POA_Default_Policy_Validator::~TAO_POA_Default_Policy_Validator (void) +{ +} + + +void +TAO_POA_Default_Policy_Validator::validate_impl (TAO_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV) +{ + CORBA::Policy_var policy = + policies.get_cached_policy (TAO_CACHED_POLICY_SERVANT_RETENTION); + PortableServer::ServantRetentionPolicy_var srp = + PortableServer::ServantRetentionPolicy::_narrow (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + PortableServer::ServantRetentionPolicyValue servant_retention = + srp->value (ACE_TRY_ENV); + ACE_CHECK; + + policy = policies.get_cached_policy (TAO_CACHED_POLICY_REQUEST_PROCESSING); + PortableServer::RequestProcessingPolicy_var rpp = + PortableServer::RequestProcessingPolicy::_narrow (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + PortableServer::RequestProcessingPolicyValue request_processing = + rpp->value (ACE_TRY_ENV); + ACE_CHECK; + + // The NON_RETAIN policy requires either the USE_DEFAULT_SERVANT or + // USE_SERVANT_MANAGER policies. + if (servant_retention == PortableServer::NON_RETAIN) + if (request_processing != PortableServer::USE_SERVANT_MANAGER && + request_processing != PortableServer::USE_DEFAULT_SERVANT) + ACE_THROW (PortableServer::POA::InvalidPolicy ()); + + // USE_ACTIVE_OBJECT_MAP_ONLY requires the RETAIN policy. + if (request_processing == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) + if (servant_retention != PortableServer::RETAIN) + ACE_THROW (PortableServer::POA::InvalidPolicy ()); + + + policy = policies.get_cached_policy (TAO_CACHED_POLICY_ID_UNIQUENESS); + PortableServer::IdUniquenessPolicy_var iup = + PortableServer::IdUniquenessPolicy::_narrow (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + PortableServer::IdUniquenessPolicyValue id_uniqueness = + iup->value (ACE_TRY_ENV); + ACE_CHECK; + + + policy = policies.get_cached_policy (TAO_CACHED_POLICY_IMPLICIT_ACTIVATION); + PortableServer::ImplicitActivationPolicy_var iap = + PortableServer::ImplicitActivationPolicy::_narrow (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + PortableServer::ImplicitActivationPolicyValue implicit_activation = + iap->value (ACE_TRY_ENV); + ACE_CHECK; + + policy = policies.get_cached_policy (TAO_CACHED_POLICY_ID_ASSIGNMENT); + PortableServer::IdAssignmentPolicy_var idap = + PortableServer::IdAssignmentPolicy::_narrow (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + PortableServer::IdAssignmentPolicyValue id_assignment = + idap->value (ACE_TRY_ENV); + ACE_CHECK; + + + // USE_DEFAULT_SERVANT requires the MULTIPLE_ID policy. + if (request_processing == PortableServer::USE_DEFAULT_SERVANT) + if (id_uniqueness != PortableServer::MULTIPLE_ID) + ACE_THROW (PortableServer::POA::InvalidPolicy ()); + + // IMPLICIT_ACTIVATION requires the SYSTEM_ID and RETAIN policies. + if (implicit_activation == PortableServer::IMPLICIT_ACTIVATION) + if (servant_retention != PortableServer::RETAIN || + id_assignment != PortableServer::SYSTEM_ID) + ACE_THROW (PortableServer::POA::InvalidPolicy ()); +} + + +CORBA::Boolean +TAO_POA_Default_Policy_Validator::legal_policy_impl (CORBA::PolicyType type) +{ + return (type == PortableServer::THREAD_POLICY_ID || + type == PortableServer::LIFESPAN_POLICY_ID || + type == PortableServer::ID_UNIQUENESS_POLICY_ID || + type == PortableServer::ID_ASSIGNMENT_POLICY_ID || + type == PortableServer::IMPLICIT_ACTIVATION_POLICY_ID || + type == PortableServer::SERVANT_RETENTION_POLICY_ID || + type == PortableServer::REQUEST_PROCESSING_POLICY_ID); +} diff --git a/TAO/tao/PortableServer/Default_Policy_Validator.h b/TAO/tao/PortableServer/Default_Policy_Validator.h new file mode 100644 index 00000000000..ef1a260b7ce --- /dev/null +++ b/TAO/tao/PortableServer/Default_Policy_Validator.h @@ -0,0 +1,54 @@ +//============================================================================= +/** + * @file Default_Policy_Validator.h + * + * $Id$ + * + * This file contains the declaration for the default POA policy validator. + * + * @author Angelo Corsaro <corsaro@cs.wustl.edu> + * @author Frank Hunleth <fhuntleth@cs.wustl.edu> + */ +//============================================================================= + +#ifndef TAO_DEFAULT_POLICY_VALIDATOR_H_ +#define TAO_DEFAULT_POLICY_VALIDATOR_H_ + +#include "ace/pre.h" + +#include "Policy_Validator.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +class TAO_PortableServer_Export TAO_POA_Default_Policy_Validator + : public TAO_POA_Policy_Validator +{ +public: + /// Destructor. + ~TAO_POA_Default_Policy_Validator (void); + +protected: + /** + * Validate that the policies in the specified set + * are consistent and legal. Throw an appropriate exception + * if that is not the case. + */ + virtual void validate_impl (TAO_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV); + + /** + * Return whether the specified policy type is legal for the + * current configuration. This is needed since the user can + * potentially specify policies that are unknown to an + * validate () routine, and these need to be caught. + */ + virtual CORBA::Boolean legal_policy_impl (CORBA::PolicyType type); + +}; + +#include "ace/post.h" +#endif /* TAO_DEFAULT_POLICY_VALIDATOR_H_ */ + + diff --git a/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp b/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp index 7bc48f8e3e6..bdda43c16c5 100644 --- a/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp +++ b/TAO/tao/PortableServer/Default_Servant_Dispatcher.cpp @@ -1,6 +1,7 @@ // @(#) $Id$ #include "Default_Servant_Dispatcher.h" +#include "POA.h" ACE_RCSID(tao, Default_Acceptor_Filter, "$Id$") @@ -18,3 +19,32 @@ TAO_Default_Servant_Dispatcher::dispatch ( &servant_upcall, ACE_TRY_ENV); } + +TAO_POA * +TAO_Default_Servant_Dispatcher::create_POA (const ACE_CString &name, + TAO_POA_Manager &poa_manager, + const TAO_POA_Policy_Set &policies, + TAO_POA *parent, + ACE_Lock &lock, + TAO_SYNCH_MUTEX &thread_lock, + TAO_ORB_Core &orb_core, + TAO_Object_Adapter *object_adapter, + CORBA_Environment &ACE_TRY_ENV) +{ + TAO_POA *poa; + + ACE_NEW_THROW_EX (poa, + TAO_POA (name, + poa_manager, + policies, + parent, + lock, + thread_lock, + orb_core, + object_adapter, + ACE_TRY_ENV), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (0); + + return poa; +} diff --git a/TAO/tao/PortableServer/Default_Servant_Dispatcher.h b/TAO/tao/PortableServer/Default_Servant_Dispatcher.h index a28e413b9ca..4f0da7c6691 100644 --- a/TAO/tao/PortableServer/Default_Servant_Dispatcher.h +++ b/TAO/tao/PortableServer/Default_Servant_Dispatcher.h @@ -41,6 +41,17 @@ public: virtual void dispatch (TAO_Object_Adapter::Servant_Upcall &servant_upcall, TAO_ServerRequest &req, CORBA::Environment &ACE_TRY_ENV); + + /// Factory method for creating new POA's. + virtual TAO_POA *create_POA (const ACE_CString &name, + TAO_POA_Manager &poa_manager, + const TAO_POA_Policy_Set &policies, + TAO_POA *parent, + ACE_Lock &lock, + TAO_SYNCH_MUTEX &thread_lock, + TAO_ORB_Core &orb_core, + TAO_Object_Adapter *object_adapter, + CORBA_Environment &ACE_TRY_ENV); }; #include "ace/post.h" diff --git a/TAO/tao/PortableServer/Makefile b/TAO/tao/PortableServer/Makefile index 3c196c09f7f..ffe2b499296 100644 --- a/TAO/tao/PortableServer/Makefile +++ b/TAO/tao/PortableServer/Makefile @@ -24,7 +24,6 @@ include $(TAO_ROOT)/rules.tao.GNU CPP_SRCS += \ PortableServer \ PortableServerC \ - RTPortableServerC \ POA \ Default_Acceptor_Filter \ Object_Adapter \ @@ -43,7 +42,12 @@ CPP_SRCS += \ ServerRequestInfo \ ServerInterceptorAdapter \ Default_Servant_Dispatcher \ - Servant_Dispatcher + Servant_Dispatcher \ + POA_Cached_Policies \ + POA_Policies \ + POA_Policy_Set \ + Policy_Validator \ + Default_Policy_Validator ifeq ($(minimum_corba),0) @@ -60,14 +64,6 @@ CPP_SRCS += \ endif # corba_messaging -ifeq ($(rt_corba),1) - -CPP_SRCS += \ - RT_Acceptor_Filters \ - RT_Servant_Dispatcher - -endif # rt_corba - IDL_SRC = \ $(addsuffix S.cpp, $(IDL_FILES)) \ $(addsuffix C.cpp, $(IDL_FILES)) @@ -98,8 +94,7 @@ CPPFLAGS += -I$(TAO_ROOT) .obj/PortableServer.o .obj/PortableServer.so .shobj/PortableServer.o .shobj/PortableServer.so: PortableServer.cpp PortableServer.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -195,7 +190,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ $(TAO_ROOT)/tao/corbafwd.i \ - RTPortableServerC.h PortableServerC.h \ + PortableServerC.h \ $(TAO_ROOT)/tao/CurrentC.h \ $(TAO_ROOT)/tao/Object.h \ $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ @@ -226,28 +221,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Object_Adapter.h Key_Adapters.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + Object_Adapter.h Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -294,23 +269,24 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i .obj/PortableServerC.o .obj/PortableServerC.so .shobj/PortableServerC.o .shobj/PortableServerC.so: PortableServerC.cpp PortableServerC.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -436,8 +412,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i POA.h Object_Adapter.h Key_Adapters.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + POA.h Object_Adapter.h Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -484,39 +460,22 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POAManager.h POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -537,13 +496,26 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ @@ -553,6 +525,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -568,8 +545,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Singleton.h \ @@ -578,159 +553,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Thread_Manager.i \ $(TAO_ROOT)/tao/ORB_Core.i -.obj/RTPortableServerC.o .obj/RTPortableServerC.so .shobj/RTPortableServerC.o .shobj/RTPortableServerC.so: RTPortableServerC.cpp RTPortableServerC.h \ - $(ACE_ROOT)/ace/pre.h \ - PortableServerC.h portableserver_export.h \ - $(ACE_ROOT)/ace/post.h \ - $(ACE_ROOT)/ace/ACE_export.h \ - $(ACE_ROOT)/ace/svc_export.h \ - $(ACE_ROOT)/ace/ace_wchar.h \ - $(ACE_ROOT)/ace/ace_wchar.inl \ - $(ACE_ROOT)/ace/OS_Errno.h \ - $(ACE_ROOT)/ace/OS_Export.h \ - $(ACE_ROOT)/ace/OS_Errno.inl \ - $(TAO_ROOT)/tao/corbafwd.h \ - $(ACE_ROOT)/ace/CDR_Base.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/Message_Block.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/OS_Dirent.h \ - $(ACE_ROOT)/ace/OS_Dirent.inl \ - $(ACE_ROOT)/ace/OS_String.h \ - $(ACE_ROOT)/ace/OS_String.inl \ - $(ACE_ROOT)/ace/OS_Memory.h \ - $(ACE_ROOT)/ace/OS_Memory.inl \ - $(ACE_ROOT)/ace/OS_TLI.h \ - $(ACE_ROOT)/ace/OS_TLI.inl \ - $(ACE_ROOT)/ace/Min_Max.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Flag_Manip.h \ - $(ACE_ROOT)/ace/Flag_Manip.i \ - $(ACE_ROOT)/ace/Handle_Ops.h \ - $(ACE_ROOT)/ace/Handle_Ops.i \ - $(ACE_ROOT)/ace/Lib_Find.h \ - $(ACE_ROOT)/ace/Lib_Find.i \ - $(ACE_ROOT)/ace/Init_ACE.h \ - $(ACE_ROOT)/ace/Init_ACE.i \ - $(ACE_ROOT)/ace/Sock_Connect.h \ - $(ACE_ROOT)/ace/Sock_Connect.i \ - $(ACE_ROOT)/ace/ACE.i \ - $(ACE_ROOT)/ace/Malloc.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ - $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ - $(ACE_ROOT)/ace/Malloc.i \ - $(ACE_ROOT)/ace/Malloc_T.h \ - $(ACE_ROOT)/ace/Synch.h \ - $(ACE_ROOT)/ace/Synch.i \ - $(ACE_ROOT)/ace/Synch_T.h \ - $(ACE_ROOT)/ace/Synch_T.i \ - $(ACE_ROOT)/ace/Thread.h \ - $(ACE_ROOT)/ace/Thread_Adapter.h \ - $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ - $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ - $(ACE_ROOT)/ace/Thread_Adapter.inl \ - $(ACE_ROOT)/ace/Thread.i \ - $(ACE_ROOT)/ace/Atomic_Op.i \ - $(ACE_ROOT)/ace/Synch_T.cpp \ - $(ACE_ROOT)/ace/Malloc_Allocator.h \ - $(ACE_ROOT)/ace/Malloc_Base.h \ - $(ACE_ROOT)/ace/Malloc_Allocator.i \ - $(ACE_ROOT)/ace/Free_List.h \ - $(ACE_ROOT)/ace/Free_List.i \ - $(ACE_ROOT)/ace/Free_List.cpp \ - $(ACE_ROOT)/ace/Malloc_T.i \ - $(ACE_ROOT)/ace/Malloc_T.cpp \ - $(ACE_ROOT)/ace/Memory_Pool.h \ - $(ACE_ROOT)/ace/Event_Handler.h \ - $(ACE_ROOT)/ace/Event_Handler.i \ - $(ACE_ROOT)/ace/Signal.h \ - $(ACE_ROOT)/ace/Signal.i \ - $(ACE_ROOT)/ace/Mem_Map.h \ - $(ACE_ROOT)/ace/Mem_Map.i \ - $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ - $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ - $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ - $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ - $(ACE_ROOT)/ace/Unbounded_Set.h \ - $(ACE_ROOT)/ace/Node.h \ - $(ACE_ROOT)/ace/Node.cpp \ - $(ACE_ROOT)/ace/Unbounded_Set.inl \ - $(ACE_ROOT)/ace/Unbounded_Set.cpp \ - $(ACE_ROOT)/ace/Memory_Pool.i \ - $(ACE_ROOT)/ace/Message_Block.i \ - $(ACE_ROOT)/ace/Message_Block_T.h \ - $(ACE_ROOT)/ace/Message_Block_T.i \ - $(ACE_ROOT)/ace/Message_Block_T.cpp \ - $(ACE_ROOT)/ace/CDR_Base.inl \ - $(TAO_ROOT)/tao/try_macros.h \ - $(TAO_ROOT)/tao/orbconf.h \ - $(ACE_ROOT)/ace/CORBA_macros.h \ - $(TAO_ROOT)/tao/varbase.h \ - $(TAO_ROOT)/tao/TAO_Export.h \ - $(TAO_ROOT)/tao/corbafwd.i \ - $(TAO_ROOT)/tao/CurrentC.h \ - $(TAO_ROOT)/tao/Object.h \ - $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ - $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/Object.i \ - $(TAO_ROOT)/tao/CurrentC.i \ - $(TAO_ROOT)/tao/PolicyC.h \ - $(TAO_ROOT)/tao/Encodable.h \ - $(TAO_ROOT)/tao/Exception.h \ - $(ACE_ROOT)/ace/SString.h \ - $(ACE_ROOT)/ace/SString.i \ - $(TAO_ROOT)/tao/Exception.i \ - $(TAO_ROOT)/tao/Environment.h \ - $(TAO_ROOT)/tao/Environment.i \ - $(TAO_ROOT)/tao/Sequence.h \ - $(TAO_ROOT)/tao/Managed_Types.h \ - $(TAO_ROOT)/tao/Managed_Types.i \ - $(TAO_ROOT)/tao/Sequence.i \ - $(TAO_ROOT)/tao/Sequence_T.h \ - $(TAO_ROOT)/tao/Sequence_T.i \ - $(TAO_ROOT)/tao/Sequence_T.cpp \ - $(TAO_ROOT)/tao/CDR.h \ - $(ACE_ROOT)/ace/CDR_Stream.h \ - $(ACE_ROOT)/ace/CDR_Stream.i \ - $(TAO_ROOT)/tao/CDR.i \ - $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/PolicyC.i \ - $(TAO_ROOT)/tao/Typecode.h \ - $(TAO_ROOT)/tao/Typecode.i \ - $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i - -.obj/POA.o .obj/POA.so .shobj/POA.o .shobj/POA.so: POA.cpp POA.h \ - $(ACE_ROOT)/ace/pre.h \ +.obj/POA.o .obj/POA.so .shobj/POA.o .shobj/POA.so: POA.cpp POA.h $(ACE_ROOT)/ace/pre.h \ $(ACE_ROOT)/ace/SString.h \ $(ACE_ROOT)/ace/ACE.h \ $(ACE_ROOT)/ace/OS.h \ @@ -858,8 +681,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -906,39 +728,22 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POAManager.h POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -956,7 +761,7 @@ CPPFLAGS += -I$(TAO_ROOT) portableserver_export.h \ ImplRepoC.i \ PortableServer.h \ - RTPortableServerC.h \ + PortableServerC.h \ Servant_Base.h \ Collocated_Object.h \ Collocated_Object.i \ @@ -975,13 +780,26 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ @@ -991,6 +809,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -1006,8 +829,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Singleton.h \ @@ -1027,21 +848,16 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Profile.i \ $(TAO_ROOT)/tao/MProfile.i \ $(TAO_ROOT)/tao/Stub.i \ - $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/Acceptor_Registry.h \ - $(TAO_ROOT)/tao/Acceptor_Registry.i \ Default_Acceptor_Filter.h \ $(TAO_ROOT)/tao/Acceptor_Filter.h \ $(TAO_ROOT)/tao/Acceptor_Filter.i \ - RT_Acceptor_Filters.h RT_Acceptor_Filters.i \ $(ACE_ROOT)/ace/Auto_Ptr.h \ $(ACE_ROOT)/ace/Auto_Ptr.i \ $(ACE_ROOT)/ace/Auto_Ptr.cpp .obj/Default_Acceptor_Filter.o .obj/Default_Acceptor_Filter.so .shobj/Default_Acceptor_Filter.o .shobj/Default_Acceptor_Filter.so: Default_Acceptor_Filter.cpp \ Default_Acceptor_Filter.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -1170,8 +986,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Pluggable.i .obj/Object_Adapter.o .obj/Object_Adapter.so .shobj/Object_Adapter.o .shobj/Object_Adapter.so: Object_Adapter.cpp Object_Adapter.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -1179,8 +994,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/ace_wchar.inl \ $(ACE_ROOT)/ace/OS_Errno.h \ $(ACE_ROOT)/ace/OS_Export.h \ - $(ACE_ROOT)/ace/OS_Errno.inl \ - Key_Adapters.h PortableServerC.h \ + $(ACE_ROOT)/ace/OS_Errno.inl Key_Adapters.h \ + PortableServerC.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/Basic_Types.h \ @@ -1298,8 +1113,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -1346,39 +1160,22 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POA.h POAManager.h POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POA.h POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -1400,13 +1197,26 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ @@ -1416,6 +1226,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -1431,8 +1246,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Singleton.h \ @@ -1443,13 +1256,16 @@ CPPFLAGS += -I$(TAO_ROOT) ServerRequestInfo.h \ $(TAO_ROOT)/tao/StringSeqC.h \ $(TAO_ROOT)/tao/StringSeqC.i \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.h \ $(TAO_ROOT)/tao/Tagged_Profile.h \ $(TAO_ROOT)/tao/GIOPC.h \ $(TAO_ROOT)/tao/GIOPC.i \ $(TAO_ROOT)/tao/Tagged_Profile.i \ $(TAO_ROOT)/tao/TAO_Server_Request.i \ - ServerRequestInfo.inl ServerInterceptorAdapter.h \ + ServerRequestInfo.inl Default_Servant_Dispatcher.h \ + Servant_Dispatcher.h ServerInterceptorAdapter.h \ ServerInterceptorAdapter.inl \ $(ACE_ROOT)/ace/Auto_Ptr.h \ $(ACE_ROOT)/ace/Auto_Ptr.i \ @@ -1466,15 +1282,13 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Profile.i \ $(TAO_ROOT)/tao/MProfile.i \ $(TAO_ROOT)/tao/Stub.i \ - $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/PortableInterceptor.h \ - RT_Servant_Dispatcher.h Servant_Dispatcher.h \ + $(TAO_ROOT)/tao/POA_Extension_Initializer.h \ $(TAO_ROOT)/tao/Timeprobe.h \ $(ACE_ROOT)/ace/Timeprobe.h .obj/Operation_Table.o .obj/Operation_Table.so .shobj/Operation_Table.o .shobj/Operation_Table.so: Operation_Table.cpp Operation_Table.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -1648,8 +1462,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ORB.i .obj/Key_Adapters.o .obj/Key_Adapters.so .shobj/Key_Adapters.o .shobj/Key_Adapters.so: Key_Adapters.cpp Key_Adapters.h \ - $(ACE_ROOT)/ace/pre.h \ - PortableServerC.h portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h PortableServerC.h \ + portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -1775,8 +1589,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -1823,12 +1636,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i .obj/POAManager.o .obj/POAManager.so .shobj/POAManager.o .shobj/POAManager.so: POAManager.cpp POAManager.h \ - $(ACE_ROOT)/ace/pre.h \ - PortableServerC.h portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h PortableServerC.h \ + portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -1954,8 +1766,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i poa_macros.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + poa_macros.h \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ POAManager.i POA.h Object_Adapter.h Key_Adapters.h \ @@ -2005,37 +1817,20 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ - Object_Adapter.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POA_Cached_Policies.h \ + POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -2177,8 +1972,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -2225,8 +2019,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ @@ -2236,8 +2030,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Auto_Ptr.cpp .obj/Servant_Base.o .obj/Servant_Base.so .shobj/Servant_Base.o .shobj/Servant_Base.so: Servant_Base.cpp Servant_Base.h \ - $(ACE_ROOT)/ace/pre.h \ - PortableServerC.h portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h PortableServerC.h \ + portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -2363,8 +2157,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i POA.h Object_Adapter.h Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ @@ -2413,37 +2206,20 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Active_Object_Map.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POAManager.h POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -2457,6 +2233,16 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/OctetSeqC.h \ $(TAO_ROOT)/tao/OctetSeqC.i POA.i \ Operation_Table.h \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ $(TAO_ROOT)/tao/Timeprobe.h \ $(ACE_ROOT)/ace/Timeprobe.h \ $(TAO_ROOT)/tao/ORB_Core.h \ @@ -2467,9 +2253,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ @@ -2483,6 +2272,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -2498,8 +2292,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Singleton.h \ @@ -2524,6 +2316,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/GIOPC.h \ $(TAO_ROOT)/tao/GIOPC.i \ $(TAO_ROOT)/tao/Tagged_Profile.i \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.i \ $(TAO_ROOT)/tao/IFR_Client_Adapter.h \ $(ACE_ROOT)/ace/Dynamic_Service.h \ @@ -2660,8 +2454,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -2708,39 +2501,22 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POAManager.h POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ $(ACE_ROOT)/ace/Containers.h \ @@ -2762,13 +2538,26 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ @@ -2778,6 +2567,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -2793,8 +2587,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Singleton.h \ @@ -2944,8 +2736,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -2992,39 +2783,21 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i .obj/Strategized_Object_Proxy_Broker.o .obj/Strategized_Object_Proxy_Broker.so .shobj/Strategized_Object_Proxy_Broker.o .shobj/Strategized_Object_Proxy_Broker.so: Strategized_Object_Proxy_Broker.cpp \ Strategized_Object_Proxy_Broker.h portableserver_export.h \ @@ -3159,8 +2932,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/PolicyC.i \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(ACE_ROOT)/ace/Service_Object.h \ @@ -3251,10 +3027,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Hash_Map_Manager.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ @@ -3271,8 +3043,7 @@ CPPFLAGS += -I$(TAO_ROOT) Direct_Object_Proxy_Impl.h ThruPOA_Object_Proxy_Impl.h .obj/Collocated_Object.o .obj/Collocated_Object.so .shobj/Collocated_Object.o .shobj/Collocated_Object.so: Collocated_Object.cpp Collocated_Object.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -3371,8 +3142,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/corbafwd.i \ $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/Object.i \ - Servant_Base.h PortableServerC.h \ + $(TAO_ROOT)/tao/Object.i Servant_Base.h \ + PortableServerC.h \ $(TAO_ROOT)/tao/CurrentC.h \ $(TAO_ROOT)/tao/CurrentC.i \ $(TAO_ROOT)/tao/PolicyC.h \ @@ -3399,8 +3170,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Collocated_Object.i Object_Adapter.h Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ @@ -3449,37 +3219,19 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Active_Object_Map.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/ORB.h \ $(TAO_ROOT)/tao/Services.h \ @@ -3488,13 +3240,26 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ @@ -3504,6 +3269,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -3522,8 +3292,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Containers.h \ @@ -3675,33 +3443,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/PolicyC.i \ PortableServer.h \ portableserver_export.h \ - RTPortableServerC.h \ PortableServerC.h \ $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/Any.i \ PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i \ Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i \ @@ -3766,14 +3513,32 @@ CPPFLAGS += -I$(TAO_ROOT) Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ + Default_Policy_Validator.h \ + Policy_Validator.h \ + POA_Policy_Set.h \ + POA_Policies.h \ + POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i \ Object_Adapter.i \ Operation_Table.h \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.h \ $(TAO_ROOT)/tao/Tagged_Profile.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/GIOPC.h \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ @@ -3781,6 +3546,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Tagged_Profile.i \ $(TAO_ROOT)/tao/OctetSeqC.h \ $(TAO_ROOT)/tao/OctetSeqC.i \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/ORB.h \ @@ -3790,6 +3557,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ @@ -3806,6 +3574,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ValueBase.i \ $(TAO_ROOT)/tao/ValueFactory.h \ $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ $(TAO_ROOT)/tao/PollableC.h \ $(TAO_ROOT)/tao/PollableC.i \ $(TAO_ROOT)/tao/MessagingC.i \ @@ -3824,8 +3597,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Containers.h \ @@ -3865,8 +3636,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Dynamic_Service.cpp .obj/ORB_Manager.o .obj/ORB_Manager.so .shobj/ORB_Manager.o .shobj/ORB_Manager.so: ORB_Manager.cpp ORB_Manager.h \ - $(ACE_ROOT)/ace/pre.h \ - PortableServer.h portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h PortableServer.h \ + portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -3962,7 +3733,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ $(TAO_ROOT)/tao/corbafwd.i \ - RTPortableServerC.h PortableServerC.h \ + PortableServerC.h \ $(TAO_ROOT)/tao/CurrentC.h \ $(TAO_ROOT)/tao/Object.h \ $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ @@ -3993,28 +3764,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(TAO_ROOT)/tao/ORB.h \ $(TAO_ROOT)/tao/Services.h \ $(TAO_ROOT)/tao/Services.i \ @@ -4151,7 +3901,6 @@ CPPFLAGS += -I$(TAO_ROOT) portableserver_export.h \ ImplRepoC.i \ PortableServer.h \ - RTPortableServerC.h \ PortableServerC.h \ $(TAO_ROOT)/tao/CurrentC.h \ $(TAO_ROOT)/tao/CurrentC.i \ @@ -4159,26 +3908,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Encodable.h \ $(TAO_ROOT)/tao/PolicyC.i \ PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i \ Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i \ @@ -4418,19 +4147,20 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - Object_Adapter.i ServerRequestInfo.inl POA.h POAManager.h \ - POAManager.i \ + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i ServerRequestInfo.inl POA.h \ + POAManager.h POAManager.i POA_Cached_Policies.h POA_Cached_Policies.i \ $(ACE_ROOT)/ace/Containers.h \ $(ACE_ROOT)/ace/Containers.i \ $(ACE_ROOT)/ace/Containers_T.h \ @@ -4438,14 +4168,13 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Array_Base.inl \ $(ACE_ROOT)/ace/Array_Base.cpp \ $(ACE_ROOT)/ace/Containers_T.i \ - $(ACE_ROOT)/ace/Containers_T.cpp \ - POA.i + $(ACE_ROOT)/ace/Containers_T.cpp POA.i .obj/ServerInterceptorAdapter.o .obj/ServerInterceptorAdapter.so .shobj/ServerInterceptorAdapter.o .shobj/ServerInterceptorAdapter.so: ServerInterceptorAdapter.cpp \ ServerInterceptorAdapter.h \ $(ACE_ROOT)/ace/pre.h \ - $(TAO_ROOT)/tao/corbafwd.h \ - $(ACE_ROOT)/ace/CDR_Base.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -4454,11 +4183,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/OS_Errno.h \ $(ACE_ROOT)/ace/OS_Export.h \ $(ACE_ROOT)/ace/OS_Errno.inl \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/Message_Block.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/OS_Dirent.h \ $(ACE_ROOT)/ace/OS_Dirent.inl \ $(ACE_ROOT)/ace/OS_String.h \ @@ -4469,8 +4193,15 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/OS_TLI.inl \ $(ACE_ROOT)/ace/Min_Max.h \ $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/OS.i portableserver_export.h \ + $(TAO_ROOT)/tao/PortableInterceptorC.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ $(ACE_ROOT)/ace/Flag_Manip.h \ $(ACE_ROOT)/ace/Flag_Manip.i \ $(ACE_ROOT)/ace/Handle_Ops.h \ @@ -4534,12 +4265,10 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Message_Block_T.cpp \ $(ACE_ROOT)/ace/CDR_Base.inl \ $(TAO_ROOT)/tao/try_macros.h \ - $(TAO_ROOT)/tao/orbconf.h \ $(ACE_ROOT)/ace/CORBA_macros.h \ $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ $(TAO_ROOT)/tao/corbafwd.i \ - $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/CDR.h \ @@ -4621,8 +4350,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/GIOPC.i \ $(TAO_ROOT)/tao/Tagged_Profile.i \ $(TAO_ROOT)/tao/TAO_Server_Request.i \ - Object_Adapter.h portableserver_export.h Key_Adapters.h \ - PortableServerC.h PortableServerC.i \ + Object_Adapter.h Key_Adapters.h PortableServerC.h PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -4669,23 +4397,23 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - Object_Adapter.i ServerRequestInfo.inl + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i ServerRequestInfo.inl .obj/Default_Servant_Dispatcher.o .obj/Default_Servant_Dispatcher.so .shobj/Default_Servant_Dispatcher.o .shobj/Default_Servant_Dispatcher.so: Default_Servant_Dispatcher.cpp \ Default_Servant_Dispatcher.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -4813,8 +4541,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -4861,43 +4588,37 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i POA.h POAManager.h POAManager.i \ + POA_Cached_Policies.h POA_Cached_Policies.i \ + $(TAO_ROOT)/tao/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(ACE_ROOT)/ace/Containers.h \ + $(ACE_ROOT)/ace/Containers.i \ + $(ACE_ROOT)/ace/Containers_T.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ + $(ACE_ROOT)/ace/Containers_T.i \ + $(ACE_ROOT)/ace/Containers_T.cpp \ + $(TAO_ROOT)/tao/OctetSeqC.h \ + $(TAO_ROOT)/tao/OctetSeqC.i POA.i .obj/Servant_Dispatcher.o .obj/Servant_Dispatcher.so .shobj/Servant_Dispatcher.o .shobj/Servant_Dispatcher.so: Servant_Dispatcher.cpp Servant_Dispatcher.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ + $(ACE_ROOT)/ace/pre.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -4905,8 +4626,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/ace_wchar.inl \ $(ACE_ROOT)/ace/OS_Errno.h \ $(ACE_ROOT)/ace/OS_Export.h \ - $(ACE_ROOT)/ace/OS_Errno.inl \ - Object_Adapter.h Key_Adapters.h PortableServerC.h \ + $(ACE_ROOT)/ace/OS_Errno.inl Object_Adapter.h \ + Key_Adapters.h PortableServerC.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/Basic_Types.h \ @@ -5024,8 +4745,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Typecode.h \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ - PortableServerC.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -5072,44 +4792,25 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ + $(ACE_ROOT)/ace/Map_T.cpp Key_Adapters.i \ + poa_macros.h Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i + Default_Policy_Validator.h Policy_Validator.h POA_Policy_Set.h \ + POA_Policies.h POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i Object_Adapter.i -.obj/ImplRepoC.o .obj/ImplRepoC.so .shobj/ImplRepoC.o .shobj/ImplRepoC.so: ImplRepoC.cpp ImplRepoC.h \ - $(ACE_ROOT)/ace/pre.h \ - $(TAO_ROOT)/tao/corbafwd.h \ - $(ACE_ROOT)/ace/CDR_Base.h \ +.obj/POA_Cached_Policies.o .obj/POA_Cached_Policies.so .shobj/POA_Cached_Policies.o .shobj/POA_Cached_Policies.so: POA_Cached_Policies.cpp POA_Cached_Policies.h \ + $(ACE_ROOT)/ace/pre.h POA_Policies.h \ + PortableServerC.h portableserver_export.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -5118,6 +4819,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/OS_Errno.h \ $(ACE_ROOT)/ace/OS_Export.h \ $(ACE_ROOT)/ace/OS_Errno.inl \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -5203,69 +4906,332 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ $(TAO_ROOT)/tao/corbafwd.i \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ + $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.i \ + $(TAO_ROOT)/tao/Exception.i \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/Sequence.h \ + $(TAO_ROOT)/tao/Managed_Types.h \ + $(TAO_ROOT)/tao/Managed_Types.i \ + $(TAO_ROOT)/tao/Sequence.i \ + $(TAO_ROOT)/tao/Sequence_T.h \ + $(TAO_ROOT)/tao/Sequence_T.i \ + $(TAO_ROOT)/tao/Sequence_T.cpp \ $(TAO_ROOT)/tao/CDR.h \ $(ACE_ROOT)/ace/CDR_Stream.h \ $(ACE_ROOT)/ace/CDR_Stream.i \ $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/PolicyC.i \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Environment.h \ - $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + POA_Policies.i POA_Cached_Policies.i POA_Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i + +.obj/POA_Policies.o .obj/POA_Policies.so .shobj/POA_Policies.o .shobj/POA_Policies.so: POA_Policies.cpp POA_Policies.h \ + $(ACE_ROOT)/ace/pre.h PortableServerC.h \ + portableserver_export.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/ace_wchar.inl \ + $(ACE_ROOT)/ace/OS_Errno.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Errno.inl \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Flag_Manip.h \ + $(ACE_ROOT)/ace/Flag_Manip.i \ + $(ACE_ROOT)/ace/Handle_Ops.h \ + $(ACE_ROOT)/ace/Handle_Ops.i \ + $(ACE_ROOT)/ace/Lib_Find.h \ + $(ACE_ROOT)/ace/Lib_Find.i \ + $(ACE_ROOT)/ace/Init_ACE.h \ + $(ACE_ROOT)/ace/Init_ACE.i \ + $(ACE_ROOT)/ace/Sock_Connect.h \ + $(ACE_ROOT)/ace/Sock_Connect.i \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Log_Msg.h \ + $(ACE_ROOT)/ace/Log_Record.h \ + $(ACE_ROOT)/ace/Log_Priority.h \ + $(ACE_ROOT)/ace/Log_Record.i \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Synch.h \ + $(ACE_ROOT)/ace/Synch.i \ + $(ACE_ROOT)/ace/Synch_T.h \ + $(ACE_ROOT)/ace/Synch_T.i \ + $(ACE_ROOT)/ace/Thread.h \ + $(ACE_ROOT)/ace/Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread.i \ + $(ACE_ROOT)/ace/Atomic_Op.i \ + $(ACE_ROOT)/ace/Synch_T.cpp \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(ACE_ROOT)/ace/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Mem_Map.h \ + $(ACE_ROOT)/ace/Mem_Map.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.i \ + $(ACE_ROOT)/ace/Message_Block.i \ + $(ACE_ROOT)/ace/Message_Block_T.h \ + $(ACE_ROOT)/ace/Message_Block_T.i \ + $(ACE_ROOT)/ace/Message_Block_T.cpp \ + $(ACE_ROOT)/ace/CDR_Base.inl \ + $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/CORBA_macros.h \ + $(TAO_ROOT)/tao/varbase.h \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/corbafwd.i \ + $(TAO_ROOT)/tao/CurrentC.h \ $(TAO_ROOT)/tao/Object.h \ $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ $(TAO_ROOT)/tao/Object.i \ - $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ $(TAO_ROOT)/tao/Exception.h \ $(ACE_ROOT)/ace/SString.h \ $(ACE_ROOT)/ace/SString.i \ $(TAO_ROOT)/tao/Exception.i \ - $(TAO_ROOT)/tao/Typecode.i \ - $(TAO_ROOT)/tao/Any.i \ - $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/Sequence.h \ $(TAO_ROOT)/tao/Managed_Types.h \ $(TAO_ROOT)/tao/Managed_Types.i \ - $(TAO_ROOT)/tao/Sequence.h \ $(TAO_ROOT)/tao/Sequence.i \ $(TAO_ROOT)/tao/Sequence_T.h \ $(TAO_ROOT)/tao/Sequence_T.i \ $(TAO_ROOT)/tao/Sequence_T.cpp \ - portableserver_export.h ImplRepoC.i \ - $(TAO_ROOT)/tao/Stub.h \ - $(TAO_ROOT)/tao/Pluggable.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/Pluggable.i \ - $(TAO_ROOT)/tao/MProfile.h \ - $(TAO_ROOT)/tao/Profile.h \ - $(TAO_ROOT)/tao/Tagged_Components.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.i \ - $(TAO_ROOT)/tao/Tagged_Components.i \ - $(TAO_ROOT)/tao/PolicyC.h \ - $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(ACE_ROOT)/ace/CDR_Stream.h \ + $(ACE_ROOT)/ace/CDR_Stream.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/PolicyC.i \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/Any.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + POA_Policies.i + +.obj/POA_Policy_Set.o .obj/POA_Policy_Set.so .shobj/POA_Policy_Set.o .shobj/POA_Policy_Set.so: POA_Policy_Set.cpp POA_Policy_Set.h \ + $(ACE_ROOT)/ace/pre.h POA_Policies.h \ + PortableServerC.h portableserver_export.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/ace_wchar.inl \ + $(ACE_ROOT)/ace/OS_Errno.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Errno.inl \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Flag_Manip.h \ + $(ACE_ROOT)/ace/Flag_Manip.i \ + $(ACE_ROOT)/ace/Handle_Ops.h \ + $(ACE_ROOT)/ace/Handle_Ops.i \ + $(ACE_ROOT)/ace/Lib_Find.h \ + $(ACE_ROOT)/ace/Lib_Find.i \ + $(ACE_ROOT)/ace/Init_ACE.h \ + $(ACE_ROOT)/ace/Init_ACE.i \ + $(ACE_ROOT)/ace/Sock_Connect.h \ + $(ACE_ROOT)/ace/Sock_Connect.i \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Log_Msg.h \ + $(ACE_ROOT)/ace/Log_Record.h \ + $(ACE_ROOT)/ace/Log_Priority.h \ + $(ACE_ROOT)/ace/Log_Record.i \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Synch.h \ + $(ACE_ROOT)/ace/Synch.i \ + $(ACE_ROOT)/ace/Synch_T.h \ + $(ACE_ROOT)/ace/Synch_T.i \ + $(ACE_ROOT)/ace/Thread.h \ + $(ACE_ROOT)/ace/Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread.i \ + $(ACE_ROOT)/ace/Atomic_Op.i \ + $(ACE_ROOT)/ace/Synch_T.cpp \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(ACE_ROOT)/ace/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Mem_Map.h \ + $(ACE_ROOT)/ace/Mem_Map.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.i \ + $(ACE_ROOT)/ace/Message_Block.i \ + $(ACE_ROOT)/ace/Message_Block_T.h \ + $(ACE_ROOT)/ace/Message_Block_T.i \ + $(ACE_ROOT)/ace/Message_Block_T.cpp \ + $(ACE_ROOT)/ace/CDR_Base.inl \ + $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/CORBA_macros.h \ + $(TAO_ROOT)/tao/varbase.h \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/corbafwd.i \ $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ + $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/Object.i \ $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.i \ + $(TAO_ROOT)/tao/Exception.i \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/Sequence.h \ + $(TAO_ROOT)/tao/Managed_Types.h \ + $(TAO_ROOT)/tao/Managed_Types.i \ + $(TAO_ROOT)/tao/Sequence.i \ + $(TAO_ROOT)/tao/Sequence_T.h \ + $(TAO_ROOT)/tao/Sequence_T.i \ + $(TAO_ROOT)/tao/Sequence_T.cpp \ + $(TAO_ROOT)/tao/CDR.h \ + $(ACE_ROOT)/ace/CDR_Stream.h \ + $(ACE_ROOT)/ace/CDR_Stream.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ $(TAO_ROOT)/tao/PolicyC.i \ - $(TAO_ROOT)/tao/GIOP_Message_Version.h \ - $(TAO_ROOT)/tao/GIOP_Message_Version.inl \ - $(TAO_ROOT)/tao/Profile.i \ - $(TAO_ROOT)/tao/MProfile.i \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/Any.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i POA_Cached_Policies.h POA_Cached_Policies.i \ + Policy_Validator.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/ORB.h \ $(TAO_ROOT)/tao/Services.h \ $(TAO_ROOT)/tao/Services.i \ $(TAO_ROOT)/tao/CORBA_String.h \ $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ - $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/Policy_Manager.h \ - $(TAO_ROOT)/tao/LocalObject.h \ - $(TAO_ROOT)/tao/LocalObject.i \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(ACE_ROOT)/ace/Service_Object.h \ $(ACE_ROOT)/ace/Shared_Object.h \ $(ACE_ROOT)/ace/Shared_Object.i \ $(ACE_ROOT)/ace/Service_Object.i \ + $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ + $(TAO_ROOT)/tao/Pluggable.i \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/params.h \ $(ACE_ROOT)/ace/Unbounded_Queue.h \ @@ -5342,10 +5308,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Hash_Map_Manager.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ @@ -5358,40 +5320,247 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Singleton.i \ $(ACE_ROOT)/ace/Singleton.cpp \ $(ACE_ROOT)/ace/Thread_Manager.i \ - $(TAO_ROOT)/tao/ORB_Core.i \ - $(TAO_ROOT)/tao/Stub.i \ - $(TAO_ROOT)/tao/Invocation.h \ - $(TAO_ROOT)/tao/Synch_Reply_Dispatcher.h \ - $(TAO_ROOT)/tao/Reply_Dispatcher.h \ - $(TAO_ROOT)/tao/Reply_Dispatcher.i \ - $(TAO_ROOT)/tao/TAOC.h \ - $(TAO_ROOT)/tao/Priority_Mapping_Manager.h \ - $(TAO_ROOT)/tao/Priority_Mapping.h \ - $(TAO_ROOT)/tao/Priority_Mapping.i \ - $(TAO_ROOT)/tao/Priority_Mapping_Manager.i \ - $(TAO_ROOT)/tao/TAOC.i \ - $(TAO_ROOT)/tao/operation_details.h \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ - $(TAO_ROOT)/tao/target_specification.h \ - $(TAO_ROOT)/tao/Object_KeyC.h \ - $(TAO_ROOT)/tao/Object_KeyC.i \ - $(TAO_ROOT)/tao/target_specification.i \ - $(TAO_ROOT)/tao/operation_details.i \ - $(TAO_ROOT)/tao/Invocation_Endpoint_Selectors.h \ - $(TAO_ROOT)/tao/Invocation_Endpoint_Selectors.i \ - $(TAO_ROOT)/tao/Invocation.i \ - $(TAO_ROOT)/tao/PortableInterceptor.h \ - $(TAO_ROOT)/tao/RequestInfo_Util.h \ - $(TAO_ROOT)/tao/ClientRequestInfo.h \ - $(TAO_ROOT)/tao/StringSeqC.h \ - $(TAO_ROOT)/tao/StringSeqC.i \ - $(TAO_ROOT)/tao/ClientRequestInfo.inl \ - $(TAO_ROOT)/tao/ClientInterceptorAdapter.h \ - $(TAO_ROOT)/tao/ClientInterceptorAdapter.inl + $(TAO_ROOT)/tao/ORB_Core.i -.obj/ImplRepoS.o .obj/ImplRepoS.so .shobj/ImplRepoS.o .shobj/ImplRepoS.so: ImplRepoS.cpp ImplRepoS.h \ - $(ACE_ROOT)/ace/pre.h ImplRepoC.h \ +.obj/Policy_Validator.o .obj/Policy_Validator.so .shobj/Policy_Validator.o .shobj/Policy_Validator.so: Policy_Validator.cpp Policy_Validator.h \ + $(ACE_ROOT)/ace/pre.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/ace_wchar.inl \ + $(ACE_ROOT)/ace/OS_Errno.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Errno.inl \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Flag_Manip.h \ + $(ACE_ROOT)/ace/Flag_Manip.i \ + $(ACE_ROOT)/ace/Handle_Ops.h \ + $(ACE_ROOT)/ace/Handle_Ops.i \ + $(ACE_ROOT)/ace/Lib_Find.h \ + $(ACE_ROOT)/ace/Lib_Find.i \ + $(ACE_ROOT)/ace/Init_ACE.h \ + $(ACE_ROOT)/ace/Init_ACE.i \ + $(ACE_ROOT)/ace/Sock_Connect.h \ + $(ACE_ROOT)/ace/Sock_Connect.i \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Log_Msg.h \ + $(ACE_ROOT)/ace/Log_Record.h \ + $(ACE_ROOT)/ace/Log_Priority.h \ + $(ACE_ROOT)/ace/Log_Record.i \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Synch.h \ + $(ACE_ROOT)/ace/Synch.i \ + $(ACE_ROOT)/ace/Synch_T.h \ + $(ACE_ROOT)/ace/Synch_T.i \ + $(ACE_ROOT)/ace/Thread.h \ + $(ACE_ROOT)/ace/Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread.i \ + $(ACE_ROOT)/ace/Atomic_Op.i \ + $(ACE_ROOT)/ace/Synch_T.cpp \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(ACE_ROOT)/ace/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Mem_Map.h \ + $(ACE_ROOT)/ace/Mem_Map.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.i \ + $(ACE_ROOT)/ace/Message_Block.i \ + $(ACE_ROOT)/ace/Message_Block_T.h \ + $(ACE_ROOT)/ace/Message_Block_T.i \ + $(ACE_ROOT)/ace/Message_Block_T.cpp \ + $(ACE_ROOT)/ace/CDR_Base.inl \ + $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/CORBA_macros.h \ + $(TAO_ROOT)/tao/varbase.h \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/corbafwd.i \ + portableserver_export.h \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i + +.obj/Default_Policy_Validator.o .obj/Default_Policy_Validator.so .shobj/Default_Policy_Validator.o .shobj/Default_Policy_Validator.so: Default_Policy_Validator.cpp \ + Default_Policy_Validator.h \ + $(ACE_ROOT)/ace/pre.h Policy_Validator.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/ace_wchar.inl \ + $(ACE_ROOT)/ace/OS_Errno.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Errno.inl \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Flag_Manip.h \ + $(ACE_ROOT)/ace/Flag_Manip.i \ + $(ACE_ROOT)/ace/Handle_Ops.h \ + $(ACE_ROOT)/ace/Handle_Ops.i \ + $(ACE_ROOT)/ace/Lib_Find.h \ + $(ACE_ROOT)/ace/Lib_Find.i \ + $(ACE_ROOT)/ace/Init_ACE.h \ + $(ACE_ROOT)/ace/Init_ACE.i \ + $(ACE_ROOT)/ace/Sock_Connect.h \ + $(ACE_ROOT)/ace/Sock_Connect.i \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Log_Msg.h \ + $(ACE_ROOT)/ace/Log_Record.h \ + $(ACE_ROOT)/ace/Log_Priority.h \ + $(ACE_ROOT)/ace/Log_Record.i \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ + $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Synch.h \ + $(ACE_ROOT)/ace/Synch.i \ + $(ACE_ROOT)/ace/Synch_T.h \ + $(ACE_ROOT)/ace/Synch_T.i \ + $(ACE_ROOT)/ace/Thread.h \ + $(ACE_ROOT)/ace/Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ + $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread_Adapter.inl \ + $(ACE_ROOT)/ace/Thread.i \ + $(ACE_ROOT)/ace/Atomic_Op.i \ + $(ACE_ROOT)/ace/Synch_T.cpp \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(ACE_ROOT)/ace/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Mem_Map.h \ + $(ACE_ROOT)/ace/Mem_Map.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ + $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ + $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.i \ + $(ACE_ROOT)/ace/Message_Block.i \ + $(ACE_ROOT)/ace/Message_Block_T.h \ + $(ACE_ROOT)/ace/Message_Block_T.i \ + $(ACE_ROOT)/ace/Message_Block_T.cpp \ + $(ACE_ROOT)/ace/CDR_Base.inl \ + $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/CORBA_macros.h \ + $(TAO_ROOT)/tao/varbase.h \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/corbafwd.i \ + portableserver_export.h POA_Policies.h PortableServerC.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ + $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.i \ + $(TAO_ROOT)/tao/Exception.i \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/Sequence.h \ + $(TAO_ROOT)/tao/Managed_Types.h \ + $(TAO_ROOT)/tao/Managed_Types.i \ + $(TAO_ROOT)/tao/Sequence.i \ + $(TAO_ROOT)/tao/Sequence_T.h \ + $(TAO_ROOT)/tao/Sequence_T.i \ + $(TAO_ROOT)/tao/Sequence_T.cpp \ + $(TAO_ROOT)/tao/CDR.h \ + $(ACE_ROOT)/ace/CDR_Stream.h \ + $(ACE_ROOT)/ace/CDR_Stream.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/PolicyC.i \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/Any.h \ + $(TAO_ROOT)/tao/Any.i PortableServerC.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i + +.obj/ImplRepoC.o .obj/ImplRepoC.so .shobj/ImplRepoC.o .shobj/ImplRepoC.so: ImplRepoC.cpp ImplRepoC.h \ + $(ACE_ROOT)/ace/pre.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/post.h \ @@ -5514,22 +5683,53 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Sequence_T.i \ $(TAO_ROOT)/tao/Sequence_T.cpp \ portableserver_export.h ImplRepoC.i \ - PortableServer.h \ - portableserver_export.h \ - RTPortableServerC.h \ - PortableServerC.h \ - $(TAO_ROOT)/tao/CurrentC.h \ - $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/Pluggable.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ + $(TAO_ROOT)/tao/Pluggable.i \ + $(TAO_ROOT)/tao/MProfile.h \ + $(TAO_ROOT)/tao/Profile.h \ + $(TAO_ROOT)/tao/Tagged_Components.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.i \ + $(TAO_ROOT)/tao/Tagged_Components.i \ $(TAO_ROOT)/tao/PolicyC.h \ $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/CurrentC.i \ $(TAO_ROOT)/tao/PolicyC.i \ - PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/GIOP_Message_Version.h \ + $(TAO_ROOT)/tao/GIOP_Message_Version.inl \ + $(TAO_ROOT)/tao/Profile.i \ + $(TAO_ROOT)/tao/MProfile.i \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Services.h \ + $(TAO_ROOT)/tao/Services.i \ + $(TAO_ROOT)/tao/CORBA_String.h \ + $(TAO_ROOT)/tao/CORBA_String.inl \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Policy_Manager.i \ + $(TAO_ROOT)/tao/Resource_Factory.h \ + $(ACE_ROOT)/ace/Service_Object.h \ + $(ACE_ROOT)/ace/Shared_Object.h \ + $(ACE_ROOT)/ace/Shared_Object.i \ + $(ACE_ROOT)/ace/Service_Object.i \ + $(TAO_ROOT)/tao/Protocol_Factory.h \ + $(TAO_ROOT)/tao/params.h \ + $(ACE_ROOT)/ace/Unbounded_Queue.h \ + $(ACE_ROOT)/ace/Unbounded_Queue.inl \ + $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ + $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ $(TAO_ROOT)/tao/TAO_Singleton.h \ $(TAO_ROOT)/tao/TAO_Singleton.inl \ $(TAO_ROOT)/tao/TAO_Singleton.cpp \ @@ -5538,39 +5738,30 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Managed_Object.h \ $(ACE_ROOT)/ace/Managed_Object.i \ $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/Adapter.h \ + $(TAO_ROOT)/tao/Adapter.i \ + $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ + $(TAO_ROOT)/tao/PortableInterceptorC.h \ + $(TAO_ROOT)/tao/DynamicC.h \ + $(TAO_ROOT)/tao/DynamicC.i \ + $(TAO_ROOT)/tao/MessagingC.h \ + $(TAO_ROOT)/tao/ValueBase.h \ + $(TAO_ROOT)/tao/ValueBase.i \ + $(TAO_ROOT)/tao/ValueFactory.h \ + $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i \ - Servant_Base.h \ - $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ - Servant_Base.i \ - Collocated_Object.h \ - Collocated_Object.i \ - ThruPOA_Object_Proxy_Impl.h \ - Direct_Object_Proxy_Impl.h \ - ImplRepoS_T.h ImplRepoS_T.i ImplRepoS_T.cpp ImplRepoS.i \ - Object_Adapter.h \ - Key_Adapters.h \ - $(ACE_ROOT)/ace/Map.h \ - $(ACE_ROOT)/ace/Map_T.h \ - $(ACE_ROOT)/ace/Pair.h \ - $(ACE_ROOT)/ace/Pair_T.h \ - $(ACE_ROOT)/ace/Pair_T.i \ - $(ACE_ROOT)/ace/Pair_T.cpp \ + $(TAO_ROOT)/tao/PollableC.h \ + $(TAO_ROOT)/tao/PollableC.i \ + $(TAO_ROOT)/tao/MessagingC.i \ + $(TAO_ROOT)/tao/PortableInterceptorC.i \ $(ACE_ROOT)/ace/Map_Manager.h \ $(ACE_ROOT)/ace/Map_Manager.i \ $(ACE_ROOT)/ace/Map_Manager.cpp \ $(ACE_ROOT)/ace/Service_Config.h \ - $(ACE_ROOT)/ace/Service_Object.h \ - $(ACE_ROOT)/ace/Shared_Object.h \ - $(ACE_ROOT)/ace/Shared_Object.i \ - $(ACE_ROOT)/ace/Service_Object.i \ - $(ACE_ROOT)/ace/Unbounded_Queue.h \ - $(ACE_ROOT)/ace/Unbounded_Queue.inl \ - $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ $(ACE_ROOT)/ace/Service_Config.i \ $(ACE_ROOT)/ace/Reactor.h \ $(ACE_ROOT)/ace/Handle_Set.h \ @@ -5585,73 +5776,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Reactor.i \ $(ACE_ROOT)/ace/Reactor_Impl.h \ $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \ - $(ACE_ROOT)/ace/Hash_Map_Manager.h \ - $(ACE_ROOT)/ace/Functor.h \ - $(ACE_ROOT)/ace/Functor.i \ - $(ACE_ROOT)/ace/Functor_T.h \ - $(ACE_ROOT)/ace/Functor_T.i \ - $(ACE_ROOT)/ace/Functor_T.cpp \ - $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ - $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \ - $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \ - $(ACE_ROOT)/ace/Active_Map_Manager.h \ - $(ACE_ROOT)/ace/Active_Map_Manager.i \ - $(ACE_ROOT)/ace/Active_Map_Manager_T.h \ - $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ - $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ - $(ACE_ROOT)/ace/Map_T.i \ - $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i \ - poa_macros.h \ - Active_Object_Map.h \ - $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ - Active_Object_Map.i \ - $(TAO_ROOT)/tao/Adapter.h \ - $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ - $(TAO_ROOT)/tao/LocalObject.h \ - $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i \ - Operation_Table.h \ - $(TAO_ROOT)/tao/TAO_Server_Request.h \ - $(TAO_ROOT)/tao/Tagged_Profile.h \ - $(TAO_ROOT)/tao/GIOPC.h \ - $(TAO_ROOT)/tao/Object_KeyC.h \ - $(TAO_ROOT)/tao/Object_KeyC.i \ - $(TAO_ROOT)/tao/GIOPC.i \ - $(TAO_ROOT)/tao/Tagged_Profile.i \ - $(TAO_ROOT)/tao/OctetSeqC.h \ - $(TAO_ROOT)/tao/OctetSeqC.i \ - $(TAO_ROOT)/tao/TAO_Server_Request.i \ - $(TAO_ROOT)/tao/ORB_Core.h \ - $(TAO_ROOT)/tao/ORB.h \ - $(TAO_ROOT)/tao/Services.h \ - $(TAO_ROOT)/tao/Services.i \ - $(TAO_ROOT)/tao/CORBA_String.h \ - $(TAO_ROOT)/tao/CORBA_String.inl \ - $(TAO_ROOT)/tao/ORB.i \ - $(TAO_ROOT)/tao/Policy_Manager.h \ - $(TAO_ROOT)/tao/Policy_Manager.i \ - $(TAO_ROOT)/tao/Resource_Factory.h \ - $(TAO_ROOT)/tao/Pluggable.h \ - $(TAO_ROOT)/tao/Pluggable.i \ - $(TAO_ROOT)/tao/Protocol_Factory.h \ - $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/PolicyFactory_Registry.h \ - $(TAO_ROOT)/tao/PortableInterceptorC.h \ - $(TAO_ROOT)/tao/DynamicC.h \ - $(TAO_ROOT)/tao/DynamicC.i \ - $(TAO_ROOT)/tao/MessagingC.h \ - $(TAO_ROOT)/tao/ValueBase.h \ - $(TAO_ROOT)/tao/ValueBase.i \ - $(TAO_ROOT)/tao/ValueFactory.h \ - $(TAO_ROOT)/tao/ValueFactory.i \ - $(TAO_ROOT)/tao/PollableC.h \ - $(TAO_ROOT)/tao/PollableC.i \ - $(TAO_ROOT)/tao/MessagingC.i \ - $(TAO_ROOT)/tao/PortableInterceptorC.i \ $(TAO_ROOT)/tao/Parser_Registry.h \ $(TAO_ROOT)/tao/Parser_Registry.i \ $(TAO_ROOT)/tao/Service_Callbacks.h \ @@ -5664,11 +5788,18 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Array_Base.cpp \ $(TAO_ROOT)/tao/Cleanup_Func_Registry.inl \ $(TAO_ROOT)/tao/Object_Ref_Table.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ + $(ACE_ROOT)/ace/Functor.h \ + $(ACE_ROOT)/ace/Functor.i \ + $(ACE_ROOT)/ace/Functor_T.h \ + $(ACE_ROOT)/ace/Functor_T.i \ + $(ACE_ROOT)/ace/Functor_T.cpp \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Containers.h \ $(ACE_ROOT)/ace/Containers.i \ @@ -5680,36 +5811,37 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Singleton.cpp \ $(ACE_ROOT)/ace/Thread_Manager.i \ $(TAO_ROOT)/tao/ORB_Core.i \ - $(TAO_ROOT)/tao/Stub.h \ - $(TAO_ROOT)/tao/MProfile.h \ - $(TAO_ROOT)/tao/Profile.h \ - $(TAO_ROOT)/tao/Tagged_Components.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.i \ - $(TAO_ROOT)/tao/Tagged_Components.i \ - $(TAO_ROOT)/tao/GIOP_Message_Version.h \ - $(TAO_ROOT)/tao/GIOP_Message_Version.inl \ - $(TAO_ROOT)/tao/Profile.i \ - $(TAO_ROOT)/tao/MProfile.i \ $(TAO_ROOT)/tao/Stub.i \ - $(TAO_ROOT)/tao/IFR_Client_Adapter.h \ + $(TAO_ROOT)/tao/Invocation.h \ + $(TAO_ROOT)/tao/Synch_Reply_Dispatcher.h \ + $(TAO_ROOT)/tao/Reply_Dispatcher.h \ + $(TAO_ROOT)/tao/Reply_Dispatcher.i \ + $(TAO_ROOT)/tao/TAOC.h \ + $(TAO_ROOT)/tao/TAOC.i \ + $(TAO_ROOT)/tao/operation_details.h \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ + $(TAO_ROOT)/tao/target_specification.h \ + $(TAO_ROOT)/tao/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/target_specification.i \ + $(TAO_ROOT)/tao/operation_details.i \ + $(TAO_ROOT)/tao/Invocation_Endpoint_Selectors.h \ + $(TAO_ROOT)/tao/Invocation_Endpoint_Selectors.i \ + $(TAO_ROOT)/tao/Invocation.i \ $(TAO_ROOT)/tao/PortableInterceptor.h \ $(TAO_ROOT)/tao/RequestInfo_Util.h \ - ServerRequestInfo.h \ + $(TAO_ROOT)/tao/ClientRequestInfo.h \ $(TAO_ROOT)/tao/StringSeqC.h \ $(TAO_ROOT)/tao/StringSeqC.i \ - ServerRequestInfo.inl \ - ServerInterceptorAdapter.h \ - ServerInterceptorAdapter.inl \ - $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(ACE_ROOT)/ace/Dynamic_Service_Base.h \ - $(ACE_ROOT)/ace/Dynamic_Service.i \ - $(ACE_ROOT)/ace/Dynamic_Service.cpp + $(TAO_ROOT)/tao/ClientRequestInfo.inl \ + $(TAO_ROOT)/tao/ClientInterceptorAdapter.h \ + $(TAO_ROOT)/tao/ClientInterceptorAdapter.inl -.obj/MessagingS.o .obj/MessagingS.so .shobj/MessagingS.o .shobj/MessagingS.so: MessagingS.cpp \ - $(TAO_ROOT)/tao/orbconf.h \ - $(ACE_ROOT)/ace/pre.h \ - $(ACE_ROOT)/ace/OS.h \ +.obj/ImplRepoS.o .obj/ImplRepoS.so .shobj/ImplRepoS.o .shobj/ImplRepoS.so: ImplRepoS.cpp ImplRepoS.h \ + $(ACE_ROOT)/ace/pre.h ImplRepoC.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ @@ -5718,6 +5850,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/OS_Errno.h \ $(ACE_ROOT)/ace/OS_Export.h \ $(ACE_ROOT)/ace/OS_Errno.inl \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/OS_Dirent.h \ $(ACE_ROOT)/ace/OS_Dirent.inl \ $(ACE_ROOT)/ace/OS_String.h \ @@ -5728,16 +5865,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/OS_TLI.inl \ $(ACE_ROOT)/ace/Min_Max.h \ $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/OS.i MessagingS.h \ - $(TAO_ROOT)/tao/TimeBaseS.h \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/corbafwd.h \ - $(ACE_ROOT)/ace/CDR_Base.h \ - $(ACE_ROOT)/ace/Message_Block.h \ - $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/OS.i \ $(ACE_ROOT)/ace/Flag_Manip.h \ $(ACE_ROOT)/ace/Flag_Manip.i \ $(ACE_ROOT)/ace/Handle_Ops.h \ @@ -5801,6 +5930,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Message_Block_T.cpp \ $(ACE_ROOT)/ace/CDR_Base.inl \ $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ $(ACE_ROOT)/ace/CORBA_macros.h \ $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ @@ -5823,55 +5953,24 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.i \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/TimeBaseS_T.h \ - $(TAO_ROOT)/tao/TimeBaseS_T.i \ - $(TAO_ROOT)/tao/TimeBaseS_T.cpp \ - $(TAO_ROOT)/tao/TimeBaseS.i \ - $(TAO_ROOT)/tao/MessagingC.h \ - $(TAO_ROOT)/tao/ValueBase.h \ - $(TAO_ROOT)/tao/ValueBase.i \ - $(TAO_ROOT)/tao/ValueFactory.h \ - $(TAO_ROOT)/tao/ValueFactory.i \ $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/Sequence.h \ $(TAO_ROOT)/tao/Managed_Types.h \ $(TAO_ROOT)/tao/Managed_Types.i \ + $(TAO_ROOT)/tao/Sequence.h \ $(TAO_ROOT)/tao/Sequence.i \ $(TAO_ROOT)/tao/Sequence_T.h \ $(TAO_ROOT)/tao/Sequence_T.i \ $(TAO_ROOT)/tao/Sequence_T.cpp \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/PolicyC.h \ - $(TAO_ROOT)/tao/Encodable.h \ - $(TAO_ROOT)/tao/CurrentC.h \ - $(TAO_ROOT)/tao/CurrentC.i \ - $(TAO_ROOT)/tao/PolicyC.i \ - $(TAO_ROOT)/tao/PollableC.h \ - $(TAO_ROOT)/tao/PollableC.i \ - $(TAO_ROOT)/tao/MessagingC.i \ + portableserver_export.h ImplRepoC.i \ PortableServer.h \ portableserver_export.h \ - RTPortableServerC.h \ PortableServerC.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/PolicyC.i \ PortableServerC.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i \ Servant_Base.h \ $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ Servant_Base.i \ @@ -5879,7 +5978,7 @@ CPPFLAGS += -I$(TAO_ROOT) Collocated_Object.i \ ThruPOA_Object_Proxy_Impl.h \ Direct_Object_Proxy_Impl.h \ - MessagingS_T.h MessagingS_T.i MessagingS_T.cpp MessagingS.i \ + ImplRepoS_T.h ImplRepoS_T.i ImplRepoS_T.cpp ImplRepoS.i \ Object_Adapter.h \ Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ @@ -5936,14 +6035,32 @@ CPPFLAGS += -I$(TAO_ROOT) Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ + Default_Policy_Validator.h \ + Policy_Validator.h \ + POA_Policy_Set.h \ + POA_Policies.h \ + POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i \ Object_Adapter.i \ Operation_Table.h \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(ACE_ROOT)/ace/Object_Manager.h \ + $(ACE_ROOT)/ace/Object_Manager.i \ + $(ACE_ROOT)/ace/Managed_Object.h \ + $(ACE_ROOT)/ace/Managed_Object.i \ + $(ACE_ROOT)/ace/Managed_Object.cpp \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.h \ $(TAO_ROOT)/tao/Tagged_Profile.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ $(TAO_ROOT)/tao/GIOPC.h \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ @@ -5951,6 +6068,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Tagged_Profile.i \ $(TAO_ROOT)/tao/OctetSeqC.h \ $(TAO_ROOT)/tao/OctetSeqC.i \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/TAO_Server_Request.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/ORB.h \ @@ -5960,6 +6079,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ @@ -5971,6 +6091,19 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ $(TAO_ROOT)/tao/DynamicC.i \ + $(TAO_ROOT)/tao/MessagingC.h \ + $(TAO_ROOT)/tao/ValueBase.h \ + $(TAO_ROOT)/tao/ValueBase.i \ + $(TAO_ROOT)/tao/ValueFactory.h \ + $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ + $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ + $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ + $(TAO_ROOT)/tao/TimeBaseC.i \ + $(TAO_ROOT)/tao/PollableC.h \ + $(TAO_ROOT)/tao/PollableC.i \ + $(TAO_ROOT)/tao/MessagingC.i \ $(TAO_ROOT)/tao/PortableInterceptorC.i \ $(TAO_ROOT)/tao/Parser_Registry.h \ $(TAO_ROOT)/tao/Parser_Registry.i \ @@ -5986,8 +6119,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ $(ACE_ROOT)/ace/Containers.h \ @@ -6026,9 +6157,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Dynamic_Service.i \ $(ACE_ROOT)/ace/Dynamic_Service.cpp -.obj/RT_Acceptor_Filters.o .obj/RT_Acceptor_Filters.so .shobj/RT_Acceptor_Filters.o .shobj/RT_Acceptor_Filters.so: RT_Acceptor_Filters.cpp RT_Acceptor_Filters.h \ - $(ACE_ROOT)/ace/pre.h \ +.obj/MessagingS.o .obj/MessagingS.so .shobj/MessagingS.o .shobj/MessagingS.so: MessagingS.cpp \ $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/pre.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/post.h \ $(ACE_ROOT)/ace/ACE_export.h \ @@ -6051,9 +6182,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/OS.i \ - portableserver_export.h \ - $(TAO_ROOT)/tao/Acceptor_Filter.h \ + $(ACE_ROOT)/ace/OS.i MessagingS.h \ + $(TAO_ROOT)/tao/TimeBaseS.h \ + $(TAO_ROOT)/tao/TimeBaseC.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -6125,14 +6256,11 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/varbase.h \ $(TAO_ROOT)/tao/TAO_Export.h \ $(TAO_ROOT)/tao/corbafwd.i \ - $(TAO_ROOT)/tao/Acceptor_Filter.i \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/CDR.h \ $(ACE_ROOT)/ace/CDR_Stream.h \ $(ACE_ROOT)/ace/CDR_Stream.i \ $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/Environment.h \ $(TAO_ROOT)/tao/Environment.i \ $(TAO_ROOT)/tao/Object.h \ @@ -6146,21 +6274,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/Typecode.i \ $(TAO_ROOT)/tao/Any.i \ - $(TAO_ROOT)/tao/Sequence.h \ - $(TAO_ROOT)/tao/Managed_Types.h \ - $(TAO_ROOT)/tao/Managed_Types.i \ - $(TAO_ROOT)/tao/Sequence.i \ - $(TAO_ROOT)/tao/Sequence_T.h \ - $(TAO_ROOT)/tao/Sequence_T.i \ - $(TAO_ROOT)/tao/Sequence_T.cpp \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/PolicyC.h \ - $(TAO_ROOT)/tao/Encodable.h \ - $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/CurrentC.h \ - $(TAO_ROOT)/tao/CurrentC.i \ - $(TAO_ROOT)/tao/PolicyC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ $(TAO_ROOT)/tao/TAO_Singleton.h \ @@ -6175,136 +6288,17 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RT_Acceptor_Filters.i \ - $(TAO_ROOT)/tao/Pluggable.h \ - $(TAO_ROOT)/tao/Pluggable.i \ - $(TAO_ROOT)/tao/MProfile.h \ - $(TAO_ROOT)/tao/Profile.h \ - $(TAO_ROOT)/tao/Tagged_Components.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.h \ - $(TAO_ROOT)/tao/CONV_FRAMEC.i \ - $(TAO_ROOT)/tao/Tagged_Components.i \ - $(TAO_ROOT)/tao/GIOP_Message_Version.h \ - $(TAO_ROOT)/tao/GIOP_Message_Version.inl \ - $(TAO_ROOT)/tao/Profile.i \ - $(TAO_ROOT)/tao/MProfile.i - -.obj/RT_Servant_Dispatcher.o .obj/RT_Servant_Dispatcher.so .shobj/RT_Servant_Dispatcher.o .shobj/RT_Servant_Dispatcher.so: RT_Servant_Dispatcher.cpp \ - RT_Servant_Dispatcher.h \ - $(ACE_ROOT)/ace/pre.h \ - portableserver_export.h \ - $(ACE_ROOT)/ace/post.h \ - $(ACE_ROOT)/ace/ACE_export.h \ - $(ACE_ROOT)/ace/svc_export.h \ - $(ACE_ROOT)/ace/ace_wchar.h \ - $(ACE_ROOT)/ace/ace_wchar.inl \ - $(ACE_ROOT)/ace/OS_Errno.h \ - $(ACE_ROOT)/ace/OS_Export.h \ - $(ACE_ROOT)/ace/OS_Errno.inl \ - Servant_Dispatcher.h Object_Adapter.h Key_Adapters.h \ - PortableServerC.h \ - $(TAO_ROOT)/tao/corbafwd.h \ - $(ACE_ROOT)/ace/CDR_Base.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/Message_Block.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/OS_Dirent.h \ - $(ACE_ROOT)/ace/OS_Dirent.inl \ - $(ACE_ROOT)/ace/OS_String.h \ - $(ACE_ROOT)/ace/OS_String.inl \ - $(ACE_ROOT)/ace/OS_Memory.h \ - $(ACE_ROOT)/ace/OS_Memory.inl \ - $(ACE_ROOT)/ace/OS_TLI.h \ - $(ACE_ROOT)/ace/OS_TLI.inl \ - $(ACE_ROOT)/ace/Min_Max.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Flag_Manip.h \ - $(ACE_ROOT)/ace/Flag_Manip.i \ - $(ACE_ROOT)/ace/Handle_Ops.h \ - $(ACE_ROOT)/ace/Handle_Ops.i \ - $(ACE_ROOT)/ace/Lib_Find.h \ - $(ACE_ROOT)/ace/Lib_Find.i \ - $(ACE_ROOT)/ace/Init_ACE.h \ - $(ACE_ROOT)/ace/Init_ACE.i \ - $(ACE_ROOT)/ace/Sock_Connect.h \ - $(ACE_ROOT)/ace/Sock_Connect.i \ - $(ACE_ROOT)/ace/ACE.i \ - $(ACE_ROOT)/ace/Malloc.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.h \ - $(ACE_ROOT)/ace/OS_Log_Msg_Attributes.inl \ - $(ACE_ROOT)/ace/Malloc.i \ - $(ACE_ROOT)/ace/Malloc_T.h \ - $(ACE_ROOT)/ace/Synch.h \ - $(ACE_ROOT)/ace/Synch.i \ - $(ACE_ROOT)/ace/Synch_T.h \ - $(ACE_ROOT)/ace/Synch_T.i \ - $(ACE_ROOT)/ace/Thread.h \ - $(ACE_ROOT)/ace/Thread_Adapter.h \ - $(ACE_ROOT)/ace/Base_Thread_Adapter.h \ - $(ACE_ROOT)/ace/Base_Thread_Adapter.inl \ - $(ACE_ROOT)/ace/Thread_Adapter.inl \ - $(ACE_ROOT)/ace/Thread.i \ - $(ACE_ROOT)/ace/Atomic_Op.i \ - $(ACE_ROOT)/ace/Synch_T.cpp \ - $(ACE_ROOT)/ace/Malloc_Allocator.h \ - $(ACE_ROOT)/ace/Malloc_Base.h \ - $(ACE_ROOT)/ace/Malloc_Allocator.i \ - $(ACE_ROOT)/ace/Free_List.h \ - $(ACE_ROOT)/ace/Free_List.i \ - $(ACE_ROOT)/ace/Free_List.cpp \ - $(ACE_ROOT)/ace/Malloc_T.i \ - $(ACE_ROOT)/ace/Malloc_T.cpp \ - $(ACE_ROOT)/ace/Memory_Pool.h \ - $(ACE_ROOT)/ace/Event_Handler.h \ - $(ACE_ROOT)/ace/Event_Handler.i \ - $(ACE_ROOT)/ace/Signal.h \ - $(ACE_ROOT)/ace/Signal.i \ - $(ACE_ROOT)/ace/Mem_Map.h \ - $(ACE_ROOT)/ace/Mem_Map.i \ - $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \ - $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \ - $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \ - $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \ - $(ACE_ROOT)/ace/Unbounded_Set.h \ - $(ACE_ROOT)/ace/Node.h \ - $(ACE_ROOT)/ace/Node.cpp \ - $(ACE_ROOT)/ace/Unbounded_Set.inl \ - $(ACE_ROOT)/ace/Unbounded_Set.cpp \ - $(ACE_ROOT)/ace/Memory_Pool.i \ - $(ACE_ROOT)/ace/Message_Block.i \ - $(ACE_ROOT)/ace/Message_Block_T.h \ - $(ACE_ROOT)/ace/Message_Block_T.i \ - $(ACE_ROOT)/ace/Message_Block_T.cpp \ - $(ACE_ROOT)/ace/CDR_Base.inl \ - $(TAO_ROOT)/tao/try_macros.h \ - $(TAO_ROOT)/tao/orbconf.h \ - $(ACE_ROOT)/ace/CORBA_macros.h \ - $(TAO_ROOT)/tao/varbase.h \ - $(TAO_ROOT)/tao/TAO_Export.h \ - $(TAO_ROOT)/tao/corbafwd.i \ - $(TAO_ROOT)/tao/CurrentC.h \ - $(TAO_ROOT)/tao/Object.h \ - $(TAO_ROOT)/tao/Object_Proxy_Broker.h \ - $(TAO_ROOT)/tao/Object_Proxy_Impl.h \ - $(TAO_ROOT)/tao/Object.i \ - $(TAO_ROOT)/tao/CurrentC.i \ - $(TAO_ROOT)/tao/PolicyC.h \ - $(TAO_ROOT)/tao/Encodable.h \ - $(TAO_ROOT)/tao/Exception.h \ - $(ACE_ROOT)/ace/SString.h \ - $(ACE_ROOT)/ace/SString.i \ - $(TAO_ROOT)/tao/Exception.i \ - $(TAO_ROOT)/tao/Environment.h \ - $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/TimeBaseS_T.h \ + $(TAO_ROOT)/tao/TimeBaseS_T.i \ + $(TAO_ROOT)/tao/TimeBaseS_T.cpp \ + $(TAO_ROOT)/tao/TimeBaseS.i \ + $(TAO_ROOT)/tao/MessagingC.h \ + $(TAO_ROOT)/tao/ValueBase.h \ + $(TAO_ROOT)/tao/ValueBase.i \ + $(TAO_ROOT)/tao/ValueFactory.h \ + $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/IOPC.h \ $(TAO_ROOT)/tao/Sequence.h \ $(TAO_ROOT)/tao/Managed_Types.h \ $(TAO_ROOT)/tao/Managed_Types.i \ @@ -6312,17 +6306,29 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Sequence_T.h \ $(TAO_ROOT)/tao/Sequence_T.i \ $(TAO_ROOT)/tao/Sequence_T.cpp \ - $(TAO_ROOT)/tao/CDR.h \ - $(ACE_ROOT)/ace/CDR_Stream.h \ - $(ACE_ROOT)/ace/CDR_Stream.i \ - $(TAO_ROOT)/tao/CDR.i \ - $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/IOPC.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/CurrentC.i \ $(TAO_ROOT)/tao/PolicyC.i \ - $(TAO_ROOT)/tao/Typecode.h \ - $(TAO_ROOT)/tao/Typecode.i \ - $(TAO_ROOT)/tao/Any.h \ - $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/PollableC.h \ + $(TAO_ROOT)/tao/PollableC.i \ + $(TAO_ROOT)/tao/MessagingC.i \ + PortableServer.h \ + portableserver_export.h \ + PortableServerC.h \ PortableServerC.i \ + Servant_Base.h \ + $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ + Servant_Base.i \ + Collocated_Object.h \ + Collocated_Object.i \ + ThruPOA_Object_Proxy_Impl.h \ + Direct_Object_Proxy_Impl.h \ + MessagingS_T.h MessagingS_T.i MessagingS_T.cpp MessagingS.i \ + Object_Adapter.h \ + Key_Adapters.h \ $(ACE_ROOT)/ace/Map.h \ $(ACE_ROOT)/ace/Map_T.h \ $(ACE_ROOT)/ace/Pair.h \ @@ -6370,50 +6376,37 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ $(ACE_ROOT)/ace/Map_T.i \ $(ACE_ROOT)/ace/Map_T.cpp \ - Key_Adapters.i poa_macros.h RTPortableServerC.h \ - $(TAO_ROOT)/tao/RTCORBAC.h \ - $(TAO_ROOT)/tao/IOPC.h \ - $(TAO_ROOT)/tao/IOPC.i \ - $(TAO_ROOT)/tao/TimeBaseC.h \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.h \ - $(TAO_ROOT)/tao/SmartProxies/smartproxies_export.h \ - $(TAO_ROOT)/tao/TAO_Singleton.h \ - $(TAO_ROOT)/tao/TAO_Singleton.inl \ - $(TAO_ROOT)/tao/TAO_Singleton.cpp \ - $(ACE_ROOT)/ace/Object_Manager.h \ - $(ACE_ROOT)/ace/Object_Manager.i \ - $(ACE_ROOT)/ace/Managed_Object.h \ - $(ACE_ROOT)/ace/Managed_Object.i \ - $(ACE_ROOT)/ace/Managed_Object.cpp \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ - $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ - $(TAO_ROOT)/tao/SmartProxies/Smart_Proxies.inl \ - $(TAO_ROOT)/tao/TimeBaseC.i \ - $(TAO_ROOT)/tao/RTCORBAC.i \ - RTPortableServerC.i Servant_Base.h \ - $(TAO_ROOT)/tao/Abstract_Servant_Base.h \ - Servant_Base.i Active_Object_Map.h \ + Key_Adapters.i \ + poa_macros.h \ + Active_Object_Map.h \ $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ Active_Object_Map.i \ $(TAO_ROOT)/tao/Adapter.h \ $(TAO_ROOT)/tao/Adapter.i \ - $(TAO_ROOT)/tao/Service_Context.h \ - $(TAO_ROOT)/tao/Service_Context.inl \ $(TAO_ROOT)/tao/LocalObject.h \ $(TAO_ROOT)/tao/LocalObject.i \ - Object_Adapter.i POA.h POAManager.h POAManager.i \ + Default_Policy_Validator.h \ + Policy_Validator.h \ + POA_Policy_Set.h \ + POA_Policies.h \ + POA_Policies.i \ + $(TAO_ROOT)/tao/Policy_Set.h \ + $(TAO_ROOT)/tao/Policy_Set.i \ + POA_Policy_Set.i \ + Object_Adapter.i \ + Operation_Table.h \ + $(TAO_ROOT)/tao/TAO_Server_Request.h \ + $(TAO_ROOT)/tao/Tagged_Profile.h \ + $(TAO_ROOT)/tao/GIOPC.h \ $(TAO_ROOT)/tao/Object_KeyC.h \ $(TAO_ROOT)/tao/Object_KeyC.i \ - $(ACE_ROOT)/ace/Containers.h \ - $(ACE_ROOT)/ace/Containers.i \ - $(ACE_ROOT)/ace/Containers_T.h \ - $(ACE_ROOT)/ace/Array_Base.h \ - $(ACE_ROOT)/ace/Array_Base.inl \ - $(ACE_ROOT)/ace/Array_Base.cpp \ - $(ACE_ROOT)/ace/Containers_T.i \ - $(ACE_ROOT)/ace/Containers_T.cpp \ + $(TAO_ROOT)/tao/GIOPC.i \ + $(TAO_ROOT)/tao/Tagged_Profile.i \ $(TAO_ROOT)/tao/OctetSeqC.h \ - $(TAO_ROOT)/tao/OctetSeqC.i POA.i \ + $(TAO_ROOT)/tao/OctetSeqC.i \ + $(TAO_ROOT)/tao/Service_Context.h \ + $(TAO_ROOT)/tao/Service_Context.inl \ + $(TAO_ROOT)/tao/TAO_Server_Request.i \ $(TAO_ROOT)/tao/ORB_Core.h \ $(TAO_ROOT)/tao/ORB.h \ $(TAO_ROOT)/tao/Services.h \ @@ -6422,6 +6415,7 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/CORBA_String.inl \ $(TAO_ROOT)/tao/ORB.i \ $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Policy_Manager.i \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(TAO_ROOT)/tao/Pluggable.h \ @@ -6433,14 +6427,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/PortableInterceptorC.h \ $(TAO_ROOT)/tao/DynamicC.h \ $(TAO_ROOT)/tao/DynamicC.i \ - $(TAO_ROOT)/tao/MessagingC.h \ - $(TAO_ROOT)/tao/ValueBase.h \ - $(TAO_ROOT)/tao/ValueBase.i \ - $(TAO_ROOT)/tao/ValueFactory.h \ - $(TAO_ROOT)/tao/ValueFactory.i \ - $(TAO_ROOT)/tao/PollableC.h \ - $(TAO_ROOT)/tao/PollableC.i \ - $(TAO_ROOT)/tao/MessagingC.i \ $(TAO_ROOT)/tao/PortableInterceptorC.i \ $(TAO_ROOT)/tao/Parser_Registry.h \ $(TAO_ROOT)/tao/Parser_Registry.i \ @@ -6449,25 +6435,49 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ $(TAO_ROOT)/tao/Cleanup_Func_Registry.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ $(TAO_ROOT)/tao/Cleanup_Func_Registry.inl \ $(TAO_ROOT)/tao/Object_Ref_Table.h \ $(TAO_ROOT)/tao/Interceptor_List.h \ $(TAO_ROOT)/tao/Interceptor_List.inl \ - $(TAO_ROOT)/tao/RT_Policy_i.h \ - $(TAO_ROOT)/tao/RT_Policy_i.i \ $(TAO_ROOT)/tao/Protocols_Hooks.h \ $(ACE_ROOT)/ace/Thread_Manager.h \ + $(ACE_ROOT)/ace/Containers.h \ + $(ACE_ROOT)/ace/Containers.i \ + $(ACE_ROOT)/ace/Containers_T.h \ + $(ACE_ROOT)/ace/Containers_T.i \ + $(ACE_ROOT)/ace/Containers_T.cpp \ $(ACE_ROOT)/ace/Singleton.h \ $(ACE_ROOT)/ace/Singleton.i \ $(ACE_ROOT)/ace/Singleton.cpp \ $(ACE_ROOT)/ace/Thread_Manager.i \ $(TAO_ROOT)/tao/ORB_Core.i \ - $(TAO_ROOT)/tao/TAO_Server_Request.h \ - $(TAO_ROOT)/tao/Tagged_Profile.h \ - $(TAO_ROOT)/tao/GIOPC.h \ - $(TAO_ROOT)/tao/GIOPC.i \ - $(TAO_ROOT)/tao/Tagged_Profile.i \ - $(TAO_ROOT)/tao/TAO_Server_Request.i \ - $(TAO_ROOT)/tao/debug.h + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/MProfile.h \ + $(TAO_ROOT)/tao/Profile.h \ + $(TAO_ROOT)/tao/Tagged_Components.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.i \ + $(TAO_ROOT)/tao/Tagged_Components.i \ + $(TAO_ROOT)/tao/GIOP_Message_Version.h \ + $(TAO_ROOT)/tao/GIOP_Message_Version.inl \ + $(TAO_ROOT)/tao/Profile.i \ + $(TAO_ROOT)/tao/MProfile.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/IFR_Client_Adapter.h \ + $(TAO_ROOT)/tao/PortableInterceptor.h \ + $(TAO_ROOT)/tao/RequestInfo_Util.h \ + ServerRequestInfo.h \ + $(TAO_ROOT)/tao/StringSeqC.h \ + $(TAO_ROOT)/tao/StringSeqC.i \ + ServerRequestInfo.inl \ + ServerInterceptorAdapter.h \ + ServerInterceptorAdapter.inl \ + $(ACE_ROOT)/ace/Dynamic_Service.h \ + $(ACE_ROOT)/ace/Dynamic_Service_Base.h \ + $(ACE_ROOT)/ace/Dynamic_Service.i \ + $(ACE_ROOT)/ace/Dynamic_Service.cpp # IF YOU PUT ANYTHING HERE IT WILL GO AWAY diff --git a/TAO/tao/PortableServer/Object_Adapter.cpp b/TAO/tao/PortableServer/Object_Adapter.cpp index c73983e4944..4265e7064c9 100644 --- a/TAO/tao/PortableServer/Object_Adapter.cpp +++ b/TAO/tao/PortableServer/Object_Adapter.cpp @@ -5,6 +5,7 @@ #include "POA.h" #include "Strategized_Object_Proxy_Broker.h" #include "ServerRequestInfo.h" +#include "Default_Servant_Dispatcher.h" #include "ServerInterceptorAdapter.h" // -- ACE Include -- @@ -19,12 +20,7 @@ #include "tao/MProfile.h" #include "tao/debug.h" #include "tao/PortableInterceptor.h" - -#if TAO_HAS_RT_CORBA == 1 -#include "RT_Servant_Dispatcher.h" -#else -#include "Default_Servant_Dispatcher.h" -#endif /* TAO_HAS_RT_CORBA == 1 */ +#include "tao/POA_Extension_Initializer.h" #if !defined (__ACE_INLINE__) # include "Object_Adapter.i" @@ -126,7 +122,8 @@ TAO_Object_Adapter::TAO_Object_Adapter (const TAO_Server_Strategy_Factory::Activ non_servant_upcall_condition_ (thread_lock_), non_servant_upcall_in_progress_ (0), non_servant_upcall_thread_ (ACE_OS::NULL_thread), - root_ (0) + root_ (0), + default_poa_policies_ () { TAO_Object_Adapter::set_transient_poa_name_size (creation_parameters); @@ -204,18 +201,52 @@ TAO_Object_Adapter::TAO_Object_Adapter (const TAO_Server_Strategy_Factory::Activ new_persistent_poa_name_map.release (); this->transient_poa_map_ = new_transient_poa_map.release (); +} - // @@ RT_CORBA_SUBSETTING - // Initialize the servant dispatcher depending on the TAO_HAS_RT_CORBA - // compile flags. This will (of course) change as soon as the RT_CORBA - // code gets moved into a separate library. -#if (TAO_HAS_RT_CORBA == 1) - ACE_NEW (this->servant_dispatcher_, - TAO_RT_Servant_Dispatcher); -#else - ACE_NEW (this->servant_dispatcher_, - TAO_Default_Servant_Dispatcher); -#endif /* TAO_HAS_RT_CORBA == 1 */ +void +TAO_Object_Adapter::init_default_policies (TAO_POA_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV) +{ + // Initialize the default policies. + + // Thread policy. + TAO_Thread_Policy thread_policy (PortableServer::ORB_CTRL_MODEL); + policies.merge_policy (&thread_policy, ACE_TRY_ENV); + ACE_CHECK; + + // Lifespan policy. + TAO_Lifespan_Policy lifespan_policy (PortableServer::TRANSIENT); + policies.merge_policy (&lifespan_policy, ACE_TRY_ENV); + ACE_CHECK; + + // ID uniqueness policy. + TAO_Id_Uniqueness_Policy id_uniqueness_policy (PortableServer::UNIQUE_ID); + policies.merge_policy (&id_uniqueness_policy, ACE_TRY_ENV); + ACE_CHECK; + + // ID assignment policy. + TAO_Id_Assignment_Policy id_assignment_policy (PortableServer::SYSTEM_ID); + policies.merge_policy (&id_assignment_policy, ACE_TRY_ENV); + ACE_CHECK; + +#if (TAO_HAS_MINIMUM_POA == 0) + // Implicit activation policy. + TAO_Implicit_Activation_Policy implicit_activation_policy + (PortableServer::NO_IMPLICIT_ACTIVATION); + policies.merge_policy (&implicit_activation_policy, ACE_TRY_ENV); + ACE_CHECK; + + // Servant retention policy. + TAO_Servant_Retention_Policy servant_retention_policy (PortableServer::RETAIN); + policies.merge_policy (&servant_retention_policy, ACE_TRY_ENV); + ACE_CHECK; + + // Request processing policy. + TAO_Request_Processing_Policy request_processing_policy + (PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY); + policies.merge_policy (&request_processing_policy, ACE_TRY_ENV); + ACE_CHECK; +#endif /* TAO_HAS_MINIMUM_POA == 0 */ } TAO_Object_Adapter::~TAO_Object_Adapter (void) @@ -513,6 +544,28 @@ TAO_Object_Adapter::find_servant_i (const TAO_ObjectKey &key, void TAO_Object_Adapter::open (CORBA::Environment &ACE_TRY_ENV) { + // Add in the default POA policies to the default list. + this->init_default_policies (this->default_poa_policies (), + ACE_TRY_ENV); + ACE_CHECK; + + // Call the POA Extension initializers so that they can register their hooks. + TAO_POA_Extension_Initializer *extensions = + this->orb_core_.poa_extension_initializer (); + if (extensions != 0) + { + extensions->register_hooks (*this, ACE_TRY_ENV); + ACE_CHECK; + } + + // If a POA extension hasn't changed the servant dispatcher, initialize the + // default one. + if (this->servant_dispatcher_ == 0) + { + ACE_NEW (this->servant_dispatcher_, + TAO_Default_Servant_Dispatcher); + } + TAO_POA_Manager *poa_manager; ACE_NEW_THROW_EX (poa_manager, TAO_POA_Manager (*this), @@ -522,9 +575,7 @@ TAO_Object_Adapter::open (CORBA::Environment &ACE_TRY_ENV) PortableServer::POAManager_var safe_poa_manager = poa_manager; #if 0 - TAO_POA_Policies root_poa_policies (this->orb_core_, - ACE_TRY_ENV); - ACE_CHECK; + TAO_POA_Policy_Set root_poa_policies (this->default_poa_policies ()); if (policies == 0) { @@ -535,26 +586,30 @@ TAO_Object_Adapter::open (CORBA::Environment &ACE_TRY_ENV) policies = &root_poa_policies; } #else - TAO_POA_Policies policies (this->orb_core_, - ACE_TRY_ENV); - ACE_CHECK; - - policies.implicit_activation (PortableServer::IMPLICIT_ACTIVATION); + TAO_POA_Policy_Set policies (this->default_poa_policies ()); + + // Specify the implicit activation policy since it should + // be different from the default. Note that merge_policy + // takes a const reference and makes its own copy of the + // policy. (Otherwise, we'd have to allocate the policy + // on the heap.) + TAO_Implicit_Activation_Policy implicit_activation_policy ( + PortableServer::IMPLICIT_ACTIVATION); + policies.merge_policy (&implicit_activation_policy, + ACE_TRY_ENV); #endif /* 0 */ // Construct a new POA TAO_POA::String root_poa_name (TAO_DEFAULT_ROOTPOA_NAME); - ACE_NEW_THROW_EX (this->root_, - TAO_POA (root_poa_name, - *poa_manager, - policies, - 0, - this->lock (), - this->thread_lock (), - this->orb_core_, - this, - ACE_TRY_ENV), - CORBA::NO_MEMORY ()); + this->root_ = this->servant_dispatcher_->create_POA (root_poa_name, + *poa_manager, + policies, + 0, + this->lock (), + this->thread_lock (), + this->orb_core_, + this, + ACE_TRY_ENV); ACE_CHECK; // The Object_Adapter will keep a reference to the Root POA so that @@ -568,6 +623,7 @@ TAO_Object_Adapter::open (CORBA::Environment &ACE_TRY_ENV) (void) safe_poa_manager._retn (); } + void TAO_Object_Adapter::close (int wait_for_completion, CORBA::Environment &ACE_TRY_ENV) @@ -753,7 +809,7 @@ TAO_Object_Adapter::create_collocated_object (TAO_Stub *stub, // -Ossama stub->servant_orb (this->orb_core_.orb ()); - CORBA_Object_ptr x; + CORBA::Object_ptr x; ACE_NEW_RETURN (x, CORBA::Object (stub, 1, @@ -1329,7 +1385,7 @@ TAO_Object_Adapter::Servant_Upcall::single_threaded_poa_setup (CORBA::Environmen // lock. Otherwise, the thread that wants to release this lock will // not be able to do so since it can't acquire the object adapterx // lock. - if (this->poa_->policies ().thread () == PortableServer::SINGLE_THREAD_MODEL) + if (this->poa_->thread_policy () == PortableServer::SINGLE_THREAD_MODEL) { int result = this->poa_->single_threaded_lock ().acquire (); @@ -1347,7 +1403,7 @@ TAO_Object_Adapter::Servant_Upcall::single_threaded_poa_cleanup (void) { #if (TAO_HAS_MINIMUM_POA == 0) // Since the servant lock was acquired, we must release it. - if (this->poa_->policies ().thread () == PortableServer::SINGLE_THREAD_MODEL) + if (this->poa_->thread_policy () == PortableServer::SINGLE_THREAD_MODEL) this->poa_->single_threaded_lock ().release (); #endif /* TAO_HAS_MINIMUM_POA == 0 */ } @@ -1431,6 +1487,15 @@ TAO_Object_Adapter::Servant_Upcall::poa_cleanup (void) } } +void +TAO_Object_Adapter::servant_dispatcher (TAO_Servant_Dispatcher *dispatcher) +{ + if (this->servant_dispatcher_) + delete this->servant_dispatcher_; + + this->servant_dispatcher_ = dispatcher; +} + TAO_POA_Current_Impl::TAO_POA_Current_Impl (void) : poa_ (0), object_id_ (), diff --git a/TAO/tao/PortableServer/Object_Adapter.h b/TAO/tao/PortableServer/Object_Adapter.h index 840d7e68c4d..0005ad5594d 100644 --- a/TAO/tao/PortableServer/Object_Adapter.h +++ b/TAO/tao/PortableServer/Object_Adapter.h @@ -26,8 +26,6 @@ #endif /* ACE_LACKS_PRAGMA_ONCE */ #include "poa_macros.h" -// Stubs -#include "RTPortableServerC.h" // Servant #include "Servant_Base.h" @@ -38,15 +36,17 @@ #include "tao/Adapter.h" #include "tao/Server_Strategy_Factory.h" -// RTCORBA -#include "tao/RTCORBAC.h" -#include "tao/Service_Context.h" - // Local Object #include "tao/LocalObject.h" #include "ace/Service_Config.h" +// Policy Validators +#include "Default_Policy_Validator.h" + +// Policy Set +#include "POA_Policy_Set.h" + #if defined(_MSC_VER) #if (_MSC_VER >= 1200) #pragma warning(push) @@ -282,6 +282,20 @@ public: static CORBA::ULong transient_poa_name_size (void); + /// Return the validator. + TAO_POA_Policy_Validator &validator (void); + + /// Return the set of default policies. + TAO_POA_Policy_Set &default_poa_policies (void); + + /// Set the servant dispatcher method. Ownership is transferred to + /// this Object Adapter. Note: This should only be called + /// at initialization. + void servant_dispatcher (TAO_Servant_Dispatcher *dispatcher); + + /// Initialize the default set of POA policies. + void init_default_policies (TAO_POA_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV); // = The TAO_Adapter methods, please check tao/Adapter.h for the // documentation @@ -737,6 +751,14 @@ private: TAO_POA *root_; // The Root POA + + /// The default validator and the beginning of the chain of + /// policy validators. + TAO_POA_Default_Policy_Validator default_validator_; + + /// Save a list of default policies that should be included in + /// every POA (unless overridden). + TAO_POA_Policy_Set default_poa_policies_; }; // **************************************************************** diff --git a/TAO/tao/PortableServer/Object_Adapter.i b/TAO/tao/PortableServer/Object_Adapter.i index b26036dc8fb..d47e33b69f1 100644 --- a/TAO/tao/PortableServer/Object_Adapter.i +++ b/TAO/tao/PortableServer/Object_Adapter.i @@ -6,6 +6,18 @@ TAO_POA_Current::TAO_POA_Current (void) { } +ACE_INLINE TAO_POA_Policy_Validator & +TAO_Object_Adapter::validator (void) +{ + return this->default_validator_; +} + +ACE_INLINE TAO_POA_Policy_Set & +TAO_Object_Adapter::default_poa_policies (void) +{ + return this->default_poa_policies_; +} + ACE_INLINE ACE_Lock & TAO_Object_Adapter::lock (void) { diff --git a/TAO/tao/PortableServer/POA.cpp b/TAO/tao/PortableServer/POA.cpp index 923bf1c5373..8ec241b3e20 100644 --- a/TAO/tao/PortableServer/POA.cpp +++ b/TAO/tao/PortableServer/POA.cpp @@ -18,12 +18,8 @@ #include "tao/Exception.h" #include "tao/Stub.h" #include "tao/debug.h" -#include "tao/Acceptor_Registry.h" - -#include "tao/RT_Policy_i.h" #include "Default_Acceptor_Filter.h" -#include "RT_Acceptor_Filters.h" // auto_ptr class #include "ace/Auto_Ptr.h" @@ -44,9 +40,115 @@ TAO_POA::objectkey_prefix [TAO_POA::TAO_OBJECTKEY_PREFIX_SIZE] = { 000 }; +#if (TAO_HAS_MINIMUM_POA == 0) + +PortableServer::ThreadPolicy_ptr +TAO_POA::create_thread_policy (PortableServer::ThreadPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Thread_Policy *thread_policy = 0; + ACE_NEW_THROW_EX (thread_policy, + TAO_Thread_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::ThreadPolicy::_nil ()); + + return thread_policy; +} + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + +PortableServer::LifespanPolicy_ptr +TAO_POA::create_lifespan_policy (PortableServer::LifespanPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Lifespan_Policy *lifespan_policy = 0; + ACE_NEW_THROW_EX (lifespan_policy, + TAO_Lifespan_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::LifespanPolicy::_nil ()); + + return lifespan_policy; +} + +PortableServer::IdUniquenessPolicy_ptr +TAO_POA::create_id_uniqueness_policy (PortableServer::IdUniquenessPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Id_Uniqueness_Policy *id_uniqueness_policy = 0; + ACE_NEW_THROW_EX (id_uniqueness_policy, + TAO_Id_Uniqueness_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::IdUniquenessPolicy::_nil ()); + + return id_uniqueness_policy; +} + +PortableServer::IdAssignmentPolicy_ptr +TAO_POA::create_id_assignment_policy (PortableServer::IdAssignmentPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Id_Assignment_Policy *id_assignment_policy = 0; + ACE_NEW_THROW_EX (id_assignment_policy, + TAO_Id_Assignment_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::IdAssignmentPolicy::_nil ()); + + return id_assignment_policy; +} + +#if (TAO_HAS_MINIMUM_POA == 0) + +PortableServer::ImplicitActivationPolicy_ptr +TAO_POA::create_implicit_activation_policy (PortableServer::ImplicitActivationPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Implicit_Activation_Policy *implicit_activation_policy = 0; + ACE_NEW_THROW_EX (implicit_activation_policy, + TAO_Implicit_Activation_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::ImplicitActivationPolicy::_nil ()); + + return implicit_activation_policy; +} + +PortableServer::ServantRetentionPolicy_ptr +TAO_POA::create_servant_retention_policy (PortableServer::ServantRetentionPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Servant_Retention_Policy *servant_retention_policy = 0; + ACE_NEW_THROW_EX (servant_retention_policy, + TAO_Servant_Retention_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::ServantRetentionPolicy::_nil ()); + + return servant_retention_policy; +} + +PortableServer::RequestProcessingPolicy_ptr +TAO_POA::create_request_processing_policy (PortableServer::RequestProcessingPolicyValue value, + CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Request_Processing_Policy *request_processing_policy = 0; + ACE_NEW_THROW_EX (request_processing_policy, + TAO_Request_Processing_Policy (value), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (PortableServer::RequestProcessingPolicy::_nil ()); + + return request_processing_policy; +} + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + TAO_POA::TAO_POA (const TAO_POA::String &name, TAO_POA_Manager &poa_manager, - const TAO_POA_Policies &policies, + const TAO_POA_Policy_Set &policies, TAO_POA *parent, ACE_Lock &lock, TAO_SYNCH_MUTEX &thread_lock, @@ -56,7 +158,6 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, : name_ (name), poa_manager_ (poa_manager), policies_ (policies), - acceptor_filter_ (0), parent_ (parent), active_object_map_ (0), @@ -81,8 +182,6 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, children_ (), lock_ (lock), - persistent_ (policies.lifespan () == PortableServer::PERSISTENT), - system_id_ (policies.id_assignment () == PortableServer::SYSTEM_ID), creation_time_ (ACE_OS::gettimeofday ()), orb_core_ (orb_core), object_adapter_ (object_adapter), @@ -96,6 +195,12 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, waiting_servant_deactivation_ (0), single_threaded_lock_ (0) { + // Parse the policies that are used in the critical path in + // a cache. + this->cached_policies_.update (this->policies_, + ACE_TRY_ENV); + ACE_CHECK; + // Set the folded name of this POA. this->set_folded_name (); @@ -103,7 +208,7 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, TAO_Active_Object_Map *active_object_map = 0; ACE_NEW_THROW_EX (active_object_map, TAO_Active_Object_Map (!this->system_id (), - this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID, + this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID, this->persistent (), this->orb_core_.server_factory ()->active_object_map_creation_parameters (), ACE_TRY_ENV), @@ -120,7 +225,7 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, #if (TAO_HAS_MINIMUM_POA == 0) // Setup lock if POA is single threaded. - if (this->policies ().thread () == PortableServer::SINGLE_THREAD_MODEL) + if (this->cached_policies_.thread () == PortableServer::SINGLE_THREAD_MODEL) { ACE_NEW_THROW_EX (this->single_threaded_lock_, TAO_SYNCH_RECURSIVE_MUTEX, @@ -130,11 +235,6 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, #endif /* TAO_HAS_MINIMUM_POA == 0 */ - // Create acceptor filter that will be used to construct ior for - // objects registering with this POA. - this->acceptor_filter_ = this->policies_.make_filter (ACE_TRY_ENV); - ACE_CHECK; - // Register self with manager. int result = this->poa_manager_.register_poa (this); if (result != 0) @@ -166,8 +266,7 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, // ImplRepo related. // #if (TAO_HAS_MINIMUM_CORBA == 0) - - if (this->policies_.lifespan () == PortableServer::PERSISTENT) + if (this->cached_policies_.lifespan () == PortableServer::PERSISTENT) { int temp = this->use_imr_; this->use_imr_ = 0; @@ -181,8 +280,6 @@ TAO_POA::TAO_POA (const TAO_POA::String &name, TAO_POA::~TAO_POA (void) { - delete this->acceptor_filter_; - delete this->single_threaded_lock_; } @@ -254,18 +351,25 @@ TAO_POA::create_POA_i (const char *adapter_name, PortableServer::POA::AdapterAlreadyExists, PortableServer::POA::InvalidPolicy)) { + // Initialize a TAO_POA_Policy_Set instance so that it contains the + // default POA policies. + TAO_POA_Policy_Set tao_policies (this->object_adapter ().default_poa_policies ()); + + // Merge in any policies that the user may have specified. + tao_policies.merge_policies (policies, + ACE_TRY_ENV); + ACE_CHECK_RETURN (PortableServer::POA::_nil ()); + + // If any of the policy objects specified are not valid for the ORB // implementation, if conflicting policy objects are specified, or // if any of the specified policy objects require prior // administrative action that has not been performed, an // InvalidPolicy exception is raised containing the index in the // policies parameter value of the first offending policy object. - TAO_POA_Policies tao_policies (this->orb_core_, - ACE_TRY_ENV); - ACE_CHECK_RETURN (PortableServer::POA::_nil ()); - - tao_policies.parse_policies (policies, - ACE_TRY_ENV); + tao_policies.validate_policies (this->object_adapter ().validator (), + this->orb_core_, + ACE_TRY_ENV); ACE_CHECK_RETURN (PortableServer::POA::_nil ()); // If the poa_manager parameter is null, a new POAManager object is @@ -297,9 +401,38 @@ TAO_POA::create_POA_i (const char *adapter_name, } TAO_POA * +TAO_POA::new_POA (const String &name, + TAO_POA_Manager &poa_manager, + const TAO_POA_Policy_Set &policies, + TAO_POA *parent, + ACE_Lock &lock, + TAO_SYNCH_MUTEX &thread_lock, + TAO_ORB_Core &orb_core, + TAO_Object_Adapter *object_adapter, + CORBA_Environment &ACE_TRY_ENV) +{ + TAO_POA *poa; + + ACE_NEW_THROW_EX (poa, + TAO_POA (name, + poa_manager, + policies, + parent, + lock, + thread_lock, + orb_core, + object_adapter, + ACE_TRY_ENV), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (0); + + return poa; +} + +TAO_POA * TAO_POA::create_POA_i (const TAO_POA::String &adapter_name, TAO_POA_Manager &poa_manager, - const TAO_POA_Policies &policies, + const TAO_POA_Policy_Set &policies, CORBA::Environment &ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException, PortableServer::POA::AdapterAlreadyExists, @@ -328,18 +461,15 @@ TAO_POA::create_POA_i (const TAO_POA::String &adapter_name, // copied before this operation returns, so the application is free // to destroy them while the POA is in use. Policies are not // inherited from the parent POA. - TAO_POA *poa = 0; - ACE_NEW_THROW_EX (poa, - TAO_POA (adapter_name, - poa_manager, - policies, - this, - this->object_adapter ().lock (), - this->object_adapter ().thread_lock (), - this->orb_core_, - this->object_adapter_, - ACE_TRY_ENV), - CORBA::NO_MEMORY ()); + TAO_POA *poa = this->new_POA (adapter_name, + poa_manager, + policies, + this, + this->object_adapter ().lock (), + this->object_adapter ().thread_lock (), + this->orb_core_, + this->object_adapter_, + ACE_TRY_ENV); // Give ownership of the new map to the POA_var. Note, that it // is important for the POA_var to take ownership before @@ -520,8 +650,7 @@ TAO_POA::destroy_i (CORBA::Boolean etherealize_objects, // ImplRepo related. // #if (TAO_HAS_MINIMUM_CORBA == 0) - - if (this->policies_.lifespan () == PortableServer::PERSISTENT) + if (this->cached_policies_.lifespan () == PortableServer::PERSISTENT) { this->imr_notify_shutdown (); // Delete the servant, if there is one. @@ -534,22 +663,7 @@ TAO_POA::destroy_i (CORBA::Boolean etherealize_objects, this->server_object_->_default_POA (ACE_TRY_ENV); ACE_CHECK; -#if (TAO_HAS_RT_CORBA == 1) - - RTPortableServer::POA_var rt_poa = - RTPortableServer::POA::_narrow (poa.in ()); - ACE_CHECK; - - tao_poa = - ACE_dynamic_cast (TAO_POA *, rt_poa.in ()); - -#else - - tao_poa = - ACE_dynamic_cast (TAO_POA *, poa.in ()); - -#endif /* TAO_HAS_RT_CORBA == 1 */ - + tao_poa = ACE_dynamic_cast (TAO_POA *, poa.in ()); PortableServer::ObjectId_var id = tao_poa->servant_to_id_i (this->server_object_, ACE_TRY_ENV); ACE_CHECK; @@ -648,7 +762,7 @@ TAO_POA::get_servant_manager_i (CORBA::Environment &ACE_TRY_ENV) { // This operation requires the USE_SERVANT_MANAGER policy; if not // present, the WrongPolicy exception is raised. - if (this->policies ().request_processing () != PortableServer::USE_SERVANT_MANAGER) + if (this->cached_policies_.request_processing () != PortableServer::USE_SERVANT_MANAGER) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), PortableServer::ServantManager::_nil ()); @@ -657,7 +771,7 @@ TAO_POA::get_servant_manager_i (CORBA::Environment &ACE_TRY_ENV) // This operation returns the servant manager associated with the // POA. If no servant manager has been associated with the POA, it // returns a null reference. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) return PortableServer::ServantManager::_duplicate (this->servant_activator_.in ()); else return PortableServer::ServantManager::_duplicate (this->servant_locator_.in ()); @@ -671,14 +785,14 @@ TAO_POA::set_servant_manager_i (PortableServer::ServantManager_ptr imgr, { // This operation requires the USE_SERVANT_MANAGER policy; if not // present, the WrongPolicy exception is raised. - if (this->policies ().request_processing () != PortableServer::USE_SERVANT_MANAGER) + if (this->cached_policies_.request_processing () != PortableServer::USE_SERVANT_MANAGER) { ACE_THROW (PortableServer::POA::WrongPolicy ()); } // This operation sets the default servant manager associated with // the POA. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { this->servant_activator_ = PortableServer::ServantActivator::_narrow (imgr, ACE_TRY_ENV); @@ -710,7 +824,7 @@ TAO_POA::get_servant_i (CORBA::Environment &ACE_TRY_ENV) { // This operation requires the USE_DEFAULT_SERVANT policy; if not // present, the WrongPolicy exception is raised. - if (this->policies ().request_processing () != PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () != PortableServer::USE_DEFAULT_SERVANT) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -761,7 +875,7 @@ TAO_POA::set_servant_i (PortableServer::Servant servant, { // This operation requires the USE_DEFAULT_SERVANT policy; if not // present, the WrongPolicy exception is raised. - if (this->policies ().request_processing () != PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () != PortableServer::USE_DEFAULT_SERVANT) { ACE_THROW (PortableServer::POA::WrongPolicy ()); } @@ -883,8 +997,8 @@ TAO_POA::activate_object_i (PortableServer::Servant servant, { // This operation requires the SYSTEM_ID and RETAIN policy; if not // present, the WrongPolicy exception is raised. - if (!(this->policies ().id_assignment () == PortableServer::SYSTEM_ID && - this->policies ().servant_retention () == PortableServer::RETAIN)) + if (!(this->cached_policies_.id_assignment () == PortableServer::SYSTEM_ID && + this->cached_policies_.servant_retention () == PortableServer::RETAIN)) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -893,7 +1007,7 @@ TAO_POA::activate_object_i (PortableServer::Servant servant, // If the POA has the UNIQUE_ID policy and the specified servant is // already in the Active Object Map, the ServantAlreadyActive // exception is raised. - if (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID && + if (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID && this->is_servant_in_map (servant)) { ACE_THROW_RETURN (PortableServer::POA::ServantAlreadyActive (), @@ -948,7 +1062,7 @@ TAO_POA::activate_object_with_id_i (const PortableServer::ObjectId &id, { // This operation requires the RETAIN policy; if not present, the // WrongPolicy exception is raised. - if (this->policies ().servant_retention () != PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () != PortableServer::RETAIN) { ACE_THROW (PortableServer::POA::WrongPolicy ()); } @@ -962,7 +1076,7 @@ TAO_POA::activate_object_with_id_i (const PortableServer::ObjectId &id, // policy with an Object Id value that was not previously generated // by the system for that POA, or, if the POA also has the // PERSISTENT policy, for a previous instantiation of the same POA. - if (this->policies ().id_assignment () == PortableServer::SYSTEM_ID && + if (this->cached_policies_.id_assignment () == PortableServer::SYSTEM_ID && !this->is_poa_generated_id (id)) { ACE_THROW (CORBA::BAD_PARAM ()); @@ -994,7 +1108,7 @@ TAO_POA::activate_object_with_id_i (const PortableServer::ObjectId &id, // If the POA has the UNIQUE_ID policy and the servant is already in // the Active Object Map, the ServantAlreadyActive exception is // raised. - if (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID && + if (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID && this->is_servant_in_map (servant)) { ACE_THROW (PortableServer::POA::ServantAlreadyActive ()); @@ -1113,7 +1227,7 @@ TAO_POA::deactivate_all_objects_i (CORBA::Boolean etherealize_objects, this->etherealize_objects_ = etherealize_objects; // This operation is a no-op for the non-RETAIN policy. - if (this->policies ().servant_retention () != PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () != PortableServer::RETAIN) { return; } @@ -1170,7 +1284,7 @@ TAO_POA::deactivate_object_i (const PortableServer::ObjectId &id, { // This operation requires the RETAIN policy; if not present, the // WrongPolicy exception is raised. - if (this->policies ().servant_retention () != PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () != PortableServer::RETAIN) { ACE_THROW (PortableServer::POA::WrongPolicy ()); } @@ -1250,7 +1364,7 @@ TAO_POA::cleanup_servant (TAO_Active_Object_Map::Map_Entry *active_object_map_en #if (TAO_HAS_MINIMUM_POA == 0) if (this->etherealize_objects_ && - this->policies ().request_processing () == PortableServer::USE_SERVANT_MANAGER && + this->cached_policies_.request_processing () == PortableServer::USE_SERVANT_MANAGER && !CORBA::is_nil (this->servant_activator_.in ())) { CORBA::Boolean remaining_activations = @@ -1394,7 +1508,7 @@ TAO_POA::create_reference_i (const char *intf, { // This operation requires the SYSTEM_ID policy; if not present, the // WrongPolicy exception is raised. - if (this->policies ().id_assignment () != PortableServer::SYSTEM_ID) + if (this->cached_policies_.id_assignment () != PortableServer::SYSTEM_ID) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), CORBA::Object::_nil ()); @@ -1413,7 +1527,7 @@ TAO_POA::create_reference_i (const char *intf, // Do the following if we going to retain this object in the active // object map. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { if (this->active_object_map ().bind_using_system_id_returning_system_id (0, priority, @@ -1465,7 +1579,7 @@ TAO_POA::create_reference_with_id_i (const PortableServer::ObjectId &user_id, // an Object Id value that was not previously generated by the // system for that POA, or, if the POA also has the PERSISTENT // policy, for a previous instantiation of the same POA. - if (this->policies ().id_assignment () == PortableServer::SYSTEM_ID && + if (this->cached_policies_.id_assignment () == PortableServer::SYSTEM_ID && !this->is_poa_generated_id (user_id)) { ACE_THROW_RETURN (CORBA::BAD_PARAM (), @@ -1485,7 +1599,7 @@ TAO_POA::create_reference_with_id_i (const PortableServer::ObjectId &user_id, // Do the following if we going to retain this object in the active // object map. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { // @@ We need something that can find the system id using // appropriate strategy, at the same time, return the servant if @@ -1536,10 +1650,10 @@ TAO_POA::servant_to_id_i (PortableServer::Servant servant, // This operation requires the RETAIN and either the UNIQUE_ID or // IMPLICIT_ACTIVATION policies; or it requires the USE_DEFAULT_SERVANT // policy; if not present, the WrongPolicy exception is raised. - if (!(this->policies ().servant_retention () == PortableServer::RETAIN - && (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID - || this->policies ().implicit_activation () == PortableServer::IMPLICIT_ACTIVATION)) - && !(this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT)) + if (!(this->cached_policies_.servant_retention () == PortableServer::RETAIN + && (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID + || this->cached_policies_.implicit_activation () == PortableServer::IMPLICIT_ACTIVATION)) + && !(this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT)) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -1550,7 +1664,7 @@ TAO_POA::servant_to_id_i (PortableServer::Servant servant, // If the POA has the UNIQUE_ID policy and the specified servant is // active, the Object Id associated with that servant is returned. PortableServer::ObjectId_var user_id; - if (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID && + if (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID && this->active_object_map ().find_user_id_using_servant (servant, user_id.out ()) != -1) { @@ -1562,7 +1676,7 @@ TAO_POA::servant_to_id_i (PortableServer::Servant servant, // active, the servant is activated using a POA-generated Object Id // and the Interface Id associated with the servant, and that Object // Id is returned. - if (this->policies ().implicit_activation () == PortableServer::IMPLICIT_ACTIVATION) + if (this->cached_policies_.implicit_activation () == PortableServer::IMPLICIT_ACTIVATION) { // If we reach here, then we either have the MULTIPLE_ID policy // or we have the UNIQUE_ID policy and we are not in the active @@ -1608,7 +1722,7 @@ TAO_POA::servant_to_id_i (PortableServer::Servant servant, // invoked in he context of executin a request on the default // servant, then the ObjectId associated with the current invocation // is returned. - if (this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT) { // Compare the servant specified in the parameter list to the // default servant registered with this POA. @@ -1649,9 +1763,9 @@ TAO_POA::servant_to_system_id_i (PortableServer::Servant servant, // This operation requires the RETAIN and either the UNIQUE_ID or // IMPLICIT_ACTIVATION policies; if not present, the WrongPolicy // exception is raised. - if (!(this->policies ().servant_retention () == PortableServer::RETAIN - && (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID - || this->policies ().implicit_activation () == PortableServer::IMPLICIT_ACTIVATION))) + if (!(this->cached_policies_.servant_retention () == PortableServer::RETAIN + && (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID + || this->cached_policies_.implicit_activation () == PortableServer::IMPLICIT_ACTIVATION))) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -1662,7 +1776,7 @@ TAO_POA::servant_to_system_id_i (PortableServer::Servant servant, // If the POA has the UNIQUE_ID policy and the specified servant is // active, the Object Id associated with that servant is returned. PortableServer::ObjectId_var system_id; - if (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID && + if (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID && this->active_object_map ().find_system_id_using_servant (servant, system_id.out (), priority) != -1) @@ -1675,7 +1789,7 @@ TAO_POA::servant_to_system_id_i (PortableServer::Servant servant, // active, the servant is activated using a POA-generated Object Id // and the Interface Id associated with the servant, and that Object // Id is returned. - if (this->policies ().implicit_activation () == PortableServer::IMPLICIT_ACTIVATION) + if (this->cached_policies_.implicit_activation () == PortableServer::IMPLICIT_ACTIVATION) { // If we reach here, then we either have the MULTIPLE_ID policy // or we xhave the UNIQUE_ID policy and we are not in the active @@ -1761,8 +1875,8 @@ TAO_POA::reference_to_servant (CORBA::Object_ptr reference, // This operation requires the RETAIN policy or the // USE_DEFAULT_SERVANT policy. If neither policy is present, the // WrongPolicy exception is raised. - if (!(this->policies ().servant_retention () == PortableServer::RETAIN - || this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT)) + if (!(this->cached_policies_.servant_retention () == PortableServer::RETAIN + || this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT)) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -1778,7 +1892,7 @@ TAO_POA::reference_to_servant (CORBA::Object_ptr reference, // If the POA has the RETAIN policy and the specified object is // present in the Active Object Map, this operation returns the // servant associated with that object in the Active Object Map. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { TAO_ObjectKey_var key = reference->_key (ACE_TRY_ENV); ACE_CHECK_RETURN (0); @@ -1873,7 +1987,7 @@ TAO_POA::reference_to_servant (CORBA::Object_ptr reference, // Otherwise, if the POA has the USE_DEFAULT_SERVANT policy and a // default servant has been registered with the POA, this operation // returns the default servant. - if (this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT) { // Lock access for the duration of this transaction. TAO_POA_GUARD_RETURN (0); @@ -1973,7 +2087,7 @@ TAO_POA::reference_to_id (CORBA::Object_ptr reference, } // Do the following if we have the RETAIN policy. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { // Lock access for the duration of this transaction. TAO_POA_GUARD_RETURN (0); @@ -2008,7 +2122,7 @@ TAO_POA::id_to_servant_i (const PortableServer::ObjectId &id, { // This operation requires the RETAIN policy; if not present, the // WrongPolicy exception is raised. - if (this->policies ().servant_retention () != PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () != PortableServer::RETAIN) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), 0); @@ -2061,7 +2175,7 @@ TAO_POA::id_to_reference_i (const PortableServer::ObjectId &id, { // This operation requires the RETAIN policy; if not present, the // WrongPolicy exception is raised. - if (this->policies ().servant_retention () != PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () != PortableServer::RETAIN) { ACE_THROW_RETURN (PortableServer::POA::WrongPolicy (), CORBA::Object::_nil ()); @@ -2105,80 +2219,6 @@ TAO_POA::id (CORBA::Environment & /*ACE_TRY_ENV*/) return new CORBA::OctetSeq (this->id_); } -#if (TAO_HAS_RT_CORBA == 1) - -int -TAO_POA::valid_priority (RTCORBA::Priority priority) -{ - // Make sure <priority> matches our resource configuration: - // 1. If Priority Banded Connections are set, <priority> must match - // one of the bands. - // 2. If no Priority Banded Connections are set, at least one server - // endpoint must provide service at the specified <priority>. - - TAO_PriorityBandedConnectionPolicy *bands_policy = - this->policies_.priority_bands (); - - if (bands_policy != 0) - // Case 1. - { - RTCORBA::PriorityBands &bands = - bands_policy->priority_bands_rep (); - - for (CORBA::ULong i = 0; i < bands.length (); ++i) - { - if (priority <= bands[i].high - && priority >= bands[i].low) - return 1; - } - } - else - // Case 2. - { - TAO_Acceptor_Registry *ar = - this->orb_core_.acceptor_registry (); - - for (TAO_Acceptor **a = ar->begin (); a != ar->end (); ++a) - { - if ((*a)->priority () == priority) - return 1; - } - } - - return 0; -} - -void -TAO_POA::validate_policies (CORBA::Environment &ACE_TRY_ENV) -{ - // For each of the above operations, if the POA supports the - // IMPLICIT_ACTIVATION option for the ImplicitActivationPolicy then - // the ORB shall raise a WrongPolicy user exception. This relieves - // an ORB implementation of the need to retrieve the target object's - // priority from "somewhere" when a request arrives for an inactive - // object. - if (this->policies ().implicit_activation () == PortableServer::IMPLICIT_ACTIVATION) - { - ACE_THROW (PortableServer::POA::WrongPolicy ()); - } - - // For each of the above operations, if the POA does not support the - // SERVER_DECLARED option for the PriorityModelPolicy then the ORB - // shall raise a WrongPolicy user exception. - if (this->policies ().priority_model () != TAO_POA_Policies::SERVER_DECLARED) - { - ACE_THROW (PortableServer::POA::WrongPolicy ()); - } - - // In all other respects the semantics of the corresponding - // (i.e. without the name extensions "_with_priority" and - // "_and_priority") PortableServer::POA operations shall be - // observed. -} - -#endif /* TAO_HAS_RT_CORBA */ - - TAO_SERVANT_LOCATION TAO_POA::locate_servant_i (const PortableServer::ObjectId &system_id, PortableServer::Servant &servant, @@ -2188,7 +2228,7 @@ TAO_POA::locate_servant_i (const PortableServer::ObjectId &system_id, // Object Map to find if there is a servant associated with the // Object Id value from the request. If such a servant exists, // return TAO_SERVANT_FOUND. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { // Find user id from system id. PortableServer::ObjectId user_id; @@ -2217,7 +2257,7 @@ TAO_POA::locate_servant_i (const PortableServer::ObjectId &system_id, // If the USE_ACTIVE_OBJECT_MAP_ONLY policy is in effect, the POA raises // the OBJECT_NOT_EXIST system exception. - if (this->policies ().request_processing () == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) + if (this->cached_policies_.request_processing () == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) { return TAO_SERVANT_NOT_FOUND; } @@ -2228,7 +2268,7 @@ TAO_POA::locate_servant_i (const PortableServer::ObjectId &system_id, // has been associated with the POA, return TAO_DEFAULT_SERVANT. If // no servant has been associated with the POA, return // TAO_SERVANT_NOT_FOUND. - if (this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT) { if (this->default_servant_.in () == 0) { @@ -2245,7 +2285,7 @@ TAO_POA::locate_servant_i (const PortableServer::ObjectId &system_id, // has been associated with the POA, return // TAO_SERVANT_MANAGER. If no servant manager has been // associated with the POA, return TAO_SERVANT_NOT_FOUND. - if (this->policies ().request_processing () == PortableServer::USE_SERVANT_MANAGER) + if (this->cached_policies_.request_processing () == PortableServer::USE_SERVANT_MANAGER) { if (CORBA::is_nil (this->servant_activator_.in ()) && CORBA::is_nil (this->servant_locator_.in ())) @@ -2274,7 +2314,7 @@ TAO_POA::locate_servant_i (const char *operation, { // If we have the RETAIN policy, convert/transform from system id to // user id. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { if (this->active_object_map ().find_user_id_using_system_id (system_id, poa_current_impl.object_id_) != 0) @@ -2304,7 +2344,7 @@ TAO_POA::locate_servant_i (const char *operation, // Object Map to find if there is a servant associated with the // Object Id value from the request. If such a servant exists, the // POA invokes the appropriate method on the servant. - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { PortableServer::Servant servant = 0; int result = this->active_object_map ().find_servant_using_system_id_and_user_id (system_id, @@ -2328,7 +2368,7 @@ TAO_POA::locate_servant_i (const char *operation, // If the USE_ACTIVE_OBJECT_MAP_ONLY policy is in effect, the POA raises // the OBJECT_NOT_EXIST system exception. - if (this->policies ().request_processing () == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) + if (this->cached_policies_.request_processing () == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) { ACE_THROW_RETURN (CORBA::OBJECT_NOT_EXIST (), 0); @@ -2341,7 +2381,7 @@ TAO_POA::locate_servant_i (const char *operation, // appropriate method on that servant. If no servant has been // associated with the POA, the POA raises the OBJ_ADAPTER system // exception. - if (this->policies ().request_processing () == PortableServer::USE_DEFAULT_SERVANT) + if (this->cached_policies_.request_processing () == PortableServer::USE_DEFAULT_SERVANT) { PortableServer::Servant result = this->default_servant_.in (); if (result == 0) @@ -2374,7 +2414,7 @@ TAO_POA::locate_servant_i (const char *operation, // ForwardRequest exception. This exception includes an object // reference. // - if (this->policies ().request_processing () == PortableServer::USE_SERVANT_MANAGER) + if (this->cached_policies_.request_processing () == PortableServer::USE_SERVANT_MANAGER) { if (CORBA::is_nil (this->servant_activator_.in ()) && CORBA::is_nil (this->servant_locator_.in ())) @@ -2384,7 +2424,7 @@ TAO_POA::locate_servant_i (const char *operation, } PortableServer::Servant servant = 0; - if (this->policies ().servant_retention () == PortableServer::RETAIN) + if (this->cached_policies_.servant_retention () == PortableServer::RETAIN) { { // A recursive thread lock without using a recursive @@ -2421,7 +2461,7 @@ TAO_POA::locate_servant_i (const char *operation, // the POA policy and is considered to be in error. The POA // will raise an OBJ_ADAPTER system exception for the // request. - if (this->policies ().id_uniqueness () == PortableServer::UNIQUE_ID && + if (this->cached_policies_.id_uniqueness () == PortableServer::UNIQUE_ID && this->is_servant_in_map (servant)) { ACE_THROW_RETURN (CORBA::OBJ_ADAPTER (), @@ -2694,8 +2734,8 @@ TAO_POA::set_id (void) // key. Otherwise, the POA name length can be calculated by looking // at the remainder after extracting other parts of the key. int add_poa_name_length = - this->persistent_ && - !this->system_id_; + this->persistent () && + !this->system_id (); // Size required by the POA name. CORBA::ULong poa_name = 0; @@ -2719,7 +2759,7 @@ TAO_POA::set_id (void) #if (POA_NO_TIMESTAMP == 0) // Calculate the space required for the timestamp. CORBA::ULong creation_time_length = TAO_Creation_Time::creation_time_length (); - if (!this->persistent_) + if (!this->persistent ()) { creation_time += creation_time_length; } @@ -2977,995 +3017,6 @@ TAO_POA::object_adapter (void) #if (TAO_HAS_MINIMUM_POA == 0) -PortableServer::ThreadPolicy_ptr -TAO_POA::create_thread_policy (PortableServer::ThreadPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Thread_Policy *thread_policy = 0; - ACE_NEW_THROW_EX (thread_policy, - TAO_Thread_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::ThreadPolicy::_nil ()); - - return thread_policy; -} - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -PortableServer::LifespanPolicy_ptr -TAO_POA::create_lifespan_policy (PortableServer::LifespanPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Lifespan_Policy *lifespan_policy = 0; - ACE_NEW_THROW_EX (lifespan_policy, - TAO_Lifespan_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::LifespanPolicy::_nil ()); - - return lifespan_policy; -} - -PortableServer::IdUniquenessPolicy_ptr -TAO_POA::create_id_uniqueness_policy (PortableServer::IdUniquenessPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Id_Uniqueness_Policy *id_uniqueness_policy = 0; - ACE_NEW_THROW_EX (id_uniqueness_policy, - TAO_Id_Uniqueness_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::IdUniquenessPolicy::_nil ()); - - return id_uniqueness_policy; -} - -PortableServer::IdAssignmentPolicy_ptr -TAO_POA::create_id_assignment_policy (PortableServer::IdAssignmentPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Id_Assignment_Policy *id_assignment_policy = 0; - ACE_NEW_THROW_EX (id_assignment_policy, - TAO_Id_Assignment_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::IdAssignmentPolicy::_nil ()); - - return id_assignment_policy; -} - -#if (TAO_HAS_MINIMUM_POA == 0) - -PortableServer::ImplicitActivationPolicy_ptr -TAO_POA::create_implicit_activation_policy (PortableServer::ImplicitActivationPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Implicit_Activation_Policy *implicit_activation_policy = 0; - ACE_NEW_THROW_EX (implicit_activation_policy, - TAO_Implicit_Activation_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::ImplicitActivationPolicy::_nil ()); - - return implicit_activation_policy; -} - -PortableServer::ServantRetentionPolicy_ptr -TAO_POA::create_servant_retention_policy (PortableServer::ServantRetentionPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Servant_Retention_Policy *servant_retention_policy = 0; - ACE_NEW_THROW_EX (servant_retention_policy, - TAO_Servant_Retention_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::ServantRetentionPolicy::_nil ()); - - return servant_retention_policy; -} - -PortableServer::RequestProcessingPolicy_ptr -TAO_POA::create_request_processing_policy (PortableServer::RequestProcessingPolicyValue value, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Request_Processing_Policy *request_processing_policy = 0; - ACE_NEW_THROW_EX (request_processing_policy, - TAO_Request_Processing_Policy (value), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (PortableServer::RequestProcessingPolicy::_nil ()); - - return request_processing_policy; -} - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -#if (TAO_HAS_MINIMUM_POA == 0) - -TAO_Thread_Policy::TAO_Thread_Policy (PortableServer::ThreadPolicyValue value) - : value_ (value) -{ -} - -PortableServer::ThreadPolicyValue -TAO_Thread_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Thread_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Thread_Policy *thread_policy_copy = 0; - ACE_NEW_THROW_EX (thread_policy_copy, - TAO_Thread_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return thread_policy_copy; -} - -void -TAO_Thread_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Thread_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::THREAD_POLICY_ID; -} - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -TAO_Lifespan_Policy::TAO_Lifespan_Policy (PortableServer::LifespanPolicyValue value) - : value_ (value) -{ -} - -PortableServer::LifespanPolicyValue -TAO_Lifespan_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Lifespan_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Lifespan_Policy *lifespan_policy_copy = 0; - ACE_NEW_THROW_EX (lifespan_policy_copy, - TAO_Lifespan_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return lifespan_policy_copy; -} - -void -TAO_Lifespan_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Lifespan_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::LIFESPAN_POLICY_ID; -} - -TAO_Id_Uniqueness_Policy::TAO_Id_Uniqueness_Policy (PortableServer::IdUniquenessPolicyValue value) - : value_ (value) -{ -} - -PortableServer::IdUniquenessPolicyValue -TAO_Id_Uniqueness_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Id_Uniqueness_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Id_Uniqueness_Policy *id_uniqueness_policy_copy = 0; - ACE_NEW_THROW_EX (id_uniqueness_policy_copy, - TAO_Id_Uniqueness_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return id_uniqueness_policy_copy; -} - -void -TAO_Id_Uniqueness_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Id_Uniqueness_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::ID_UNIQUENESS_POLICY_ID; -} - -TAO_Id_Assignment_Policy::TAO_Id_Assignment_Policy (PortableServer::IdAssignmentPolicyValue value) - : value_ (value) -{ -} - -PortableServer::IdAssignmentPolicyValue -TAO_Id_Assignment_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Id_Assignment_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Id_Assignment_Policy *id_assignment_policy_copy = 0; - ACE_NEW_THROW_EX (id_assignment_policy_copy, - TAO_Id_Assignment_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return id_assignment_policy_copy; -} - -void -TAO_Id_Assignment_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Id_Assignment_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::ID_ASSIGNMENT_POLICY_ID; -} - -#if (TAO_HAS_MINIMUM_POA == 0) - -TAO_Implicit_Activation_Policy::TAO_Implicit_Activation_Policy (PortableServer::ImplicitActivationPolicyValue value) - : value_ (value) -{ -} - -PortableServer::ImplicitActivationPolicyValue -TAO_Implicit_Activation_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Implicit_Activation_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Implicit_Activation_Policy *implicit_activation_policy_copy = 0; - ACE_NEW_THROW_EX (implicit_activation_policy_copy, - TAO_Implicit_Activation_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return implicit_activation_policy_copy; -} - -void -TAO_Implicit_Activation_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Implicit_Activation_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::IMPLICIT_ACTIVATION_POLICY_ID; -} - -TAO_Servant_Retention_Policy::TAO_Servant_Retention_Policy (PortableServer::ServantRetentionPolicyValue value) - : value_ (value) -{ -} - -PortableServer::ServantRetentionPolicyValue -TAO_Servant_Retention_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Servant_Retention_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Servant_Retention_Policy *servant_retention_policy_copy = 0; - ACE_NEW_THROW_EX (servant_retention_policy_copy, - TAO_Servant_Retention_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return servant_retention_policy_copy; -} - -void -TAO_Servant_Retention_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Servant_Retention_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::SERVANT_RETENTION_POLICY_ID; -} - -TAO_Request_Processing_Policy::TAO_Request_Processing_Policy (PortableServer::RequestProcessingPolicyValue value) - : value_ (value) -{ -} - -PortableServer::RequestProcessingPolicyValue -TAO_Request_Processing_Policy::value (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return this->value_; -} - -CORBA::Policy_ptr -TAO_Request_Processing_Policy::copy (CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - TAO_Request_Processing_Policy *request_processing_policy_copy = 0; - ACE_NEW_THROW_EX (request_processing_policy_copy, - TAO_Request_Processing_Policy (this->value_), - CORBA::NO_MEMORY ()); - ACE_CHECK_RETURN (CORBA::Policy::_nil ()); - - return request_processing_policy_copy; -} - -void -TAO_Request_Processing_Policy::destroy (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ -} - -CORBA::PolicyType -TAO_Request_Processing_Policy::policy_type (CORBA::Environment &) - ACE_THROW_SPEC ((CORBA::SystemException)) -{ - return PortableServer::REQUEST_PROCESSING_POLICY_ID; -} - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -TAO_POA_Policies::TAO_POA_Policies (TAO_ORB_Core &orb_core, - CORBA::Environment &ACE_TRY_ENV) - : thread_ (PortableServer::ORB_CTRL_MODEL), - lifespan_ (PortableServer::TRANSIENT), - id_uniqueness_ (PortableServer::UNIQUE_ID), - id_assignment_ (PortableServer::SYSTEM_ID), - implicit_activation_ (PortableServer::NO_IMPLICIT_ACTIVATION), - servant_retention_ (PortableServer::RETAIN), - request_processing_ (PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY), - priority_model_ (TAO_POA_Policies::CLIENT_PROPAGATED), - server_priority_ (TAO_INVALID_PRIORITY), - -#if (TAO_HAS_RT_CORBA == 1) - - server_protocol_ (0), - priority_bands_ (0), - -#endif /* TAO_HAS_RT_CORBA == 1 */ - - client_exposed_fixed_policies_ (), - orb_core_ (orb_core) -{ - -#if (TAO_HAS_RT_CORBA == 1) - - CORBA::Policy_var policy = - orb_core.priority_model (); - - RTCORBA::PriorityModelPolicy_var priority_model = - RTCORBA::PriorityModelPolicy::_narrow (policy.in (), - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (priority_model.in ())) - { - RTCORBA::PriorityModel rt_priority_model = - priority_model->priority_model (ACE_TRY_ENV); - ACE_CHECK; - - this->priority_model_ = - TAO_POA_Policies::PriorityModel (rt_priority_model); - - this->server_priority_ = - priority_model->server_priority (ACE_TRY_ENV); - ACE_CHECK; - } - - CORBA::Policy_var protocol = - orb_core.server_protocol (); - - RTCORBA::ServerProtocolPolicy_var server_protocol_ptr = - RTCORBA::ServerProtocolPolicy::_narrow (protocol.in (), - ACE_TRY_ENV); - ACE_CHECK; - - TAO_ServerProtocolPolicy *server_protocol = - ACE_static_cast (TAO_ServerProtocolPolicy *, - server_protocol_ptr.in ()); - - if (server_protocol != 0) - { - this->server_protocol (server_protocol); - } - -#else - - ACE_UNUSED_ARG (orb_core); - ACE_UNUSED_ARG (ACE_TRY_ENV); // FUZZ: ignore check_for_ace_check - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -} - -TAO_POA_Policies::TAO_POA_Policies (const TAO_POA_Policies &rhs) - : thread_ (rhs.thread ()), - lifespan_ (rhs.lifespan ()), - id_uniqueness_ (rhs.id_uniqueness ()), - id_assignment_ (rhs.id_assignment ()), - implicit_activation_ (rhs.implicit_activation ()), - servant_retention_ (rhs.servant_retention ()), - request_processing_ (rhs.request_processing ()), - priority_model_ (rhs.priority_model ()), - server_priority_ (rhs.server_priority ()), - -#if (TAO_HAS_RT_CORBA == 1) - - server_protocol_ (0), - priority_bands_ (0), - -#endif /* TAO_HAS_RT_CORBA == 1 */ - - client_exposed_fixed_policies_ ( rhs.client_exposed_fixed_policies ()), - orb_core_ (rhs.orb_core_) -{ - -#if (TAO_HAS_RT_CORBA == 1) - - this->server_protocol (rhs.server_protocol ()); - this->priority_bands (rhs.priority_bands ()); - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -} - -TAO_POA_Policies::~TAO_POA_Policies (void) -{ - for (CORBA::ULong i = 0; - i < this->client_exposed_fixed_policies_.length (); - ++i) - { - ACE_TRY_NEW_ENV - { - this->client_exposed_fixed_policies_[i]->destroy (ACE_TRY_ENV); - ACE_TRY_CHECK; - } - ACE_CATCHANY - { - // Ignore exceptions - ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, "TAO_POA_Policies::~TAO_POA_Policies"); - } - ACE_ENDTRY; - } - -#if (TAO_HAS_RT_CORBA == 1) - - this->server_protocol (0); - this->priority_bands (0); - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -} - -TAO_Acceptor_Filter * -TAO_POA_Policies::make_filter (CORBA::Environment &ACE_TRY_ENV) -{ - TAO_Acceptor_Filter *filter = 0; - -#if (TAO_HAS_RT_CORBA == 1) - - if (this->priority_bands_ != 0) - { - ACE_NEW_THROW_EX (filter, - TAO_Bands_Acceptor_Filter - (this->server_protocol_->protocols_rep (), - this->priority_bands_->priority_bands_rep ()), - CORBA::NO_MEMORY ()); - return filter; - } - - else if (this->priority_model_ == SERVER_DECLARED - && this->server_priority_ != TAO_INVALID_PRIORITY) - { - ACE_NEW_THROW_EX (filter, - TAO_Priority_Acceptor_Filter - (this->server_protocol_->protocols_rep (), - this->server_priority_), - CORBA::NO_MEMORY ()); - return filter; - } - - else - { - ACE_NEW_THROW_EX (filter, - TAO_Server_Protocol_Acceptor_Filter - (this->server_protocol_->protocols_rep ()), - CORBA::NO_MEMORY ()); - return filter; - } - -#else /* TAO_HAS_RT_CORBA == 1 */ - - ACE_NEW_THROW_EX (filter, - TAO_Default_Acceptor_Filter, - CORBA::NO_MEMORY ()); - return filter; - -#endif /* TAO_HAS_RT_CORBA == 1 */ -} - -void -TAO_POA_Policies::parse_policies (const CORBA::PolicyList &policies, - CORBA::Environment &ACE_TRY_ENV) -{ - for (CORBA::ULong i = 0; - i < policies.length (); - i++) - { - this->parse_policy (policies[i], - ACE_TRY_ENV); - ACE_CHECK; - } - - this->validity_check (ACE_TRY_ENV); -} - -void -TAO_POA_Policies::validity_check (CORBA::Environment &ACE_TRY_ENV) -{ - // The NON_RETAIN policy requires either the USE_DEFAULT_SERVANT or - // USE_SERVANT_MANAGER policies. - if (this->servant_retention_ == PortableServer::NON_RETAIN) - if (this->request_processing_ != PortableServer::USE_SERVANT_MANAGER && - this->request_processing_ != PortableServer::USE_DEFAULT_SERVANT) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - // USE_ACTIVE_OBJECT_MAP_ONLY requires the RETAIN policy. - if (this->request_processing_ == PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY) - if (this->servant_retention_ != PortableServer::RETAIN) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - // USE_DEFAULT_SERVANT requires the MULTIPLE_ID policy. - if (this->request_processing_ == PortableServer::USE_DEFAULT_SERVANT) - if (this->id_uniqueness_ != PortableServer::MULTIPLE_ID) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - // IMPLICIT_ACTIVATION requires the SYSTEM_ID and RETAIN policies. - if (this->implicit_activation_ == PortableServer::IMPLICIT_ACTIVATION) - if (this->servant_retention_ != PortableServer::RETAIN || - this->id_assignment_ != PortableServer::SYSTEM_ID) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - -#if (TAO_HAS_RT_CORBA == 1) - // Perform checks for RTCORBA policies. - // @@ What are the appropriate exceptions to throw? - - // @@ We have to force ORB_Core open, in order for - // Acceptor_Registry/acceptors get created, so that we can do - // validation. Once threadpools are in place, this may not be - // necessary. - this->orb_core_.open (ACE_TRY_ENV); - ACE_CHECK; - - if (this->validate_server_protocol () == -1) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - this->validate_priorities (ACE_TRY_ENV); - ACE_CHECK; - -#endif /* TAO_HAS_RT_CORBA == 1 */ -} - -#if (TAO_HAS_RT_CORBA == 1) - -int -TAO_POA_Policies::validate_server_protocol (void) -{ - // Make sure we have an endpoint for at least one of the protocols - // specified in the RTCORBA::ServerProtocolPolicy. This ensure we - // will be able to create non-nil object references. - - RTCORBA::ProtocolList &protocols = - this->server_protocol_->protocols_rep (); - - TAO_Acceptor_Registry *ar = this->orb_core_.acceptor_registry (); - - for (CORBA::ULong j = 0; j < protocols.length (); ++j) - { - CORBA::ULong protocol_type = protocols[j].protocol_type; - for (TAO_AcceptorSetIterator a = ar->begin (); a != ar->end (); ++a) - { - if ((*a)->tag () == protocol_type) - return 0; - } - } - return -1; -} - -void -TAO_POA_Policies::validate_priorities (CORBA::Environment &ACE_TRY_ENV) -{ - // If priority banded connections are set, make sure that: - // 0. There is at least one band. - // 1. Priority model is also set. - // 2. If priority model is SERVER_DECLARED, server_priority must - // match one of the bands. - // 3. For each band, there must be at least one endpoint that can - // service it, i.e., whose priority falls into the band's range. - if (this->priority_bands_ != 0) - { - RTCORBA::PriorityBands &bands = - this->priority_bands_->priority_bands_rep (); - - // Checks 0 and 1. - if (bands.length () == 0 - || this->server_priority_ == TAO_INVALID_PRIORITY) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - // Check 2. - if (this->priority_model_ == SERVER_DECLARED) - { - int match = 0; - for (CORBA::ULong i = 0; i < bands.length (); ++i) - { - if (this->server_priority_ <= bands[i].high - && this->server_priority_ >= bands[i].low) - { - match = 1; - break; - } - } - - if (!match) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - } - - // Check 3. - TAO_Acceptor_Registry *ar = this->orb_core_.acceptor_registry (); - for (CORBA::ULong i = 0; i < bands.length (); ++i) - { - int match = 0; - for (TAO_AcceptorSetIterator a = ar->begin (); - a != ar->end (); - ++a) - { - if ((*a)->priority () <= bands[i].high - && (*a)->priority () >= bands[i].low) - { - match = 1; - break; - } - } - if (!match) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - } - - // Done with checks. - return; - } - - // If priority banded connections are not set, and the priority - // model is SERVER_DECLARED, make sure we have at least one endpoint - // that can provide service for the specified SERVER_DECLARED - // priority. - if (this->priority_model_ == SERVER_DECLARED) - { - TAO_Acceptor_Registry *ar = this->orb_core_.acceptor_registry (); - - for (TAO_AcceptorSetIterator a = ar->begin (); a != ar->end (); ++a) - { - if ((*a)->priority () == this->server_priority_) - return; - } - - ACE_THROW (CORBA::BAD_PARAM ()); - } -} - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -void -TAO_POA_Policies::parse_policy (const CORBA::Policy_ptr policy, - CORBA::Environment &ACE_TRY_ENV) -{ - -#if (TAO_HAS_MINIMUM_POA == 0) - - PortableServer::ThreadPolicy_var thread - = PortableServer::ThreadPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (thread.in ())) - { - this->thread_ = thread->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - - PortableServer::LifespanPolicy_var lifespan - = PortableServer::LifespanPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (lifespan.in ())) - { - this->lifespan_ = lifespan->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - PortableServer::IdUniquenessPolicy_var id_uniqueness - = PortableServer::IdUniquenessPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (id_uniqueness.in ())) - { - this->id_uniqueness_ = id_uniqueness->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - PortableServer::IdAssignmentPolicy_var id_assignment - = PortableServer::IdAssignmentPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (id_assignment.in ())) - { - this->id_assignment_ = id_assignment->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - -#if (TAO_HAS_MINIMUM_POA == 0) - - PortableServer::ImplicitActivationPolicy_var implicit_activation - = PortableServer::ImplicitActivationPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (implicit_activation.in ())) - { - this->implicit_activation_ = implicit_activation->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - PortableServer::ServantRetentionPolicy_var servant_retention - = PortableServer::ServantRetentionPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (servant_retention.in ())) - { - this->servant_retention_ = servant_retention->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - PortableServer::RequestProcessingPolicy_var request_processing - = PortableServer::RequestProcessingPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (request_processing.in ())) - { - this->request_processing_ = request_processing->value (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -#if (TAO_HAS_RT_CORBA == 1) - - RTCORBA::PriorityModelPolicy_var priority_model - = RTCORBA::PriorityModelPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (priority_model.in ())) - { - RTCORBA::PriorityModel rt_priority_model = - priority_model->priority_model (ACE_TRY_ENV); - ACE_CHECK; - - this->priority_model_ = - TAO_POA_Policies::PriorityModel (rt_priority_model); - - this->server_priority_ = - priority_model->server_priority (ACE_TRY_ENV); - ACE_CHECK; - - if (this->server_priority_ < RTCORBA::minPriority - || this->server_priority_ > RTCORBA::maxPriority) - ACE_THROW (PortableServer::POA::InvalidPolicy ()); - - return; - } - - RTCORBA::ClientProtocolPolicy_var client_protocol - = RTCORBA::ClientProtocolPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (client_protocol.in ())) - { - CORBA::ULong current_length = - this->client_exposed_fixed_policies_.length (); - - this->client_exposed_fixed_policies_.length (current_length + 1); - - this->client_exposed_fixed_policies_[current_length] = - client_protocol->copy (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - RTCORBA::PriorityBandedConnectionPolicy_var priority_bands - = RTCORBA::PriorityBandedConnectionPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (priority_bands.in ())) - { - TAO_PriorityBandedConnectionPolicy *priority_bands_i = - ACE_static_cast (TAO_PriorityBandedConnectionPolicy *, - priority_bands.in ()); - - this->priority_bands (priority_bands_i); - - CORBA::ULong current_length = - this->client_exposed_fixed_policies_.length (); - - this->client_exposed_fixed_policies_.length (current_length + 1); - - this->client_exposed_fixed_policies_[current_length] = - priority_bands->copy (ACE_TRY_ENV); - ACE_CHECK; - - return; - } - - RTCORBA::ServerProtocolPolicy_var server_protocol - = RTCORBA::ServerProtocolPolicy::_narrow (policy, - ACE_TRY_ENV); - ACE_CHECK; - - if (!CORBA::is_nil (server_protocol.in ())) - { - TAO_ServerProtocolPolicy *server_protocol_i = - ACE_static_cast (TAO_ServerProtocolPolicy *, - server_protocol.in ()); - - this->server_protocol (server_protocol_i); - - return; - } - -#endif /* TAO_HAS_RT_CORBA == 1 */ - - // Check whether we have a BiDirectional policy set. Call the - // ORB_Core to do the checking for us - int retval = this->orb_core_.parse_bidir_policy (policy, - ACE_TRY_ENV); - - ACE_CHECK; - - // The policy has been successfully parsed, so return - if (retval) - return; - - ACE_THROW (PortableServer::POA::InvalidPolicy ()); -} - -#if (TAO_HAS_RT_CORBA == 1) - -void -TAO_POA_Policies::priority_bands (TAO_PriorityBandedConnectionPolicy *policy) -{ - if (this->priority_bands_) - { - this->priority_bands_->destroy (); - CORBA::release (this->priority_bands_); - this->priority_bands_ = 0; - } - - if (policy) - { - ACE_NEW (this->priority_bands_, - TAO_PriorityBandedConnectionPolicy (*policy)); - } - -} - -void -TAO_POA_Policies::server_protocol (TAO_ServerProtocolPolicy *policy) -{ - ACE_TRY_NEW_ENV - { - if (this->server_protocol_) - { - this->server_protocol_->destroy (ACE_TRY_ENV); - ACE_TRY_CHECK; - - CORBA::release (this->server_protocol_); - this->server_protocol_ = 0; - } - - if (policy) - { - ACE_NEW_THROW_EX (this->server_protocol_, - TAO_ServerProtocolPolicy (*policy), - CORBA::NO_MEMORY ()); - ACE_TRY_CHECK; - } - } - ACE_CATCHANY - { - if (TAO_debug_level > 4) - ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, - "TAO_POA_Policies::server_protocol"); - } - ACE_ENDTRY; -} - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -#if (TAO_HAS_MINIMUM_POA == 0) - TAO_Adapter_Activator::TAO_Adapter_Activator (PortableServer::POAManager_ptr poa_manager) : poa_manager_ (PortableServer::POAManager::_duplicate (poa_manager)) { @@ -4031,7 +3082,7 @@ TAO_POA::key_to_object (const TAO_ObjectKey &key, CORBA::Object_ptr obj = CORBA::Object::_nil (); if (this->use_imr_ - && this->policies_.lifespan () == PortableServer::PERSISTENT) + && this->cached_policies_.lifespan () == PortableServer::PERSISTENT) { // Check to see if we alter the IOR. CORBA::Object_var imr = @@ -4161,75 +3212,14 @@ TAO_POA::key_to_stub_i (const TAO_ObjectKey &key, ACE_TRY_ENV); ACE_CHECK_RETURN (0); - TAO_Stub *data = 0; - - // If the POA has RTCORBA::SERVER_DECLARED priority model - // then regardless of the fact that there are or that there - // are not bands then we need to pass only one endpoint that - // is either the one associated to the bands to which the - // server belongs, or the one associated to the server priority. - // - // If the POA has RTCORBA::CLIENT_EXPOSED, than all endpoints - // should be passed. - -#if (TAO_HAS_RT_CORBA == 1) - - - if (this->policies ().priority_model () - == TAO_POA_Policies::SERVER_DECLARED) - { - if (this->policies ().priority_bands () != 0) - { - TAO_Bands_Acceptor_Filter - filter (this->policies ().server_protocol ()->protocols_rep (), - this->policies ().priority_bands ()->priority_bands_rep()); - - data = this->orb_core_.create_stub_object (key, - type_id, - client_exposed_policies._retn (), - &filter, - ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - } - else - { - RTCORBA::Priority object_priority = - this->policies ().server_priority () > priority ? this->policies ().server_priority () : priority; - TAO_Priority_Acceptor_Filter filter (this->policies ().server_protocol ()->protocols_rep (), - object_priority); - - data = this->orb_core_.create_stub_object (key, - type_id, - client_exposed_policies._retn (), - &filter, - ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - } - } - else if (this->policies ().priority_model () - == TAO_POA_Policies::CLIENT_PROPAGATED) - { - TAO_Server_Protocol_Acceptor_Filter filter ((this->policies ().server_protocol ()->protocols_rep ())); - data = this->orb_core_.create_stub_object (key, - type_id, - client_exposed_policies._retn (), - &filter, - ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - } - -#else /* NON-RT-CORBA Section */ - - data = this->orb_core_.create_stub_object (key, - type_id, - client_exposed_policies._retn (), - this->acceptor_filter_, - ACE_TRY_ENV); + TAO_Default_Acceptor_Filter filter; + TAO_Stub *data = this->orb_core_.create_stub_object (key, + type_id, + client_exposed_policies._retn (), + &filter, + ACE_TRY_ENV); ACE_CHECK_RETURN (0); -#endif /* TAO_HAS_RT_CORBA */ - - return data; } @@ -4237,9 +3227,6 @@ CORBA::PolicyList * TAO_POA::client_exposed_policies (CORBA::Short object_priority, CORBA_Environment &ACE_TRY_ENV) { - const CORBA::PolicyList &client_exposed_fixed_policies = - this->policies ().client_exposed_fixed_policies (); - CORBA::PolicyList *client_exposed_policies = 0; ACE_NEW_THROW_EX (client_exposed_policies, CORBA::PolicyList (), @@ -4247,49 +3234,13 @@ TAO_POA::client_exposed_policies (CORBA::Short object_priority, CORBA::COMPLETED_NO)); ACE_CHECK_RETURN (0); - client_exposed_policies->length (client_exposed_fixed_policies.length ()); - - for (CORBA::ULong i = 0; - i < client_exposed_fixed_policies.length (); - ++i) - (*client_exposed_policies)[i] = - client_exposed_fixed_policies[i]->copy (); - -#if (TAO_HAS_RT_CORBA == 1) - - CORBA::Short poa_priority = - this->policies ().server_priority (); - - if (poa_priority != TAO_INVALID_PRIORITY) - { - TAO_POA_Policies::PriorityModel priority_model = - this->policies ().priority_model (); - - CORBA::Short priority; - if (priority_model == TAO_POA_Policies::CLIENT_PROPAGATED) - priority = poa_priority; - else - priority = object_priority; - - TAO_PriorityModelPolicy *priority_model_policy; - ACE_NEW_THROW_EX (priority_model_policy, - TAO_PriorityModelPolicy (RTCORBA::PriorityModel (priority_model), - priority), - CORBA::NO_MEMORY (TAO_DEFAULT_MINOR_CODE, - CORBA::COMPLETED_NO)); - ACE_CHECK_RETURN (0); - - CORBA::ULong current_length = client_exposed_policies->length (); - client_exposed_policies->length (current_length + 1); - (*client_exposed_policies)[current_length] = priority_model_policy; - } - -#else /* TAO_HAS_RT_CORBA == 1 */ + // Add in all of the client exposed policies. + this->policies_.add_client_exposed_fixed_policies (client_exposed_policies, + ACE_TRY_ENV); + ACE_CHECK_RETURN (0); ACE_UNUSED_ARG (object_priority); -#endif /* TAO_HAS_RT_CORBA == 1 */ - return client_exposed_policies; } @@ -4432,6 +3383,35 @@ TAO_POA::imr_notify_shutdown (void) #endif /* TAO_HAS_MINIMUM_CORBA */ +TAO_POA_Guard::TAO_POA_Guard (TAO_POA &poa, + CORBA::Environment &ACE_TRY_ENV, + int check_for_destruction) + : guard_ (poa.lock ()) +{ + if (!this->guard_.locked ()) + ACE_THROW ( + CORBA::INTERNAL ( + CORBA_SystemException::_tao_minor_code ( + TAO_GUARD_FAILURE, + 0), + CORBA::COMPLETED_NO)); + + // Check if a non-servant upcall is in progress. If a non-servant + // upcall is in progress, wait for it to complete. Unless of + // course, the thread making the non-servant upcall is this thread. + poa.object_adapter ().wait_for_non_servant_upcalls_to_complete (ACE_TRY_ENV); + ACE_CHECK; + + if (check_for_destruction && + poa.cleanup_in_progress ()) + ACE_THROW ( + CORBA::BAD_INV_ORDER ( + CORBA_SystemException::_tao_minor_code ( + TAO_POA_BEING_DESTROYED, + 0), + CORBA::COMPLETED_NO)); +} + #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class ACE_Array_Base<TAO_Active_Object_Map::Map_Entry *>; diff --git a/TAO/tao/PortableServer/POA.h b/TAO/tao/PortableServer/POA.h index 2d438e3d2d6..9fb46cb4b59 100644 --- a/TAO/tao/PortableServer/POA.h +++ b/TAO/tao/PortableServer/POA.h @@ -34,12 +34,15 @@ // POA Manager #include "POAManager.h" +// POA Policy Set +#include "POA_Policy_Set.h" + +// Cached POA Policies +#include "POA_Cached_Policies.h" + // Object_Key #include "tao/Object_KeyC.h" -// RT CORBA -#include "tao/RTCORBAC.h" - // Local Object #include "tao/LocalObject.h" @@ -64,287 +67,7 @@ #pragma warning(disable:4250) #endif /* _MSC_VER */ -class TAO_POA; -class TAO_ServerProtocolPolicy; -class TAO_PriorityBandedConnectionPolicy; class TAO_Acceptor_Filter; - -#if (TAO_HAS_MINIMUM_POA == 0) - -class TAO_PortableServer_Export TAO_Thread_Policy : - public PortableServer::ThreadPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Thread_Policy (PortableServer::ThreadPolicyValue value); - - PortableServer::ThreadPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::ThreadPolicyValue value_; -}; - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -class TAO_PortableServer_Export TAO_Lifespan_Policy : - public PortableServer::LifespanPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Lifespan_Policy (PortableServer::LifespanPolicyValue value); - - PortableServer::LifespanPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::LifespanPolicyValue value_; -}; - -class TAO_PortableServer_Export TAO_Id_Uniqueness_Policy : - public PortableServer::IdUniquenessPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Id_Uniqueness_Policy (PortableServer::IdUniquenessPolicyValue value); - - PortableServer::IdUniquenessPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::IdUniquenessPolicyValue value_; -}; - -class TAO_PortableServer_Export TAO_Id_Assignment_Policy : - public PortableServer::IdAssignmentPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Id_Assignment_Policy (PortableServer::IdAssignmentPolicyValue value); - - PortableServer::IdAssignmentPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::IdAssignmentPolicyValue value_; -}; - -#if (TAO_HAS_MINIMUM_POA == 0) - -class TAO_PortableServer_Export TAO_Implicit_Activation_Policy : - public PortableServer::ImplicitActivationPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Implicit_Activation_Policy (PortableServer::ImplicitActivationPolicyValue value); - - PortableServer::ImplicitActivationPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::ImplicitActivationPolicyValue value_; -}; - -class TAO_PortableServer_Export TAO_Servant_Retention_Policy : - public PortableServer::ServantRetentionPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Servant_Retention_Policy (PortableServer::ServantRetentionPolicyValue value); - - PortableServer::ServantRetentionPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::ServantRetentionPolicyValue value_; -}; - -class TAO_PortableServer_Export TAO_Request_Processing_Policy : - public PortableServer::RequestProcessingPolicy, - public TAO_Local_RefCounted_Object -{ -public: - TAO_Request_Processing_Policy (PortableServer::RequestProcessingPolicyValue value); - - PortableServer::RequestProcessingPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - - CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException)); - -protected: - PortableServer::RequestProcessingPolicyValue value_; -}; - -#endif /* TAO_HAS_MINIMUM_POA == 0 */ - -class TAO_PortableServer_Export TAO_POA_Policies -{ -public: - - enum PriorityModel - { - CLIENT_PROPAGATED, - SERVER_DECLARED - }; - - TAO_POA_Policies (TAO_ORB_Core &orb_core, - CORBA::Environment &ACE_TRY_ENV); - - TAO_POA_Policies (const TAO_POA_Policies &rhs); - - ~TAO_POA_Policies (void); - - PortableServer::ThreadPolicyValue thread (void) const; - void thread (PortableServer::ThreadPolicyValue value); - - PortableServer::LifespanPolicyValue lifespan (void) const; - void lifespan (PortableServer::LifespanPolicyValue value); - - PortableServer::IdUniquenessPolicyValue id_uniqueness (void) const; - void id_uniqueness (PortableServer::IdUniquenessPolicyValue value); - - PortableServer::IdAssignmentPolicyValue id_assignment (void) const; - void id_assignment (PortableServer::IdAssignmentPolicyValue value); - - PortableServer::ImplicitActivationPolicyValue implicit_activation (void) const; - void implicit_activation (PortableServer::ImplicitActivationPolicyValue value); - - PortableServer::ServantRetentionPolicyValue servant_retention (void) const; - void servant_retention (PortableServer::ServantRetentionPolicyValue value); - - PortableServer::RequestProcessingPolicyValue request_processing (void) const; - void request_processing (PortableServer::RequestProcessingPolicyValue value); - - PriorityModel priority_model (void) const; - void priority_model (PriorityModel value); - - CORBA::Short server_priority (void) const; - void server_priority (CORBA::Short value); - - #if (TAO_HAS_RT_CORBA == 1) - - TAO_ServerProtocolPolicy *server_protocol (void) const; - void server_protocol (TAO_ServerProtocolPolicy *policy); - - TAO_PriorityBandedConnectionPolicy *priority_bands (void) const; - void priority_bands (TAO_PriorityBandedConnectionPolicy *policy); - - #endif /* TAO_HAS_RT_CORBA == 1 */ - - TAO_Acceptor_Filter *make_filter (CORBA::Environment &ACE_TRY_ENV); - // Create acceptor filter based on POA's policies. - - void parse_policies (const CORBA::PolicyList &policies, - CORBA_Environment &ACE_TRY_ENV); - - const CORBA::PolicyList &client_exposed_fixed_policies (void) const; - -protected: - - void parse_policy (const CORBA::Policy_ptr policy, - CORBA_Environment &ACE_TRY_ENV); - - void validity_check (CORBA::Environment &ACE_TRY_ENV); - -#if (TAO_HAS_RT_CORBA == 1) - - int validate_server_protocol (void); - - void validate_priorities (CORBA::Environment &ACE_TRY_ENV); - -#endif /* TAO_HAS_RT_CORBA == 1 */ - - PortableServer::ThreadPolicyValue thread_; - - PortableServer::LifespanPolicyValue lifespan_; - - PortableServer::IdUniquenessPolicyValue id_uniqueness_; - - PortableServer::IdAssignmentPolicyValue id_assignment_; - - PortableServer::ImplicitActivationPolicyValue implicit_activation_; - - PortableServer::ServantRetentionPolicyValue servant_retention_; - - PortableServer::RequestProcessingPolicyValue request_processing_; - - PriorityModel priority_model_; - - CORBA::Short server_priority_; - -#if (TAO_HAS_RT_CORBA == 1) - - TAO_ServerProtocolPolicy *server_protocol_; - TAO_PriorityBandedConnectionPolicy *priority_bands_; - -#endif /* TAO_HAS_RT_CORBA == 1 */ - - CORBA::PolicyList client_exposed_fixed_policies_; - - TAO_ORB_Core &orb_core_; -}; - class TAO_Temporary_Creation_Time; class TAO_Creation_Time @@ -403,14 +126,8 @@ protected: // Forward Declaration class ServerObject_i; -#if (TAO_HAS_RT_CORBA == 1) - typedef RTPortableServer::POA TAO_POA_Base; -#else - typedef PortableServer::POA TAO_POA_Base; -#endif /* TAO_HAS_RT_CORBA == 1 */ - class TAO_PortableServer_Export TAO_POA : - public TAO_POA_Base, + public PortableServer::POA , public TAO_Local_RefCounted_Object { public: @@ -591,44 +308,14 @@ public: CORBA::OctetSeq *id (CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) ACE_THROW_SPEC ((CORBA::SystemException)); -#if (TAO_HAS_RT_CORBA == 1) - - CORBA::Object_ptr create_reference_with_priority (const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::WrongPolicy)); - - CORBA::Object_ptr create_reference_with_id_and_priority (const PortableServer::ObjectId & oid, - const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::WrongPolicy)); - - PortableServer::ObjectId * activate_object_with_priority (PortableServer::Servant p_servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::WrongPolicy)); - - void activate_object_with_id_and_priority (const PortableServer::ObjectId & oid, - PortableServer::Servant p_servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::ObjectAlreadyActive, - PortableServer::POA::WrongPolicy)); - -#endif /* TAO_HAS_RT_CORBA == 1 */ + /// Accessor for POA policies. + TAO_POA_Policy_Set &policies (void); - TAO_POA_Policies &policies (void); - // Accessor for POA policies. + /// Accessor for cached POA policies. + TAO_POA_Cached_Policies &cached_policies (void); - CORBA::PolicyList *client_exposed_policies (CORBA::Short object_priority, - CORBA_Environment &ACE_TRY_ENV); + virtual CORBA::PolicyList *client_exposed_policies (CORBA::Short object_priority, + CORBA_Environment &ACE_TRY_ENV); // This method gives the policies that are exposed to the client. // These policies are shipped within the IOR. @@ -647,7 +334,7 @@ public: TAO_POA (const String &name, TAO_POA_Manager &poa_manager, - const TAO_POA_Policies &policies, + const TAO_POA_Policy_Set &policies, TAO_POA *parent, ACE_Lock &lock, TAO_SYNCH_MUTEX &thread_lock, @@ -655,7 +342,7 @@ public: TAO_Object_Adapter *object_adapter, CORBA_Environment &ACE_TRY_ENV); - ~TAO_POA (void); + virtual ~TAO_POA (void); static char name_separator (void); @@ -693,10 +380,24 @@ public: // Create the correct stub, properly initialized with the attributes // and policies attached to the current POA. + /// Accessor for the current thread policy of this POA. + PortableServer::ThreadPolicyValue thread_policy (void) const; + protected: const ACE_CString &name (void) const; + /// Template method for creating new POA's of this type. + virtual TAO_POA *new_POA (const String &name, + TAO_POA_Manager &poa_manager, + const TAO_POA_Policy_Set &policies, + TAO_POA *parent, + ACE_Lock &lock, + TAO_SYNCH_MUTEX &thread_lock, + TAO_ORB_Core &orb_core, + TAO_Object_Adapter *object_adapter, + CORBA_Environment &ACE_TRY_ENV); + PortableServer::POA_ptr create_POA_i (const char *adapter_name, PortableServer::POAManager_ptr poa_manager, const CORBA::PolicyList &policies, @@ -707,7 +408,7 @@ protected: TAO_POA *create_POA_i (const String &adapter_name, TAO_POA_Manager &poa_manager, - const TAO_POA_Policies &policies, + const TAO_POA_Policy_Set &policies, CORBA_Environment &ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException, PortableServer::POA::AdapterAlreadyExists, @@ -774,10 +475,10 @@ protected: // Wrapper for the ORB's key_to_object that will alter the object pointer // if the ImplRepo is used. - TAO_Stub* key_to_stub_i (const TAO_ObjectKey &key, - const char *type_id, - CORBA::Short priority, - CORBA_Environment &ACE_TRY_ENV); + virtual TAO_Stub* key_to_stub_i (const TAO_ObjectKey &key, + const char *type_id, + CORBA::Short priority, + CORBA_Environment &ACE_TRY_ENV); // Like key_to_stub() but assume that the ORB is not shutting down. int is_servant_in_map (PortableServer::Servant servant); @@ -895,14 +596,9 @@ protected: CORBA::Boolean &is_system_id, TAO_Temporary_Creation_Time &poa_creation_time); -#if (TAO_HAS_RT_CORBA == 1) - - int valid_priority (RTCORBA::Priority priority); - - void validate_policies (CORBA::Environment &ACE_TRY_ENV); - - -#endif /* TAO_HAS_RT_CORBA == 1 */ + /// Access the list of default POA policies. This list is used as a + /// prototype for creating new POA's. It should + static TAO_POA_Policy_Set &default_poa_policies (void); protected: @@ -970,11 +666,9 @@ protected: TAO_POA_Manager &poa_manager_; - TAO_POA_Policies policies_; + TAO_POA_Policy_Set policies_; - TAO_Acceptor_Filter *acceptor_filter_; - // Strategy (selected based on POA policies) for deciding which - // endpoints get embedded into object's IOR. + TAO_POA_Cached_Policies cached_policies_; TAO_POA *parent_; @@ -1011,10 +705,6 @@ protected: ACE_Lock &lock_; - int persistent_; - - int system_id_; - TAO_Creation_Time creation_time_; TAO_ORB_Core &orb_core_; @@ -1042,7 +732,7 @@ protected: }; -class TAO_POA_Guard +class TAO_PortableServer_Export TAO_POA_Guard { public: TAO_POA_Guard (TAO_POA &poa, diff --git a/TAO/tao/PortableServer/POA.i b/TAO/tao/PortableServer/POA.i index 8a74c07c228..e5d7c02ddc8 100644 --- a/TAO/tao/PortableServer/POA.i +++ b/TAO/tao/PortableServer/POA.i @@ -16,166 +16,6 @@ TAO_POA::lock (void) return this->lock_; } -ACE_INLINE -TAO_POA_Guard::TAO_POA_Guard (TAO_POA &poa, - CORBA::Environment &ACE_TRY_ENV, - int check_for_destruction) - : guard_ (poa.lock ()) -{ - if (!this->guard_.locked ()) - ACE_THROW ( - CORBA::INTERNAL ( - CORBA_SystemException::_tao_minor_code ( - TAO_GUARD_FAILURE, - 0), - CORBA::COMPLETED_NO)); - - // Check if a non-servant upcall is in progress. If a non-servant - // upcall is in progress, wait for it to complete. Unless of - // course, the thread making the non-servant upcall is this thread. - poa.object_adapter ().wait_for_non_servant_upcalls_to_complete (ACE_TRY_ENV); - ACE_CHECK; - - if (check_for_destruction && - poa.cleanup_in_progress ()) - ACE_THROW ( - CORBA::BAD_INV_ORDER ( - CORBA_SystemException::_tao_minor_code ( - TAO_POA_BEING_DESTROYED, - 0), - CORBA::COMPLETED_NO)); -} - -ACE_INLINE PortableServer::ThreadPolicyValue -TAO_POA_Policies::thread (void) const -{ - return this->thread_; -} - -ACE_INLINE void -TAO_POA_Policies::thread (PortableServer::ThreadPolicyValue value) -{ - this->thread_ = value; -} - -ACE_INLINE PortableServer::LifespanPolicyValue -TAO_POA_Policies::lifespan (void) const -{ - return this->lifespan_; -} - -ACE_INLINE void -TAO_POA_Policies::lifespan (PortableServer::LifespanPolicyValue value) -{ - this->lifespan_ = value; -} - -ACE_INLINE PortableServer::IdUniquenessPolicyValue -TAO_POA_Policies::id_uniqueness (void) const -{ - return this->id_uniqueness_; -} - -ACE_INLINE void -TAO_POA_Policies::id_uniqueness (PortableServer::IdUniquenessPolicyValue value) -{ - this->id_uniqueness_ = value; -} - -ACE_INLINE PortableServer::IdAssignmentPolicyValue -TAO_POA_Policies::id_assignment (void) const -{ - return this->id_assignment_; -} - -ACE_INLINE void -TAO_POA_Policies::id_assignment (PortableServer::IdAssignmentPolicyValue value) -{ - this->id_assignment_ = value; -} - -ACE_INLINE PortableServer::ImplicitActivationPolicyValue -TAO_POA_Policies::implicit_activation (void) const -{ - return this->implicit_activation_; -} - -ACE_INLINE void -TAO_POA_Policies::implicit_activation (PortableServer::ImplicitActivationPolicyValue value) -{ - this->implicit_activation_ = value; -} - -ACE_INLINE PortableServer::ServantRetentionPolicyValue -TAO_POA_Policies::servant_retention (void) const -{ - return this->servant_retention_; -} - -ACE_INLINE void -TAO_POA_Policies::servant_retention (PortableServer::ServantRetentionPolicyValue value) -{ - this->servant_retention_ = value; -} - -ACE_INLINE PortableServer::RequestProcessingPolicyValue -TAO_POA_Policies::request_processing (void) const -{ - return this->request_processing_; -} - -ACE_INLINE void -TAO_POA_Policies::request_processing (PortableServer::RequestProcessingPolicyValue value) -{ - this->request_processing_ = value; -} - -ACE_INLINE TAO_POA_Policies::PriorityModel -TAO_POA_Policies::priority_model (void) const -{ - return this->priority_model_; -} - -ACE_INLINE void -TAO_POA_Policies::priority_model (PriorityModel value) -{ - this->priority_model_ = value; -} - -ACE_INLINE CORBA::Short -TAO_POA_Policies::server_priority (void) const -{ - return this->server_priority_; -} - -ACE_INLINE void -TAO_POA_Policies::server_priority (CORBA::Short value) -{ - this->server_priority_ = value; -} - -#if (TAO_HAS_RT_CORBA == 1) - -ACE_INLINE TAO_ServerProtocolPolicy * -TAO_POA_Policies::server_protocol (void) const -{ - return this->server_protocol_; -} - -ACE_INLINE TAO_PriorityBandedConnectionPolicy * -TAO_POA_Policies::priority_bands (void) const -{ - return this->priority_bands_; -} - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -ACE_INLINE const CORBA::PolicyList & -TAO_POA_Policies::client_exposed_fixed_policies (void) const -{ - return this->client_exposed_fixed_policies_; -} - ACE_INLINE CORBA::ULong TAO_Creation_Time::creation_time_length (void) { @@ -320,7 +160,7 @@ TAO_POA::destroy (CORBA::Boolean etherealize_objects, ACE_TRY_ENV); } -ACE_INLINE TAO_POA_Policies & +ACE_INLINE TAO_POA_Policy_Set & TAO_POA::policies (void) { return this->policies_; @@ -396,7 +236,7 @@ TAO_POA::activate_object (PortableServer::Servant servant, TAO_POA_GUARD_RETURN (0); return this->activate_object_i (servant, - this->policies ().server_priority (), + this->cached_policies_.server_priority (), ACE_TRY_ENV); } @@ -414,7 +254,7 @@ TAO_POA::activate_object_with_id (const PortableServer::ObjectId &id, this->activate_object_with_id_i (id, servant, - this->policies ().server_priority (), + this->cached_policies_.server_priority (), ACE_TRY_ENV); } @@ -442,7 +282,7 @@ TAO_POA::create_reference (const char *intf, TAO_POA_GUARD_RETURN (CORBA::Object::_nil ()); return this->create_reference_i (intf, - this->policies ().server_priority (), + this->cached_policies_.server_priority (), ACE_TRY_ENV); } @@ -458,7 +298,7 @@ TAO_POA::create_reference_with_id (const PortableServer::ObjectId &id, return this->create_reference_with_id_i (id, intf, - this->policies ().server_priority (), + this->cached_policies_.server_priority (), ACE_TRY_ENV); } @@ -521,113 +361,6 @@ TAO_POA::id_to_reference (const PortableServer::ObjectId &oid, return this->id_to_reference_i (oid, ACE_TRY_ENV); } -#if (TAO_HAS_RT_CORBA == 1) - -ACE_INLINE CORBA::Object_ptr -TAO_POA::create_reference_with_priority (const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::WrongPolicy)) -{ - this->validate_policies (ACE_TRY_ENV); - ACE_CHECK_RETURN (CORBA::Object::_nil ()); - - if (!this->valid_priority (priority)) - { - ACE_THROW_RETURN (CORBA::BAD_PARAM (), - 0); - } - - // Lock access for the duration of this transaction. - TAO_POA_GUARD_RETURN (0); - - return this->create_reference_i (intf, - priority, - ACE_TRY_ENV); -} - -ACE_INLINE CORBA::Object_ptr -TAO_POA::create_reference_with_id_and_priority (const PortableServer::ObjectId & oid, - const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::WrongPolicy)) -{ - this->validate_policies (ACE_TRY_ENV); - ACE_CHECK_RETURN (CORBA::Object::_nil ()); - - if (!this->valid_priority (priority)) - { - ACE_THROW_RETURN (CORBA::BAD_PARAM (), - 0); - } - - // Lock access for the duration of this transaction. - TAO_POA_GUARD_RETURN (0); - - return this->create_reference_with_id_i (oid, - intf, - priority, - ACE_TRY_ENV); -} - -ACE_INLINE PortableServer::ObjectId * -TAO_POA::activate_object_with_priority (PortableServer::Servant servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::WrongPolicy)) -{ - this->validate_policies (ACE_TRY_ENV); - ACE_CHECK_RETURN (0); - - if (!this->valid_priority (priority)) - { - ACE_THROW_RETURN (CORBA::BAD_PARAM (), - 0); - } - - // Lock access for the duration of this transaction. - TAO_POA_GUARD_RETURN (0); - - return this->activate_object_i (servant, - priority, - ACE_TRY_ENV); -} - -ACE_INLINE void -TAO_POA::activate_object_with_id_and_priority (const PortableServer::ObjectId & oid, - PortableServer::Servant servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV) - ACE_THROW_SPEC ((CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::ObjectAlreadyActive, - PortableServer::POA::WrongPolicy)) -{ - this->validate_policies (ACE_TRY_ENV); - ACE_CHECK; - - if (!this->valid_priority (priority)) - { - ACE_THROW (CORBA::BAD_PARAM ()); - } - - // Lock access for the duration of this transaction. - TAO_POA_GUARD; - - this->activate_object_with_id_i (oid, - servant, - priority, - ACE_TRY_ENV); -} - -#endif /* TAO_HAS_RT_CORBA */ - - ACE_INLINE PortableServer::POA_ptr TAO_POA::the_parent (CORBA::Environment &) ACE_THROW_SPEC ((CORBA::SystemException)) @@ -689,7 +422,7 @@ TAO_POA::creation_time (void) ACE_INLINE CORBA::Boolean TAO_POA::system_id (void) { - return (CORBA::Boolean) this->system_id_; + return (this->cached_policies_.id_assignment () == PortableServer::SYSTEM_ID); } @@ -703,7 +436,7 @@ TAO_POA::root (void) ACE_INLINE CORBA::Boolean TAO_POA::persistent (void) { - return (CORBA::Boolean) this->persistent_; + return (this->cached_policies_.lifespan () == PortableServer::PERSISTENT); } ACE_INLINE const ACE_CString & @@ -865,3 +598,16 @@ TAO_POA::orb_core (void) const { return this->orb_core_; } + +ACE_INLINE PortableServer::ThreadPolicyValue +TAO_POA::thread_policy (void) const +{ + return this->cached_policies_.thread (); +} + +ACE_INLINE TAO_POA_Cached_Policies & +TAO_POA::cached_policies (void) +{ + return this->cached_policies_; +} + diff --git a/TAO/tao/PortableServer/POA_Cached_Policies.cpp b/TAO/tao/PortableServer/POA_Cached_Policies.cpp new file mode 100644 index 00000000000..542aa912b9b --- /dev/null +++ b/TAO/tao/PortableServer/POA_Cached_Policies.cpp @@ -0,0 +1,150 @@ +// @(#) $Id$ + +#include "POA_Cached_Policies.h" +#include "POA_Policy_Set.h" + +#if !defined (__ACE_INLINE__) +# include "POA_Cached_Policies.i" +#endif /* ! __ACE_INLINE__ */ + + +ACE_RCSID(tao, POA, "$Id$") + + +TAO_POA_Cached_Policies::TAO_POA_Cached_Policies () + : thread_ (PortableServer::ORB_CTRL_MODEL), + lifespan_ (PortableServer::TRANSIENT), + id_uniqueness_ (PortableServer::UNIQUE_ID), + id_assignment_ (PortableServer::SYSTEM_ID), + implicit_activation_ (PortableServer::NO_IMPLICIT_ACTIVATION), + servant_retention_ (PortableServer::RETAIN), + request_processing_ (PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY), + priority_model_ (TAO_POA_Cached_Policies::CLIENT_PROPAGATED), + server_priority_ (TAO_INVALID_PRIORITY) +{ +} + + +TAO_POA_Cached_Policies::~TAO_POA_Cached_Policies (void) +{ +} + +void +TAO_POA_Cached_Policies::update (TAO_POA_Policy_Set &policy_set, + CORBA::Environment &ACE_TRY_ENV) +{ + for (CORBA::ULong i = 0; i < policy_set.num_policies (); i++) + { + CORBA::Policy_var policy = policy_set.get_policy_by_index (i); + + this->update_policy (policy.in (), + ACE_TRY_ENV); + ACE_CHECK; + } +} + +void +TAO_POA_Cached_Policies::update_policy (const CORBA::Policy_ptr policy, + CORBA::Environment &ACE_TRY_ENV) +{ + +#if (TAO_HAS_MINIMUM_POA == 0) + + PortableServer::ThreadPolicy_var thread + = PortableServer::ThreadPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (thread.in ())) + { + this->thread_ = thread->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + + PortableServer::LifespanPolicy_var lifespan + = PortableServer::LifespanPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (lifespan.in ())) + { + this->lifespan_ = lifespan->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + + PortableServer::IdUniquenessPolicy_var id_uniqueness + = PortableServer::IdUniquenessPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (id_uniqueness.in ())) + { + this->id_uniqueness_ = id_uniqueness->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + + PortableServer::IdAssignmentPolicy_var id_assignment + = PortableServer::IdAssignmentPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (id_assignment.in ())) + { + this->id_assignment_ = id_assignment->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + +#if (TAO_HAS_MINIMUM_POA == 0) + + PortableServer::ImplicitActivationPolicy_var implicit_activation + = PortableServer::ImplicitActivationPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (implicit_activation.in ())) + { + this->implicit_activation_ = implicit_activation->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + + PortableServer::ServantRetentionPolicy_var servant_retention + = PortableServer::ServantRetentionPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (servant_retention.in ())) + { + this->servant_retention_ = servant_retention->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + + PortableServer::RequestProcessingPolicy_var request_processing + = PortableServer::RequestProcessingPolicy::_narrow (policy, + ACE_TRY_ENV); + ACE_CHECK; + + if (!CORBA::is_nil (request_processing.in ())) + { + this->request_processing_ = request_processing->value (ACE_TRY_ENV); + ACE_CHECK; + + return; + } + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ +} + diff --git a/TAO/tao/PortableServer/POA_Cached_Policies.h b/TAO/tao/PortableServer/POA_Cached_Policies.h new file mode 100644 index 00000000000..633e8ac32b0 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Cached_Policies.h @@ -0,0 +1,108 @@ +// -*- C++ -*- +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// POA.h +// +// = DESCRIPTION +// POA +// +// = AUTHOR +// Irfan Pyarali +// +// ============================================================================ + +#ifndef TAO_POA_CACHED_POLICIES_H +#define TAO_POA_CACHED_POLICIES_H +#include "ace/pre.h" + +#include "POA_Policies.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +// This is to remove "inherits via dominance" warnings from MSVC. +// MSVC is being a little too paranoid. +#if defined(_MSC_VER) +#if (_MSC_VER >= 1200) +#pragma warning(push) +#endif /* _MSC_VER >= 1200 */ +#pragma warning(disable:4250) +#endif /* _MSC_VER */ + +// Forward references. +class TAO_POA_Policy_Set; + +class TAO_PortableServer_Export TAO_POA_Cached_Policies +{ +public: + + enum PriorityModel + { + CLIENT_PROPAGATED, + SERVER_DECLARED + }; + + TAO_POA_Cached_Policies (); + + ~TAO_POA_Cached_Policies (void); + + /// Update the cached policy values. + void update (TAO_POA_Policy_Set &policy_set, + CORBA::Environment &ACE_TRY_ENV); + + /// Accessor methods to cached values. + PortableServer::ThreadPolicyValue thread (void) const; + PortableServer::LifespanPolicyValue lifespan (void) const; + PortableServer::IdUniquenessPolicyValue id_uniqueness (void) const; + PortableServer::IdAssignmentPolicyValue id_assignment (void) const; + PortableServer::ImplicitActivationPolicyValue implicit_activation (void) const; + PortableServer::ServantRetentionPolicyValue servant_retention (void) const; + PortableServer::RequestProcessingPolicyValue request_processing (void) const; + PriorityModel priority_model (void) const; + CORBA::Short server_priority (void) const; + + void priority_model (PriorityModel priority_model); + void server_priority (CORBA::Short priority); + +protected: + + /// Helper method to update a particular policy. + void update_policy (const CORBA::Policy_ptr policy, + CORBA::Environment &ACE_TRY_ENV); + + PortableServer::ThreadPolicyValue thread_; + + PortableServer::LifespanPolicyValue lifespan_; + + PortableServer::IdUniquenessPolicyValue id_uniqueness_; + + PortableServer::IdAssignmentPolicyValue id_assignment_; + + PortableServer::ImplicitActivationPolicyValue implicit_activation_; + + PortableServer::ServantRetentionPolicyValue servant_retention_; + + PortableServer::RequestProcessingPolicyValue request_processing_; + + PriorityModel priority_model_; + + CORBA::Short server_priority_; +}; + +#if defined(_MSC_VER) && (_MSC_VER >= 1200) +#pragma warning(pop) +#endif /* _MSC_VER */ + +#if defined (__ACE_INLINE__) +# include "POA_Cached_Policies.i" +#endif /* __ACE_INLINE__ */ + +#include "ace/post.h" +#endif /* TAO_POA_CACHED_POLICIES_H */ diff --git a/TAO/tao/PortableServer/POA_Cached_Policies.i b/TAO/tao/PortableServer/POA_Cached_Policies.i new file mode 100644 index 00000000000..4587617a1f4 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Cached_Policies.i @@ -0,0 +1,69 @@ +// $Id$ + +ACE_INLINE PortableServer::ThreadPolicyValue +TAO_POA_Cached_Policies::thread (void) const +{ + return this->thread_; +} + +ACE_INLINE PortableServer::LifespanPolicyValue +TAO_POA_Cached_Policies::lifespan (void) const +{ + return this->lifespan_; +} + +ACE_INLINE PortableServer::IdUniquenessPolicyValue +TAO_POA_Cached_Policies::id_uniqueness (void) const +{ + return this->id_uniqueness_; +} + +ACE_INLINE PortableServer::IdAssignmentPolicyValue +TAO_POA_Cached_Policies::id_assignment (void) const +{ + return this->id_assignment_; +} + +ACE_INLINE PortableServer::ImplicitActivationPolicyValue +TAO_POA_Cached_Policies::implicit_activation (void) const +{ + return this->implicit_activation_; +} + +ACE_INLINE PortableServer::ServantRetentionPolicyValue +TAO_POA_Cached_Policies::servant_retention (void) const +{ + return this->servant_retention_; +} + +ACE_INLINE PortableServer::RequestProcessingPolicyValue +TAO_POA_Cached_Policies::request_processing (void) const +{ + return this->request_processing_; +} + +ACE_INLINE TAO_POA_Cached_Policies::PriorityModel +TAO_POA_Cached_Policies::priority_model (void) const +{ + return this->priority_model_; +} + +ACE_INLINE CORBA::Short +TAO_POA_Cached_Policies::server_priority (void) const +{ + return this->server_priority_; +} + +ACE_INLINE void +TAO_POA_Cached_Policies::priority_model (PriorityModel priority_model) +{ + this->priority_model_ = priority_model; +} + +ACE_INLINE void +TAO_POA_Cached_Policies::server_priority (CORBA::Short priority) +{ + this->server_priority_ = priority; +} + + diff --git a/TAO/tao/PortableServer/POA_Policies.cpp b/TAO/tao/PortableServer/POA_Policies.cpp new file mode 100644 index 00000000000..5f8d2cc9ad1 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policies.cpp @@ -0,0 +1,386 @@ +// @(#) $Id$ + +#include "POA_Policies.h" + +#if !defined (__ACE_INLINE__) +# include "POA_Policies.i" +#endif /* ! __ACE_INLINE__ */ + +ACE_RCSID(PortableServer, POA_Policies, "$Id$") + + +#if (TAO_HAS_MINIMUM_POA == 0) + +TAO_Thread_Policy::TAO_Thread_Policy (PortableServer::ThreadPolicyValue value) + : value_ (value) +{ +} + +PortableServer::ThreadPolicyValue +TAO_Thread_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Thread_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Thread_Policy *thread_policy_copy = 0; + ACE_NEW_THROW_EX (thread_policy_copy, + TAO_Thread_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return thread_policy_copy; +} + +void +TAO_Thread_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Thread_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::THREAD_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Thread_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_THREAD; +} + +TAO_Policy_Scope +TAO_Thread_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + +///////////////////////////////////////////////////////////////////////////// + +TAO_Lifespan_Policy::TAO_Lifespan_Policy (PortableServer::LifespanPolicyValue value) + : value_ (value) +{ +} + +PortableServer::LifespanPolicyValue +TAO_Lifespan_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Lifespan_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Lifespan_Policy *lifespan_policy_copy = 0; + ACE_NEW_THROW_EX (lifespan_policy_copy, + TAO_Lifespan_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return lifespan_policy_copy; +} + +void +TAO_Lifespan_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Lifespan_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::LIFESPAN_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Lifespan_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_LIFESPAN; +} + +TAO_Policy_Scope +TAO_Lifespan_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +///////////////////////////////////////////////////////////////////////////// + +TAO_Id_Uniqueness_Policy::TAO_Id_Uniqueness_Policy (PortableServer::IdUniquenessPolicyValue value) + : value_ (value) +{ +} + +PortableServer::IdUniquenessPolicyValue +TAO_Id_Uniqueness_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Id_Uniqueness_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Id_Uniqueness_Policy *id_uniqueness_policy_copy = 0; + ACE_NEW_THROW_EX (id_uniqueness_policy_copy, + TAO_Id_Uniqueness_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return id_uniqueness_policy_copy; +} + +void +TAO_Id_Uniqueness_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Id_Uniqueness_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::ID_UNIQUENESS_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Id_Uniqueness_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_ID_UNIQUENESS; +} + +TAO_Policy_Scope +TAO_Id_Uniqueness_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +///////////////////////////////////////////////////////////////////////////// + +TAO_Id_Assignment_Policy::TAO_Id_Assignment_Policy (PortableServer::IdAssignmentPolicyValue value) + : value_ (value) +{ +} + +PortableServer::IdAssignmentPolicyValue +TAO_Id_Assignment_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Id_Assignment_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Id_Assignment_Policy *id_assignment_policy_copy = 0; + ACE_NEW_THROW_EX (id_assignment_policy_copy, + TAO_Id_Assignment_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return id_assignment_policy_copy; +} + +void +TAO_Id_Assignment_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Id_Assignment_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::ID_ASSIGNMENT_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Id_Assignment_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_ID_ASSIGNMENT; +} + +TAO_Policy_Scope +TAO_Id_Assignment_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +///////////////////////////////////////////////////////////////////////////// + +#if (TAO_HAS_MINIMUM_POA == 0) + +TAO_Implicit_Activation_Policy::TAO_Implicit_Activation_Policy (PortableServer::ImplicitActivationPolicyValue value) + : value_ (value) +{ +} + +PortableServer::ImplicitActivationPolicyValue +TAO_Implicit_Activation_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Implicit_Activation_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Implicit_Activation_Policy *implicit_activation_policy_copy = 0; + ACE_NEW_THROW_EX (implicit_activation_policy_copy, + TAO_Implicit_Activation_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return implicit_activation_policy_copy; +} + +void +TAO_Implicit_Activation_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Implicit_Activation_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::IMPLICIT_ACTIVATION_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Implicit_Activation_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_IMPLICIT_ACTIVATION; +} + +TAO_Policy_Scope +TAO_Implicit_Activation_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +///////////////////////////////////////////////////////////////////////////// + +TAO_Servant_Retention_Policy::TAO_Servant_Retention_Policy (PortableServer::ServantRetentionPolicyValue value) + : value_ (value) +{ +} + +PortableServer::ServantRetentionPolicyValue +TAO_Servant_Retention_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Servant_Retention_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Servant_Retention_Policy *servant_retention_policy_copy = 0; + ACE_NEW_THROW_EX (servant_retention_policy_copy, + TAO_Servant_Retention_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return servant_retention_policy_copy; +} + +void +TAO_Servant_Retention_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Servant_Retention_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::SERVANT_RETENTION_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Servant_Retention_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_SERVANT_RETENTION; +} + +TAO_Policy_Scope +TAO_Servant_Retention_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +///////////////////////////////////////////////////////////////////////////// + +TAO_Request_Processing_Policy::TAO_Request_Processing_Policy (PortableServer::RequestProcessingPolicyValue value) + : value_ (value) +{ +} + +PortableServer::RequestProcessingPolicyValue +TAO_Request_Processing_Policy::value (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return this->value_; +} + +CORBA::Policy_ptr +TAO_Request_Processing_Policy::copy (CORBA::Environment &ACE_TRY_ENV) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_Request_Processing_Policy *request_processing_policy_copy = 0; + ACE_NEW_THROW_EX (request_processing_policy_copy, + TAO_Request_Processing_Policy (this->value_), + CORBA::NO_MEMORY ()); + ACE_CHECK_RETURN (CORBA::Policy::_nil ()); + + return request_processing_policy_copy; +} + +void +TAO_Request_Processing_Policy::destroy (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +CORBA::PolicyType +TAO_Request_Processing_Policy::policy_type (CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + return PortableServer::REQUEST_PROCESSING_POLICY_ID; +} + +TAO_Cached_Policy_Type +TAO_Request_Processing_Policy::_tao_cached_type (void) const +{ + return TAO_CACHED_POLICY_REQUEST_PROCESSING; +} + +TAO_Policy_Scope +TAO_Request_Processing_Policy::_tao_scope (void) const +{ + return TAO_POLICY_POA_SCOPE; +} + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + +#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) + +#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) + +#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ diff --git a/TAO/tao/PortableServer/POA_Policies.h b/TAO/tao/PortableServer/POA_Policies.h new file mode 100644 index 00000000000..c78b5f9b808 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policies.h @@ -0,0 +1,261 @@ +// -*- C++ -*- +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// POA_Policies.h +// +// = DESCRIPTION +// POA +// +// = AUTHOR +// Irfan Pyarali +// +// ============================================================================ + +#ifndef TAO_POA_POLICIES_H +#define TAO_POA_POLICIES_H +#include "ace/pre.h" + +#include "PortableServerC.h" +#include "tao/LocalObject.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + + +// This is to remove "inherits via dominance" warnings from MSVC. +// MSVC is being a little too paranoid. +#if defined(_MSC_VER) +#if (_MSC_VER >= 1200) +#pragma warning(push) +#endif /* _MSC_VER >= 1200 */ +#pragma warning(disable:4250) +#endif /* _MSC_VER */ + +#if (TAO_HAS_MINIMUM_POA == 0) + +class TAO_PortableServer_Export TAO_Thread_Policy : + public PortableServer::ThreadPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Thread_Policy (PortableServer::ThreadPolicyValue value); + + PortableServer::ThreadPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::ThreadPolicyValue value_; +}; + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + +class TAO_PortableServer_Export TAO_Lifespan_Policy : + public PortableServer::LifespanPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Lifespan_Policy (PortableServer::LifespanPolicyValue value); + + PortableServer::LifespanPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::LifespanPolicyValue value_; +}; + +class TAO_PortableServer_Export TAO_Id_Uniqueness_Policy : + public PortableServer::IdUniquenessPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Id_Uniqueness_Policy (PortableServer::IdUniquenessPolicyValue value); + + PortableServer::IdUniquenessPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::IdUniquenessPolicyValue value_; +}; + +class TAO_PortableServer_Export TAO_Id_Assignment_Policy : + public PortableServer::IdAssignmentPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Id_Assignment_Policy (PortableServer::IdAssignmentPolicyValue value); + + PortableServer::IdAssignmentPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::IdAssignmentPolicyValue value_; +}; + +#if (TAO_HAS_MINIMUM_POA == 0) + +class TAO_PortableServer_Export TAO_Implicit_Activation_Policy : + public PortableServer::ImplicitActivationPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Implicit_Activation_Policy (PortableServer::ImplicitActivationPolicyValue value); + + PortableServer::ImplicitActivationPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::ImplicitActivationPolicyValue value_; +}; + +class TAO_PortableServer_Export TAO_Servant_Retention_Policy : + public PortableServer::ServantRetentionPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Servant_Retention_Policy (PortableServer::ServantRetentionPolicyValue value); + + PortableServer::ServantRetentionPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::ServantRetentionPolicyValue value_; +}; + +class TAO_PortableServer_Export TAO_Request_Processing_Policy : + public PortableServer::RequestProcessingPolicy, + public TAO_Local_RefCounted_Object +{ +public: + TAO_Request_Processing_Policy (PortableServer::RequestProcessingPolicyValue value); + + PortableServer::RequestProcessingPolicyValue value (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::Policy_ptr copy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + void destroy (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + CORBA::PolicyType policy_type (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()) + ACE_THROW_SPEC ((CORBA::SystemException)); + + // Return the cached policy type for this policy. + virtual TAO_Cached_Policy_Type _tao_cached_type (void) const; + + // Returns the scope at which this policy can be applied. See orbconf.h. + virtual TAO_Policy_Scope _tao_scope (void) const; + +protected: + PortableServer::RequestProcessingPolicyValue value_; +}; + +#endif /* TAO_HAS_MINIMUM_POA == 0 */ + +#if defined(_MSC_VER) && (_MSC_VER >= 1200) +#pragma warning(pop) +#endif /* _MSC_VER */ + +#if defined (__ACE_INLINE__) +# include "POA_Policies.i" +#endif /* __ACE_INLINE__ */ + +#include "ace/post.h" +#endif /* TAO_POA_POLICIES_H */ diff --git a/TAO/tao/PortableServer/POA_Policies.i b/TAO/tao/PortableServer/POA_Policies.i new file mode 100644 index 00000000000..74e88caa0c5 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policies.i @@ -0,0 +1,2 @@ +// $Id$ + diff --git a/TAO/tao/PortableServer/POA_Policy_Set.cpp b/TAO/tao/PortableServer/POA_Policy_Set.cpp new file mode 100644 index 00000000000..d07934f0594 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policy_Set.cpp @@ -0,0 +1,99 @@ +// @(#) $Id$ + +#include "POA_Policy_Set.h" +#include "POA_Cached_Policies.h" +#include "Policy_Validator.h" + +#include "tao/ORB_Core.h" + +#if !defined (__ACE_INLINE__) +# include "POA_Policy_Set.i" +#endif /* ! __ACE_INLINE__ */ + +ACE_RCSID(tao, POA, "$Id$") + +TAO_POA_Policy_Set::TAO_POA_Policy_Set () + : + impl_ (TAO_POLICY_POA_SCOPE) +{ +} + +TAO_POA_Policy_Set::TAO_POA_Policy_Set (const TAO_POA_Policy_Set &rhs) + : + impl_ (rhs.impl_) +{ +} + +TAO_POA_Policy_Set::~TAO_POA_Policy_Set (void) +{ +} + +void +TAO_POA_Policy_Set::add_client_exposed_fixed_policies (CORBA::PolicyList *client_exposed_policies, + CORBA::Environment &ACE_TRY_ENV) +{ + CORBA::ULong cep_index = client_exposed_policies->length (); + + for (CORBA::ULong i = 0; + i < this->num_policies (); + ++i) + { + CORBA::Policy_var policy = this->get_policy_by_index (i); + + // If this policy is client exposed, add it to the list. + if (policy->_tao_scope () & TAO_POLICY_CLIENT_EXPOSED) + { + client_exposed_policies->length (cep_index + 1); + (*client_exposed_policies)[cep_index] = + policy->copy (ACE_TRY_ENV); + ACE_CHECK; + + cep_index++; + } + } +} + +void +TAO_POA_Policy_Set::validate_policies (TAO_POA_Policy_Validator &validator, + TAO_ORB_Core &orb_core, + CORBA::Environment &ACE_TRY_ENV) +{ + // Validate that all of the specified policies make sense. + validator.validate (this->impl_, ACE_TRY_ENV); + ACE_CHECK; + + // Verify that all policies are legal for the currently loaded + // POA extensions. + for (CORBA::ULong i = 0; + i < this->impl_.num_policies (); + i++) + { + CORBA::Policy_var policy = this->impl_.get_policy_by_index (i); + + CORBA::PolicyType type = policy->policy_type (ACE_TRY_ENV); + ACE_CHECK; + + if (validator.legal_policy (type) == 0) + { + // @@ Bala, please move this into a policy validator and then + // register it when you load the BiDir library. + + // Check whether we have a BiDirectional policy set. Call the + // ORB_Core to do the checking for us + int retval = orb_core.parse_bidir_policy (policy.in (), + ACE_TRY_ENV); + + ACE_CHECK; + + // The policy has been successfully parsed, so return + if (retval) + continue; + + // An invalid policy was specified. Let the user know about + // it. + ACE_THROW (PortableServer::POA::InvalidPolicy ()); + } + } +} + + diff --git a/TAO/tao/PortableServer/POA_Policy_Set.h b/TAO/tao/PortableServer/POA_Policy_Set.h new file mode 100644 index 00000000000..82f477a93db --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policy_Set.h @@ -0,0 +1,87 @@ +// -*- C++ -*- +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// POA.h +// +// = DESCRIPTION +// POA +// +// = AUTHOR +// Irfan Pyarali +// +// ============================================================================ + +#ifndef TAO_POA_POLICY_SET_H +#define TAO_POA_POLICY_SET_H +#include "ace/pre.h" + +#include "POA_Policies.h" +#include "tao/Policy_Set.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +// This is to remove "inherits via dominance" warnings from MSVC. +// MSVC is being a little too paranoid. +#if defined(_MSC_VER) +#if (_MSC_VER >= 1200) +#pragma warning(push) +#endif /* _MSC_VER >= 1200 */ +#pragma warning(disable:4250) +#endif /* _MSC_VER */ + +class TAO_POA_Policy_Validator; + +class TAO_PortableServer_Export TAO_POA_Policy_Set +{ +public: + + TAO_POA_Policy_Set (); + + TAO_POA_Policy_Set (const TAO_POA_Policy_Set &rhs); + + ~TAO_POA_Policy_Set (void); + + /// Returns the policy at the specified index. + /// CORBA::Policy::_nil () is returned if the policy doesn't exist + CORBA::Policy *get_policy_by_index (CORBA::ULong index); + CORBA::ULong num_policies (void) const; + + /// Obtain a single cached policy. + CORBA::Policy_ptr get_cached_policy (TAO_Cached_Policy_Type type); + + void merge_policies (const CORBA::PolicyList &policies, + CORBA::Environment &ACE_TRY_ENV); + + void merge_policy (const CORBA::Policy_ptr policy, + CORBA::Environment &ACE_TRY_ENV); + + void validate_policies (TAO_POA_Policy_Validator &validator, + TAO_ORB_Core &orb_core, + CORBA::Environment &ACE_TRY_ENV); + + // Add all of the client exposed policies to the specified list. + void add_client_exposed_fixed_policies (CORBA::PolicyList *client_exposed_policies, + CORBA::Environment &ACE_TRY_ENV); + +protected: + TAO_Policy_Set impl_; +}; + +#if defined(_MSC_VER) && (_MSC_VER >= 1200) +#pragma warning(pop) +#endif /* _MSC_VER */ + +#if defined (__ACE_INLINE__) +# include "POA_Policy_Set.i" +#endif /* __ACE_INLINE__ */ + +#include "ace/post.h" +#endif /* TAO_POA_POLICY_SET_H */ diff --git a/TAO/tao/PortableServer/POA_Policy_Set.i b/TAO/tao/PortableServer/POA_Policy_Set.i new file mode 100644 index 00000000000..e033967f5d4 --- /dev/null +++ b/TAO/tao/PortableServer/POA_Policy_Set.i @@ -0,0 +1,39 @@ +// $Id$ + +ACE_INLINE CORBA::ULong +TAO_POA_Policy_Set::num_policies (void) const +{ + return this->impl_.num_policies (); +} + +ACE_INLINE CORBA::Policy * +TAO_POA_Policy_Set::get_policy_by_index (CORBA::ULong index) +{ + return this->impl_.get_policy_by_index (index); +} + +ACE_INLINE CORBA::Policy_ptr +TAO_POA_Policy_Set::get_cached_policy (TAO_Cached_Policy_Type type) +{ + return this->impl_.get_cached_policy (type); +} + +ACE_INLINE void +TAO_POA_Policy_Set::merge_policies (const CORBA::PolicyList &policies, + CORBA::Environment &ACE_TRY_ENV) +{ + // Add the policies if they don't exist, override them if they do. + this->impl_.set_policy_overrides (policies, + CORBA::ADD_OVERRIDE, + ACE_TRY_ENV); + ACE_CHECK; +} + +ACE_INLINE void +TAO_POA_Policy_Set::merge_policy (const CORBA::Policy_ptr policy, + CORBA::Environment &ACE_TRY_ENV) +{ + this->impl_.set_policy (policy, ACE_TRY_ENV); + ACE_CHECK; +} + diff --git a/TAO/tao/PortableServer/Policy_Validator.cpp b/TAO/tao/PortableServer/Policy_Validator.cpp new file mode 100644 index 00000000000..6b64139659e --- /dev/null +++ b/TAO/tao/PortableServer/Policy_Validator.cpp @@ -0,0 +1,52 @@ +// @(#) $Id$ + +#include "Policy_Validator.h" +#include "tao/Environment.h" + +ACE_RCSID(tao, POA, "$Id$") + +TAO_POA_Policy_Validator *TAO_POA_Policy_Validator::last_ = 0; + +TAO_POA_Policy_Validator::TAO_POA_Policy_Validator (void) + : next_ (0) +{ + // No-Op. +} + +TAO_POA_Policy_Validator::~TAO_POA_Policy_Validator (void) +{ + delete this->next_; +} + +void +TAO_POA_Policy_Validator::add_validator (TAO_POA_Policy_Validator *validator) +{ + if (this->last_ == 0) + this->last_ = this->next_ = validator; + else + this->last_ = this->last_->next_ = validator; +} + + +void +TAO_POA_Policy_Validator::validate (TAO_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV) +{ + this->validate_impl (policies, ACE_TRY_ENV); + ACE_CHECK; + + if (this->next_ != 0) + { + this->next_->validate (policies, ACE_TRY_ENV); + ACE_CHECK; + } +} + +CORBA::Boolean +TAO_POA_Policy_Validator::legal_policy (CORBA::PolicyType type) +{ + return (this->legal_policy_impl (type) || + ((this->next_ != 0) && this->next_->legal_policy_impl (type))); +} + + diff --git a/TAO/tao/PortableServer/Policy_Validator.h b/TAO/tao/PortableServer/Policy_Validator.h new file mode 100644 index 00000000000..328dc251cc9 --- /dev/null +++ b/TAO/tao/PortableServer/Policy_Validator.h @@ -0,0 +1,79 @@ +//============================================================================= +/** + * @file Policy_Validator.h + * + * $Id$ + * + * This file contains the declaration for the POA policy validator + * interface. + * + * @author Angelo Corsaro <corsaro@cs.wustl.edu> + * @author Frank Hunleth <fhuntleth@cs.wustl.edu> + */ +//============================================================================= + +#ifndef TAO_POLICY_VALIDATOR_H_ +#define TAO_POLICY_VALIDATOR_H_ + +#include "ace/pre.h" +#include "tao/corbafwd.h" +#include "portableserver_export.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + + +// Forward declarations. +class TAO_Policy_Set; + +class TAO_PortableServer_Export TAO_POA_Policy_Validator +{ +public: + /// Constructor. + TAO_POA_Policy_Validator (void); + + /// Destructor. + virtual ~TAO_POA_Policy_Validator (void); + + /** + * Validate that the policies in the specified set + * are consistent and legal. Throw an appropriate exception + * if that is not the case. + */ + void validate (TAO_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV); + + /** + * Return whether the specified policy type is legal for the + * current configuration. This is needed since the user can + * potentially specify policies that are unknown to an + * validate () routine, and these need to be caught. + */ + CORBA::Boolean legal_policy (CORBA::PolicyType type); + + /** + * Adds a validator to the "chain of validators". The <code> + * TAO_POA_Policy_Validator </code> implements something that looks + * like a chain of responsability in which different member of the + * chain have the responsability of validating a given set of + * policies. + */ + void add_validator (TAO_POA_Policy_Validator *validator); + + +protected: + virtual void validate_impl (TAO_Policy_Set &policies, + CORBA::Environment &ACE_TRY_ENV) = 0; + + virtual CORBA::Boolean legal_policy_impl (CORBA::PolicyType type) = 0; + +private: + TAO_POA_Policy_Validator *next_; + static TAO_POA_Policy_Validator *last_; +}; + +#include "ace/post.h" +#endif /* TAO_POLICY_VALIDATOR_H_ */ + + diff --git a/TAO/tao/PortableServer/PortableServer.h b/TAO/tao/PortableServer/PortableServer.h index bf926cd9de0..68e8cea17ab 100644 --- a/TAO/tao/PortableServer/PortableServer.h +++ b/TAO/tao/PortableServer/PortableServer.h @@ -48,7 +48,7 @@ TAO_Requires_POA_Initializer = TAO_POA_Initializer::init (); #endif /* ACE_HAS_BROKEN_STATIC_CONSTRUCTORS */ #define TAO_PORTABLESERVER_SAFE_INCLUDE -#include "RTPortableServerC.h" +#include "PortableServerC.h" #undef TAO_PORTABLESERVER_SAFE_INCLUDE #include "ace/post.h" diff --git a/TAO/tao/PortableServer/RTPortableServer.pidl b/TAO/tao/PortableServer/RTPortableServer.pidl deleted file mode 100644 index ecd290b30ce..00000000000 --- a/TAO/tao/PortableServer/RTPortableServer.pidl +++ /dev/null @@ -1,78 +0,0 @@ -// -// $Id$ -// -// ================================================================ -// -// = LIBRARY -// TAO -// -// = FILENAME -// RTPortableServer.pidl -// -// = DESCRIPTION -// -// This file was used to generate the code in RTPortableServerC.{h,i,cpp} -// -// The command used to generate code from this file is: -// -// tao_idl.exe \ -// -Ge 1 \ -// -Wb,export_macro=TAO_PortableServer_Export \ -// -Wb,pre_include="ace/pre.h" \ -// -Wb,post_include="ace/post.h" \ -// RTPortableServer.pidl -// -// After the file is generated a patch from the diffs directory must -// be applied. The patch fixes include file dependencies and adds -// TAO_HAS_RT_CORBA directives. It also makes the inheritance of -// RTPortableServer::POA from PortableServer::POA non-virtual. This -// was to make sure that classes casting from PortableServer::POA to -// TAO_POA can still do so. -// -// Apply patches using the following commands: -// -// patch < diffs\RTPortableServerC.h.diff -// patch < diffs\RTPortableServerC.cpp.diff -// -// Note: The diffs were generated with these commands: -// -// diff -wub RTPortableServerC.h RTPortableServerC.h.mod > diffs\RTPortableServerC.h.diff -// diff -wub RTPortableServerC.cpp RTPortableServerC.cpp.mod > diffs\RTPortableServerC.cpp.diff -// -// ================================================================ - -#ifndef _RT_PORTABLE_SERVER_IDL_ -#define _RT_PORTABLE_SERVER_IDL_ - -#include <PortableServer.pidl> -#include <RTCORBA.pidl> - -#pragma prefix "omg.org" - -module RTPortableServer -{ - local interface POA : PortableServer::POA - { - Object create_reference_with_priority (in CORBA::RepositoryId intf, - in RTCORBA::Priority priority) - raises (WrongPolicy); - - Object create_reference_with_id_and_priority (in PortableServer::ObjectId oid, - in CORBA::RepositoryId intf, - in RTCORBA::Priority priority) - raises (WrongPolicy); - - PortableServer::ObjectId activate_object_with_priority (in PortableServer::Servant p_servant, - in RTCORBA::Priority priority) - raises (ServantAlreadyActive, WrongPolicy); - - void activate_object_with_id_and_priority (in PortableServer::ObjectId oid, - in PortableServer::Servant p_servant, - in RTCORBA::Priority priority) - raises ( ServantAlreadyActive, ObjectAlreadyActive, WrongPolicy ); - }; -}; - -#pragma prefix "" - -#endif /* _RT_PORTABLE_SERVER_IDL_ */ diff --git a/TAO/tao/PortableServer/RTPortableServerC.cpp b/TAO/tao/PortableServer/RTPortableServerC.cpp deleted file mode 100644 index 2690be06d38..00000000000 --- a/TAO/tao/PortableServer/RTPortableServerC.cpp +++ /dev/null @@ -1,304 +0,0 @@ -// -*- C++ -*- -// -// $Id$ - -// **** Code generated by the The ACE ORB (TAO) IDL Compiler **** -// TAO and the TAO IDL Compiler have been developed by: -// Center for Distributed Object Computing -// Washington University -// St. Louis, MO -// USA -// http://www.cs.wustl.edu/~schmidt/doc-center.html -// and -// Distributed Object Computing Laboratory -// University of California at Irvine -// Irvine, CA -// USA -// http://doc.ece.uci.edu/ -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - -#include "RTPortableServerC.h" - -#if (TAO_HAS_RT_CORBA == 1) - -#if defined (__BORLANDC__) -#pragma option -w-rvl -w-rch -w-ccc -w-aus -#endif /* __BORLANDC__ */ - -#if !defined (__ACE_INLINE__) -#include "RTPortableServerC.i" -#endif /* !defined INLINE */ - -// ************************************************************* -// Operations for class RTPortableServer::POA_var -// ************************************************************* - -RTPortableServer::POA_var::POA_var (void) // default constructor - : ptr_ (POA::_nil ()) -{} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::ptr (void) const -{ - return this->ptr_; -} - -RTPortableServer::POA_var::POA_var (const ::RTPortableServer::POA_var &p) // copy constructor - : TAO_Base_var (), - ptr_ (POA::_duplicate (p.ptr ())) -{} - -RTPortableServer::POA_var::~POA_var (void) // destructor -{ - CORBA::release (this->ptr_); -} - -RTPortableServer::POA_var & -RTPortableServer::POA_var::operator= (POA_ptr p) -{ - CORBA::release (this->ptr_); - this->ptr_ = p; - return *this; -} - -RTPortableServer::POA_var & -RTPortableServer::POA_var::operator= (const ::RTPortableServer::POA_var &p) -{ - if (this != &p) - { - CORBA::release (this->ptr_); - this->ptr_ = ::RTPortableServer::POA::_duplicate (p.ptr ()); - } - return *this; -} - -RTPortableServer::POA_var::operator const ::RTPortableServer::POA_ptr &() const // cast -{ - return this->ptr_; -} - -RTPortableServer::POA_var::operator ::RTPortableServer::POA_ptr &() // cast -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::operator-> (void) const -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::in (void) const -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr & -RTPortableServer::POA_var::inout (void) -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr & -RTPortableServer::POA_var::out (void) -{ - CORBA::release (this->ptr_); - this->ptr_ = ::RTPortableServer::POA::_nil (); - return this->ptr_; -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::_retn (void) -{ - // yield ownership of managed obj reference - ::RTPortableServer::POA_ptr val = this->ptr_; - this->ptr_ = ::RTPortableServer::POA::_nil (); - return val; -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::duplicate (POA_ptr p) -{ - return ::RTPortableServer::POA::_duplicate (p); -} - -void -RTPortableServer::POA_var::release (POA_ptr p) -{ - CORBA::release (p); -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::nil (void) -{ - return ::RTPortableServer::POA::_nil (); -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_var::narrow ( - CORBA::Object *p, - CORBA::Environment &ACE_TRY_ENV - ) -{ - return ::RTPortableServer::POA::_narrow (p, ACE_TRY_ENV); -} - -CORBA::Object * -RTPortableServer::POA_var::upcast (void *src) -{ - POA **tmp = - ACE_static_cast (POA **, src); - return *tmp; -} - -// ************************************************************* -// Inline operations for class RTPortableServer::POA_out -// ************************************************************* - -RTPortableServer::POA_out::POA_out (POA_ptr &p) - : ptr_ (p) -{ - this->ptr_ = ::RTPortableServer::POA::_nil (); -} - -RTPortableServer::POA_out::POA_out (POA_var &p) // constructor from _var - : ptr_ (p.out ()) -{ - CORBA::release (this->ptr_); - this->ptr_ = ::RTPortableServer::POA::_nil (); -} - -RTPortableServer::POA_out::POA_out (const ::RTPortableServer::POA_out &p) // copy constructor - : ptr_ (ACE_const_cast (POA_out &, p).ptr_) -{} - -::RTPortableServer::POA_out & -RTPortableServer::POA_out::operator= (const ::RTPortableServer::POA_out &p) -{ - this->ptr_ = ACE_const_cast (POA_out&, p).ptr_; - return *this; -} - -RTPortableServer::POA_out & -RTPortableServer::POA_out::operator= (const ::RTPortableServer::POA_var &p) -{ - this->ptr_ = ::RTPortableServer::POA::_duplicate (p.ptr ()); - return *this; -} - -RTPortableServer::POA_out & -RTPortableServer::POA_out::operator= (POA_ptr p) -{ - this->ptr_ = p; - return *this; -} - -RTPortableServer::POA_out::operator ::RTPortableServer::POA_ptr &() // cast -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr & -RTPortableServer::POA_out::ptr (void) // ptr -{ - return this->ptr_; -} - -::RTPortableServer::POA_ptr -RTPortableServer::POA_out::operator-> (void) -{ - return this->ptr_; -} - - -// default constructor -RTPortableServer::POA::POA () -{ - } - -// destructor -RTPortableServer::POA::~POA (void) -{} - -RTPortableServer::POA_ptr RTPortableServer::POA::_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &ACE_TRY_ENV - ) -{ - return POA::_unchecked_narrow (obj, ACE_TRY_ENV); -} - -RTPortableServer::POA_ptr RTPortableServer::POA::_unchecked_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment & - ) -{ - if (CORBA::is_nil (obj)) - return POA::_nil (); - return - ACE_reinterpret_cast - ( - POA_ptr, - obj->_tao_QueryInterface - ( - ACE_reinterpret_cast - ( - ptr_arith_t, - &POA::_narrow - ) - ) - ); -} - -RTPortableServer::POA_ptr -RTPortableServer::POA::_duplicate (POA_ptr obj) -{ - if (!CORBA::is_nil (obj)) - obj->_add_ref (); - return obj; -} - -void *RTPortableServer::POA::_tao_QueryInterface (ptr_arith_t type) -{ - void *retv = 0; - if (type == ACE_reinterpret_cast - (ptr_arith_t, - &ACE_NESTED_CLASS (::RTPortableServer, POA)::_narrow)) - retv = ACE_reinterpret_cast (void*, this); - else if (type == ACE_reinterpret_cast - (ptr_arith_t, - &::PortableServer::POA::_narrow)) - retv = ACE_reinterpret_cast - ( - void *, - ACE_static_cast - ( - PortableServer::POA_ptr, - this - ) - ); - else if (type == ACE_reinterpret_cast (ptr_arith_t, &CORBA::Object::_narrow)) - retv = ACE_reinterpret_cast (void *, - ACE_static_cast (CORBA::Object_ptr, this)); - - if (retv) - this->_add_ref (); - return retv; -} - -const char* RTPortableServer::POA::_interface_repository_id (void) const -{ - return "IDL:omg.org/RTPortableServer/POA:1.0"; -} - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \ - defined (ACE_HAS_GNU_REPO) - template class TAO_Object_Manager<RTPortableServer::POA,RTPortableServer::POA_var>; - #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) - # pragma instantiate TAO_Object_Manager<RTPortableServer::POA,RTPortableServer::POA_var> -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - -#endif /* TAO_HAS_RT_CORBA == 1 */ diff --git a/TAO/tao/PortableServer/RTPortableServerC.h b/TAO/tao/PortableServer/RTPortableServerC.h deleted file mode 100644 index 1a87e2ed792..00000000000 --- a/TAO/tao/PortableServer/RTPortableServerC.h +++ /dev/null @@ -1,257 +0,0 @@ -// -*- C++ -*- -// -// $Id$ - -// **** Code generated by the The ACE ORB (TAO) IDL Compiler **** -// TAO and the TAO IDL Compiler have been developed by: -// Center for Distributed Object Computing -// Washington University -// St. Louis, MO -// USA -// http://www.cs.wustl.edu/~schmidt/doc-center.html -// and -// Distributed Object Computing Laboratory -// University of California at Irvine -// Irvine, CA -// USA -// http://doc.ece.uci.edu/ -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - -#ifndef _TAO_IDL_ORIG_RTPORTABLESERVERC_H_ -#define _TAO_IDL_ORIG_RTPORTABLESERVERC_H_ - -#include "ace/pre.h" -#include "PortableServerC.h" - -#if (TAO_HAS_RT_CORBA == 1) - -#if !defined (ACE_LACKS_PRAGMA_ONCE) -# pragma once -#endif /* ACE_LACKS_PRAGMA_ONCE */ - -#include "tao/RTCORBAC.h" - -#if defined (TAO_EXPORT_MACRO) -#undef TAO_EXPORT_MACRO -#endif -#define TAO_EXPORT_MACRO TAO_PortableServer_Export - -#if defined (TAO_EXPORT_NESTED_CLASSES) -# if defined (TAO_EXPORT_NESTED_MACRO) -# undef TAO_EXPORT_NESTED_MACRO -# endif /* defined (TAO_EXPORT_NESTED_MACRO) */ -# define TAO_EXPORT_NESTED_MACRO TAO_PortableServer_Export -#endif /* TAO_EXPORT_NESTED_CLASSES */ - -#if defined(_MSC_VER) -#if (_MSC_VER >= 1200) -#pragma warning(push) -#endif /* _MSC_VER >= 1200 */ -#pragma warning(disable:4250) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option push -w-rvl -w-rch -w-ccc -w-inl -#endif /* __BORLANDC__ */ - -TAO_NAMESPACE RTPortableServer -{ - -#if !defined (_RTPORTABLESERVER_POA___PTR_CH_) -#define _RTPORTABLESERVER_POA___PTR_CH_ - - class POA; - typedef POA *POA_ptr; - -#endif /* end #if !defined */ - - -#if !defined (_RTPORTABLESERVER_POA___VAR_CH_) -#define _RTPORTABLESERVER_POA___VAR_CH_ - - class TAO_PortableServer_Export POA_var : public TAO_Base_var - { - public: - POA_var (void); // default constructor - POA_var (POA_ptr p) : ptr_ (p) {} - POA_var (const POA_var &); // copy constructor - ~POA_var (void); // destructor - - POA_var &operator= (POA_ptr); - POA_var &operator= (const POA_var &); - POA_ptr operator-> (void) const; - - operator const POA_ptr &() const; - operator POA_ptr &(); - // in, inout, out, _retn - POA_ptr in (void) const; - POA_ptr &inout (void); - POA_ptr &out (void); - POA_ptr _retn (void); - POA_ptr ptr (void) const; - - // Hooks used by template sequence and object manager classes - // for non-defined forward declared interfaces. - static POA_ptr duplicate (POA_ptr); - static void release (POA_ptr); - static POA_ptr nil (void); - static POA_ptr narrow (CORBA::Object *, CORBA::Environment &); - static CORBA::Object * upcast (void *); - - private: - POA_ptr ptr_; - // Unimplemented - prevents widening assignment. - POA_var (const TAO_Base_var &rhs); - POA_var &operator= (const TAO_Base_var &rhs); - }; - - -#endif /* end #if !defined */ - - -#if !defined (_RTPORTABLESERVER_POA___OUT_CH_) -#define _RTPORTABLESERVER_POA___OUT_CH_ - - class TAO_PortableServer_Export POA_out - { - public: - POA_out (POA_ptr &); - POA_out (POA_var &); - POA_out (const POA_out &); - POA_out &operator= (const POA_out &); - POA_out &operator= (const POA_var &); - POA_out &operator= (POA_ptr); - operator POA_ptr &(); - POA_ptr &ptr (void); - POA_ptr operator-> (void); - - private: - POA_ptr &ptr_; - }; - - -#endif /* end #if !defined */ - - -#if !defined (_RTPORTABLESERVER_POA_CH_) -#define _RTPORTABLESERVER_POA_CH_ - -class TAO_PortableServer_Export POA: public virtual PortableServer::POA - { - public: - #if !defined(__GNUC__) || !defined (ACE_HAS_GNUG_PRE_2_8) - typedef POA_ptr _ptr_type; - typedef POA_var _var_type; - #endif /* ! __GNUC__ || g++ >= 2.8 */ - - // the static operations - static POA_ptr _duplicate (POA_ptr obj); - static POA_ptr _narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - static POA_ptr _unchecked_narrow ( - CORBA::Object_ptr obj, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ); - static POA_ptr _nil (void) - { - return (POA_ptr)0; - } - - virtual CORBA::Object_ptr create_reference_with_priority ( - const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException, - PortableServer::POA::WrongPolicy - )) = 0; - - virtual CORBA::Object_ptr create_reference_with_id_and_priority ( - const PortableServer::ObjectId & oid, - const char * intf, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException, - PortableServer::POA::WrongPolicy - )) = 0; - - virtual PortableServer::ObjectId * activate_object_with_priority ( - PortableServer::Servant p_servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::WrongPolicy - )) = 0; - - virtual void activate_object_with_id_and_priority ( - const PortableServer::ObjectId & oid, - PortableServer::Servant p_servant, - RTCORBA::Priority priority, - CORBA::Environment &ACE_TRY_ENV = - TAO_default_environment () - ) - ACE_THROW_SPEC (( - CORBA::SystemException, - PortableServer::POA::ServantAlreadyActive, - PortableServer::POA::ObjectAlreadyActive, - PortableServer::POA::WrongPolicy - )) = 0; - - virtual void *_tao_QueryInterface (ptr_arith_t type); - - virtual const char* _interface_repository_id (void) const; - - protected: - POA (); - - virtual ~POA (void); - private: - POA (const POA &); - void operator= (const POA &); - }; - - -#endif /* end #if !defined */ - - -} -TAO_NAMESPACE_CLOSE // module RTPortableServer - - -#ifndef __ACE_INLINE__ - - -#endif /* __ACE_INLINE__ */ - - -#if defined (__ACE_INLINE__) -#include "RTPortableServerC.i" -#endif /* defined INLINE */ - -#if defined(_MSC_VER) && (_MSC_VER >= 1200) -#pragma warning(pop) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option pop -#endif /* __BORLANDC__ */ - -#endif /* TAO_HAS_RT_CORBA */ - -#include "ace/post.h" -#endif /* ifndef */ diff --git a/TAO/tao/PortableServer/RTPortableServerC.i b/TAO/tao/PortableServer/RTPortableServerC.i deleted file mode 100644 index 675f6f14a80..00000000000 --- a/TAO/tao/PortableServer/RTPortableServerC.i +++ /dev/null @@ -1,71 +0,0 @@ -// -*- C++ -*- -// -// $Id$ - -// **** Code generated by the The ACE ORB (TAO) IDL Compiler **** -// TAO and the TAO IDL Compiler have been developed by: -// Center for Distributed Object Computing -// Washington University -// St. Louis, MO -// USA -// http://www.cs.wustl.edu/~schmidt/doc-center.html -// and -// Distributed Object Computing Laboratory -// University of California at Irvine -// Irvine, CA -// USA -// http://doc.ece.uci.edu/ -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - - -#if !defined (_RTPORTABLESERVER_POA___CI_) -#define _RTPORTABLESERVER_POA___CI_ - -ACE_INLINE RTPortableServer::POA_ptr -tao_RTPortableServer_POA_duplicate ( - RTPortableServer::POA_ptr p - ) -{ - return RTPortableServer::POA::_duplicate (p); -} - -ACE_INLINE void -tao_RTPortableServer_POA_release ( - RTPortableServer::POA_ptr p - ) -{ - CORBA::release (p); -} - -ACE_INLINE RTPortableServer::POA_ptr -tao_RTPortableServer_POA_nil ( - void - ) -{ - return RTPortableServer::POA::_nil (); -} - -ACE_INLINE RTPortableServer::POA_ptr -tao_RTPortableServer_POA_narrow ( - CORBA::Object *p, - CORBA::Environment &ACE_TRY_ENV - ) -{ - return RTPortableServer::POA::_narrow (p, ACE_TRY_ENV); -} - -ACE_INLINE CORBA::Object * -tao_RTPortableServer_POA_upcast ( - void *src - ) -{ - RTPortableServer::POA **tmp = - ACE_static_cast (RTPortableServer::POA **, src); - return *tmp; -} - - -#endif /* end #if !defined */ - diff --git a/TAO/tao/PortableServer/RT_Acceptor_Filters.cpp b/TAO/tao/PortableServer/RT_Acceptor_Filters.cpp deleted file mode 100644 index 1d0ebcfd6db..00000000000 --- a/TAO/tao/PortableServer/RT_Acceptor_Filters.cpp +++ /dev/null @@ -1,102 +0,0 @@ -// @(#) $Id$ - -#include "RT_Acceptor_Filters.h" -#include "tao/Pluggable.h" -#include "tao/MProfile.h" - -#if ! defined (__ACE_INLINE__) -#include "RT_Acceptor_Filters.i" -#endif /* __ACE_INLINE__ */ - -ACE_RCSID(tao, RT_Acceptor_Filter, "$Id$") - -#if (TAO_HAS_RT_CORBA == 1) - -TAO_Server_Protocol_Acceptor_Filter:: -TAO_Server_Protocol_Acceptor_Filter (RTCORBA::ProtocolList &protocols) - : protocols_ (protocols) -{ -} - -int -TAO_Server_Protocol_Acceptor_Filter:: -fill_mprofile (const TAO_ObjectKey &object_key, - TAO_MProfile &mprofile, - TAO_Acceptor **acceptors_begin, - TAO_Acceptor **acceptors_end) -{ - // RTCORBA 1.0, Section 4.15.1: ServerProtocolPolicy determines - // which protocols get included into IOR and in what order. - for (CORBA::ULong j = 0; j < protocols_.length (); ++j) - { - CORBA::ULong protocol_type = protocols_[j].protocol_type; - - for (TAO_Acceptor** acceptor = acceptors_begin; - acceptor != acceptors_end; - ++acceptor) - if ((*acceptor)->tag () == protocol_type - && this->validate_acceptor (*acceptor) - && (*acceptor)->create_mprofile (object_key, - mprofile, - 1 /* >=1 endpoints per profile */) - == -1) - return -1; - } - - // Encode endpoints. - for (CORBA::ULong i = 0; - i < mprofile.profile_count (); - ++i) - { - TAO_Profile *profile = mprofile.get_profile (i); - if (profile->encode_endpoints () == -1) - return -1; - } - - return 0; -} - -int -TAO_Server_Protocol_Acceptor_Filter:: -validate_acceptor (TAO_Acceptor * /*acceptor*/) -{ - return 1; -} - -TAO_Priority_Acceptor_Filter:: -TAO_Priority_Acceptor_Filter (RTCORBA::ProtocolList &protocols, - CORBA::Short priority) - : TAO_Server_Protocol_Acceptor_Filter (protocols), - priority_ (priority) -{ -} - -int -TAO_Priority_Acceptor_Filter::validate_acceptor (TAO_Acceptor *acceptor) -{ - return (this->priority_ == acceptor->priority ()); -} - -TAO_Bands_Acceptor_Filter:: -TAO_Bands_Acceptor_Filter (RTCORBA::ProtocolList &protocols, - RTCORBA::PriorityBands &bands) - : TAO_Server_Protocol_Acceptor_Filter (protocols), - priority_bands_ (bands) -{ -} - -int -TAO_Bands_Acceptor_Filter::validate_acceptor (TAO_Acceptor *acceptor) -{ - for (CORBA::ULong i = 0; - i < this->priority_bands_.length (); - ++i) - { - if (priority_bands_[i].low <= acceptor->priority () - && priority_bands_[i].high >= acceptor->priority ()) - return 1; - } - return 0; -} - -#endif /* TAO_HAS_RT_CORBA == 1 */ diff --git a/TAO/tao/PortableServer/RT_Acceptor_Filters.h b/TAO/tao/PortableServer/RT_Acceptor_Filters.h deleted file mode 100644 index 5d66816e44f..00000000000 --- a/TAO/tao/PortableServer/RT_Acceptor_Filters.h +++ /dev/null @@ -1,142 +0,0 @@ -// -*- C++ -*- -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// PortableServer -// -// = FILENAME -// RT_Acceptor_Filters.h -// -// = DESCRIPTION -// RTCORBA strategies for populating mprofile. -// -// = AUTHOR -// Marina Spivak <marina@cs.wustl.edu> -// -// ============================================================================ - -#ifndef TAO_RT_ACCEPTOR_FILTER_H -#define TAO_RT_ACCEPTOR_FILTER_H -#include "ace/pre.h" - -#include "tao/orbconf.h" - -#if !defined (ACE_LACKS_PRAGMA_ONCE) -# pragma once -#endif /* ACE_LACKS_PRAGMA_ONCE */ - -#if (TAO_HAS_RT_CORBA == 1) - -#include "portableserver_export.h" -#include "tao/Acceptor_Filter.h" -#include "tao/RTCORBAC.h" - -// This is to remove "inherits via dominance" warnings from MSVC. -// MSVC is being a little too paranoid. -#if defined(_MSC_VER) -#if (_MSC_VER >= 1200) -#pragma warning(push) -#endif /* _MSC_VER >= 1200 */ -#pragma warning(disable:4250) -#endif /* _MSC_VER */ - -class TAO_Acceptor; - -class TAO_PortableServer_Export TAO_Server_Protocol_Acceptor_Filter : - public TAO_Acceptor_Filter -{ - // = TITLE - // RTCORBA::ServerProtocolPolicy Acceptor_Filter. - // - // = DESCRIPTION - // Populates mprofile with endpoints selected based on the - // RTCORBA::ServerProtocolPolicy. - // -public: - TAO_Server_Protocol_Acceptor_Filter (RTCORBA::ProtocolList &protocols); - - virtual int fill_mprofile (const TAO_ObjectKey &object_key, - TAO_MProfile &mprofile, - TAO_Acceptor **acceptors_begin, - TAO_Acceptor **acceptors_end); - // Populate <mprofile> based on what's in <protocols_>. - - virtual int validate_acceptor (TAO_Acceptor *acceptor); - // Template method pattern. This method is used by <fill_mprofile> - // to decide whether <acceptor> endpoint should be added to - // mprofile or not. Returns true or false. - // This implementation always returns true. Subclasses can override - // to specify additional conditions that must be met by an - // <acceptor> for inclusion into mprofile. - -private: - RTCORBA::ProtocolList &protocols_; - // Value of the ServerProtocolPolicy used for endpoint - // selection. -}; - -class TAO_PortableServer_Export TAO_Priority_Acceptor_Filter : - public TAO_Server_Protocol_Acceptor_Filter -{ - // = TITLE - // RTCORBA::ServerProtocolPolicy & RTCORBA::SERVER_DECLARED - // priority model Acceptor_Filter. - // - // = DESCRIPTION - // Populates mprofile with endpoints that match - // RTCORBA::SERVER_DECLARED priority and - // RTCORBA::ServerProtocolPolicy of the POA. - // -public: - TAO_Priority_Acceptor_Filter (RTCORBA::ProtocolList &protocols, - CORBA::Short priority); - // Constructor. - - virtual int validate_acceptor (TAO_Acceptor *acceptor); - // Returns true if <acceptor>'s priority equals to <priority_>. - -private: - CORBA::Short priority_; - // SERVER_DECLARED priority of the object. -}; - -class TAO_PortableServer_Export TAO_Bands_Acceptor_Filter : - public TAO_Server_Protocol_Acceptor_Filter -{ - // = TITLE - // RTCORBA::PriorityBandedConnectionPolicy & - // RTCORBA::ServerProtocolPolicy Acceptor_Filter. - // - // = DESCRIPTION - // Populates mprofile with endpoints that match - // RTCORBA::PriorityBandedConnectionPolicy and - // RTCORBA::ServerProtocolPolicy of the POA. - // -public: - TAO_Bands_Acceptor_Filter (RTCORBA::ProtocolList &protocols, - RTCORBA::PriorityBands &bands); - // Constructor. - - virtual int validate_acceptor (TAO_Acceptor *acceptor); - // Returns true if <acceptor>'s priority falls into the range of any - // of the <priority_bands_>. - -private: - RTCORBA::PriorityBands &priority_bands_; - // The value of POA's PriorityBandedConnectionPolicy. -}; - -#if defined (__ACE_INLINE__) -#include "RT_Acceptor_Filters.i" -#endif /* __ACE_INLINE__ */ - -#if defined(_MSC_VER) && (_MSC_VER >= 1200) -#pragma warning(pop) -#endif /* _MSC_VER */ - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -#include "ace/post.h" -#endif /* TAO_RT_ACCEPTOR_FILTER_H */ diff --git a/TAO/tao/PortableServer/RT_Acceptor_Filters.i b/TAO/tao/PortableServer/RT_Acceptor_Filters.i deleted file mode 100644 index 85619bde13f..00000000000 --- a/TAO/tao/PortableServer/RT_Acceptor_Filters.i +++ /dev/null @@ -1,6 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -#if (TAO_HAS_RT_CORBA == 1) - -#endif /* TAO_HAS_RT_CORBA == 1 */ diff --git a/TAO/tao/PortableServer/RT_Servant_Dispatcher.cpp b/TAO/tao/PortableServer/RT_Servant_Dispatcher.cpp deleted file mode 100644 index d27bee4ef79..00000000000 --- a/TAO/tao/PortableServer/RT_Servant_Dispatcher.cpp +++ /dev/null @@ -1,207 +0,0 @@ -// $Id$ - -#include "RT_Servant_Dispatcher.h" -#include "POA.h" -#include "tao/ORB_Core.h" -#include "tao/TAO_Server_Request.h" -#include "tao/debug.h" - -ACE_RCSID (tao, - Default_Acceptor_Filter, - "$Id$") - -#if (TAO_HAS_RT_CORBA == 1) - -RT_Priority_Model_Processing::RT_Priority_Model_Processing (TAO_POA &poa) - : state_ (NO_ACTION_REQUIRED), - poa_ (poa), - original_priority_ (0) -{ -} - -RT_Priority_Model_Processing::~RT_Priority_Model_Processing (void) -{ - ACE_DECLARE_NEW_CORBA_ENV; - ACE_TRY - { - if (this->state_ == PRIORITY_RESET_REQUIRED) - { - this->state_ = NO_ACTION_REQUIRED; - - // Reset the priority of the current thread back to its original - // value. - int result = - poa_.orb_core ().get_protocols_hooks ()-> - set_thread_priority (&poa_.orb_core (), - this->original_priority_, - ACE_TRY_ENV); - ACE_TRY_CHECK; - - if (result == -1) - ACE_DEBUG ((LM_ERROR, - ACE_TEXT ("TAO (%P|%t) - Priority_Model_Processing:: ") - ACE_TEXT (" Priority_Model_Processing\n"))); - } - } - ACE_CATCHANY - { - ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, - "~RT_Priority_Model_Processing:"); - } - ACE_ENDTRY; -} - -void -RT_Priority_Model_Processing::pre_invoke ( - TAO_Service_Context &request_service_context, - TAO_Service_Context &reply_service_context, - CORBA::Environment &ACE_TRY_ENV) -{ - TAO_POA_Policies &poa_policies = this->poa_.policies (); - - // CLIENT_PROPAGATED PriorityModel processing. - if (poa_policies.priority_model () - == TAO_POA_Policies::CLIENT_PROPAGATED - && poa_policies.server_priority () - != TAO_INVALID_PRIORITY) - { - // Remember current thread's priority. - int result = - poa_.orb_core ().get_protocols_hooks ()-> - get_thread_priority (&poa_.orb_core (), - this->original_priority_, - ACE_TRY_ENV); - ACE_CHECK; - - if (result == -1) - ACE_THROW (CORBA::DATA_CONVERSION (TAO_OMG_VMCID | 1, // @@ Correct? - CORBA::COMPLETED_NO)); - - // Attempt to extract client-propagated priority from the - // ServiceContextList of the request. - RTCORBA::Priority target_priority; - const IOP::ServiceContext *context; - - if (request_service_context.get_context (IOP::RTCorbaPriority, - &context) == 1) - { - // Extract the target priority - TAO_InputCDR cdr (ACE_reinterpret_cast - (const char*, - context->context_data.get_buffer ()), - context->context_data.length ()); - CORBA::Boolean byte_order; - if ((cdr >> ACE_InputCDR::to_boolean (byte_order)) == 0) - ACE_THROW (CORBA::MARSHAL ()); - cdr.reset_byte_order (ACE_static_cast (int, byte_order)); - - if ((cdr >> target_priority) == 0) - ACE_THROW (CORBA::MARSHAL ()); - - // Save the target priority in the response service - // context to propagate back to the client as specified - // by the RTCORBA specification. - reply_service_context.set_context (*context); - } - else - { - // Use default priority if none came in the request. (Request - // must have come from a non-RT ORB.) - target_priority = poa_policies.server_priority (); - } - - // Change the priority of the current thread to the - // client-propagated value for the duration of - // request. - if (original_priority_ != target_priority) - { - if (TAO_debug_level > 0) - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("RTCORBA::CLIENT_PROPAGATED processing") - ACE_TEXT (" (%P|%t): original thread priority %d") - ACE_TEXT (" temporarily changed to %d\n"), - original_priority_, target_priority)); - - result = - poa_.orb_core ().get_protocols_hooks ()-> - set_thread_priority (&poa_.orb_core (), - target_priority, - ACE_TRY_ENV); - ACE_CHECK; - - if (result == -1) - ACE_THROW (CORBA::DATA_CONVERSION (TAO_OMG_VMCID | 1, //@@ Correct? - CORBA::COMPLETED_NO)); - - this->state_ = PRIORITY_RESET_REQUIRED; - } - else if (TAO_debug_level > 0) - ACE_DEBUG ((LM_DEBUG, - ACE_TEXT ("RTCORBA::CLIENT_PROPAGATED processing") - ACE_TEXT (" (%P|%t): original thread priority =") - ACE_TEXT (" requested priority = %d\n"), - target_priority)); - } -} - -void -RT_Priority_Model_Processing::post_invoke ( - CORBA::Environment &ACE_TRY_ENV) -{ - if (this->state_ == PRIORITY_RESET_REQUIRED) - { - this->state_ = NO_ACTION_REQUIRED; - - // Reset the priority of the current thread back to its original - // value. - int result = - poa_.orb_core ().get_protocols_hooks ()-> - set_thread_priority (&poa_.orb_core (), - this->original_priority_, - ACE_TRY_ENV); - ACE_CHECK; - - if (result == -1) - ACE_THROW (CORBA::DATA_CONVERSION (TAO_OMG_VMCID | 1, //@@ Correct? - CORBA::COMPLETED_NO)); - } -} - -///////////////////////////////////////////////////////////////////////// - -TAO_RT_Servant_Dispatcher::~TAO_RT_Servant_Dispatcher (void) -{ -} - -void -TAO_RT_Servant_Dispatcher::dispatch (TAO_Object_Adapter::Servant_Upcall &servant_upcall, - TAO_ServerRequest &req, - CORBA::Environment &ACE_TRY_ENV) -{ - // RTCORBA PriorityModelPolicy processing (may need to be - // moved/adjusted when POA threadpools are added). - // This is the earliest place we can do the processing, since only - // at this point we know the target POA. - - RT_Priority_Model_Processing priority_processing (servant_upcall.poa ()); - - // Set thread's priority. - priority_processing.pre_invoke (req.request_service_context (), - req.reply_service_context (), - ACE_TRY_ENV); - ACE_CHECK; - - // Servant dispatch. - servant_upcall.servant ()->_dispatch (req, - &servant_upcall, - ACE_TRY_ENV); - ACE_CHECK; - - // Reset thread's priority to its original value. If this method - // isn't reached, i.e., because of an exception, the reset takes - // place in Priority_Model_Processing destructor. - priority_processing.post_invoke (ACE_TRY_ENV); - ACE_CHECK; -} - -#endif /* TAO_HAS_RT_CORBA == 1 */ diff --git a/TAO/tao/PortableServer/RT_Servant_Dispatcher.h b/TAO/tao/PortableServer/RT_Servant_Dispatcher.h deleted file mode 100644 index 14e4d543faf..00000000000 --- a/TAO/tao/PortableServer/RT_Servant_Dispatcher.h +++ /dev/null @@ -1,111 +0,0 @@ -/* -*- C++ -*- */ - -//============================================================================= -/** - * @file RT_Servant_Dispatcher.h - * - * $Id$ - * - * @author Frank Hunleth (fhunleth@cs.wustl.edu) - */ -//============================================================================= - - -#ifndef TAO_RT_SERVANT_DISPATCHER_H -#define TAO_RT_SERVANT_DISPATCHER_H -#include "ace/pre.h" - -#include "portableserver_export.h" -#include "Servant_Dispatcher.h" - -#if !defined (ACE_LACKS_PRAGMA_ONCE) -# pragma once -#endif /* ACE_LACKS_PRAGMA_ONCE */ - -#if (TAO_HAS_RT_CORBA == 1) - -/** - * @class TAO_RT_Servant_Dispatcher - * - * @brief Concrete instantiation of the Servant_Dispatcher strategy. - * - * - */ -class TAO_PortableServer_Export TAO_RT_Servant_Dispatcher - : public TAO_Servant_Dispatcher -{ -public: - virtual ~TAO_RT_Servant_Dispatcher (void); - - /// Dispatch the request to the servant. - virtual void dispatch (TAO_Object_Adapter::Servant_Upcall &servant_upcall, - TAO_ServerRequest &req, - CORBA::Environment &ACE_TRY_ENV); -}; - -/** - * @class RT_Priority_Model_Processing - * - * @brief - * - * This class encapsulates processing necessary for - * RTCORBA CLIENT_PROPAGATED priority model. - * - * Although the destructor of this class resets the priority of - * the thread to it's original value, application should use - * <post_invoke> method for that purpose: destructor cannot - * propagate possible exceptions to the callee. Destructor's - * reset capability is intended as a last resort, i.e., if - * <post_invoke> isn't reached for some reason. - */ -class TAO_PortableServer_Export RT_Priority_Model_Processing -{ -public: - - // Constructor. - RT_Priority_Model_Processing (TAO_POA &poa); - - // Resets the priority of the current thread back to its original - // value if necessary, i.e., if it was changed and the - // <post_invoke> method hasn't been called. Unlike <post_invoke>, - // this method cannot propagate exceptions to the user. - ~RT_Priority_Model_Processing (void); - - // Checks if target POA supports RTCORBA::CLIENT_PROPAGATED - // PriorityModel. If so, stores the original priority of the - // current thread, and sets the thread to the client-propagated - // priority. - void pre_invoke (TAO_Service_Context &request_service_context, - TAO_Service_Context &reply_service_context, - CORBA::Environment &ACE_TRY_ENV); - - // Resets the priority of the current thread back to its original - // value, if necessary. - void post_invoke (CORBA::Environment &ACE_TRY_ENV); - -private: - - RT_Priority_Model_Processing (const RT_Priority_Model_Processing &); - void operator= (const RT_Priority_Model_Processing &); - - enum State - { - NO_ACTION_REQUIRED, - PRIORITY_RESET_REQUIRED - }; - - // Indicates whether the priority of the thread needs to be reset - // back to its original value. - State state_; - - // Poa of the target servant. - TAO_POA &poa_; - - // Original priority of the thread. - RTCORBA::Priority original_priority_; -}; - -#endif /* TAO_HAS_RT_CORBA == 1 */ - -#include "ace/post.h" -#endif /* TAO_RT_SERVANT_DISPATCHER_H */ diff --git a/TAO/tao/PortableServer/Servant_Dispatcher.h b/TAO/tao/PortableServer/Servant_Dispatcher.h index 550a16ce0be..42dc8cd6a03 100644 --- a/TAO/tao/PortableServer/Servant_Dispatcher.h +++ b/TAO/tao/PortableServer/Servant_Dispatcher.h @@ -22,6 +22,14 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +// Forward references. +class ACE_CString; +class TAO_POA_Manager; +class TAO_POA_Policy_Set; +class TAO_POA; +class ACE_Lock; +class TAO_ORB_Core; + /** * @class TAO_Servant_Dispatcher * @@ -37,6 +45,18 @@ public: virtual void dispatch (TAO_Object_Adapter::Servant_Upcall &servant_upcall, TAO_ServerRequest &req, CORBA::Environment &ACE_TRY_ENV) = 0; + + /// Factory method for creating new POA's. + virtual TAO_POA *create_POA (const ACE_CString &name, + TAO_POA_Manager &poa_manager, + const TAO_POA_Policy_Set &policies, + TAO_POA *parent, + ACE_Lock &lock, + TAO_SYNCH_MUTEX &thread_lock, + TAO_ORB_Core &orb_core, + TAO_Object_Adapter *object_adapter, + CORBA_Environment &ACE_TRY_ENV) = 0; + }; #include "ace/post.h" diff --git a/TAO/tao/PortableServer/TAO_PortableServer.dsp b/TAO/tao/PortableServer/TAO_PortableServer.dsp index 902c2aae567..0c765956600 100644 --- a/TAO/tao/PortableServer/TAO_PortableServer.dsp +++ b/TAO/tao/PortableServer/TAO_PortableServer.dsp @@ -168,6 +168,10 @@ SOURCE=.\Default_Acceptor_Filter.cpp # End Source File
# Begin Source File
+SOURCE=.\Default_Policy_Validator.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\Default_Servant_Dispatcher.cpp
# End Source File
# Begin Source File
@@ -212,31 +216,35 @@ SOURCE=.\POA.cpp # End Source File
# Begin Source File
-SOURCE=.\POAManager.cpp
+SOURCE=.\POA_Cached_Policies.cpp
# End Source File
# Begin Source File
-SOURCE=.\PolicyS.cpp
+SOURCE=.\POA_Policies.cpp
# End Source File
# Begin Source File
-SOURCE=.\PortableServer.cpp
+SOURCE=.\POA_Policy_Set.cpp
# End Source File
# Begin Source File
-SOURCE=.\PortableServerC.cpp
+SOURCE=.\POAManager.cpp
# End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.cpp
+SOURCE=.\Policy_Validator.cpp
# End Source File
# Begin Source File
-SOURCE=.\RT_Servant_Dispatcher.cpp
+SOURCE=.\PolicyS.cpp
# End Source File
# Begin Source File
-SOURCE=.\RTPortableServerC.cpp
+SOURCE=.\PortableServer.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\PortableServerC.cpp
# End Source File
# Begin Source File
@@ -280,6 +288,10 @@ SOURCE=.\Default_Acceptor_Filter.h # End Source File
# Begin Source File
+SOURCE=.\Default_Policy_Validator.h
+# End Source File
+# Begin Source File
+
SOURCE=.\Default_Servant_Dispatcher.h
# End Source File
# Begin Source File
@@ -332,39 +344,43 @@ SOURCE=.\POA.h # End Source File
# Begin Source File
+SOURCE=.\POA_Cached_Policies.h
+# End Source File
+# Begin Source File
+
SOURCE=.\poa_macros.h
# End Source File
# Begin Source File
-SOURCE=.\POAManager.h
+SOURCE=.\POA_Policies.h
# End Source File
# Begin Source File
-SOURCE=.\PolicyS.h
+SOURCE=.\POA_Policy_Set.h
# End Source File
# Begin Source File
-SOURCE=.\PortableServer.h
+SOURCE=.\POAManager.h
# End Source File
# Begin Source File
-SOURCE=.\portableserver_export.h
+SOURCE=.\Policy_Validator.h
# End Source File
# Begin Source File
-SOURCE=.\PortableServerC.h
+SOURCE=.\PolicyS.h
# End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.h
+SOURCE=.\PortableServer.h
# End Source File
# Begin Source File
-SOURCE=.\RT_Servant_Dispatcher.h
+SOURCE=.\portableserver_export.h
# End Source File
# Begin Source File
-SOURCE=.\RTPortableServerC.h
+SOURCE=.\PortableServerC.h
# End Source File
# Begin Source File
@@ -436,19 +452,23 @@ SOURCE=.\POA.i # End Source File
# Begin Source File
-SOURCE=.\POAManager.i
+SOURCE=.\POA_Cached_Policies.i
# End Source File
# Begin Source File
-SOURCE=.\PortableServerC.i
+SOURCE=.\POA_Policies.i
# End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.i
+SOURCE=.\POA_Policy_Set.i
# End Source File
# Begin Source File
-SOURCE=.\RTPortableServerC.i
+SOURCE=.\POAManager.i
+# End Source File
+# Begin Source File
+
+SOURCE=.\PortableServerC.i
# End Source File
# Begin Source File
diff --git a/TAO/tao/PortableServer/TAO_PortableServer_Static.dsp b/TAO/tao/PortableServer/TAO_PortableServer_Static.dsp index 93fc3709c9b..16c2b37acd9 100644 --- a/TAO/tao/PortableServer/TAO_PortableServer_Static.dsp +++ b/TAO/tao/PortableServer/TAO_PortableServer_Static.dsp @@ -153,14 +153,6 @@ SOURCE=.\PortableServerC.i # End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.i
-# End Source File
-# Begin Source File
-
-SOURCE=.\RTPortableServerC.i
-# End Source File
-# Begin Source File
-
SOURCE=.\Servant_Base.i
# End Source File
# Begin Source File
@@ -189,6 +181,10 @@ SOURCE=.\Default_Acceptor_Filter.h # End Source File
# Begin Source File
+SOURCE=.\Default_Policy_Validator.h
+# End Source File
+# Begin Source File
+
SOURCE=.\Default_Servant_Dispatcher.h
# End Source File
# Begin Source File
@@ -241,6 +237,10 @@ SOURCE=.\POA.h # End Source File
# Begin Source File
+SOURCE=.\POA_Cached_Policies.h
+# End Source File
+# Begin Source File
+
SOURCE=.\POA_CORBA.h
# End Source File
# Begin Source File
@@ -249,31 +249,31 @@ SOURCE=.\poa_macros.h # End Source File
# Begin Source File
-SOURCE=.\POAManager.h
+SOURCE=.\POA_Policies.h
# End Source File
# Begin Source File
-SOURCE=.\PortableServer.h
+SOURCE=.\POA_Policy_Set.h
# End Source File
# Begin Source File
-SOURCE=.\portableserver_export.h
+SOURCE=.\POAManager.h
# End Source File
# Begin Source File
-SOURCE=.\PortableServerC.h
+SOURCE=.\Policy_Validator.h
# End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.h
+SOURCE=.\PortableServer.h
# End Source File
# Begin Source File
-SOURCE=.\RT_Servant_Dispatcher.h
+SOURCE=.\portableserver_export.h
# End Source File
# Begin Source File
-SOURCE=.\RTPortableServerC.h
+SOURCE=.\PortableServerC.h
# End Source File
# Begin Source File
@@ -317,6 +317,10 @@ SOURCE=.\Default_Acceptor_Filter.cpp # End Source File
# Begin Source File
+SOURCE=.\Default_Policy_Validator.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\Default_Servant_Dispatcher.cpp
# End Source File
# Begin Source File
@@ -361,31 +365,35 @@ SOURCE=.\POA.cpp # End Source File
# Begin Source File
-SOURCE=.\POAManager.cpp
+SOURCE=.\POA_Cached_Policies.cpp
# End Source File
# Begin Source File
-SOURCE=.\PolicyS.cpp
+SOURCE=.\POA_Policies.cpp
# End Source File
# Begin Source File
-SOURCE=.\PortableServer.cpp
+SOURCE=.\POA_Policy_Set.cpp
# End Source File
# Begin Source File
-SOURCE=.\PortableServerC.cpp
+SOURCE=.\POAManager.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\Policy_Validator.cpp
# End Source File
# Begin Source File
-SOURCE=.\RT_Acceptor_Filters.cpp
+SOURCE=.\PolicyS.cpp
# End Source File
# Begin Source File
-SOURCE=.\RT_Servant_Dispatcher.cpp
+SOURCE=.\PortableServer.cpp
# End Source File
# Begin Source File
-SOURCE=.\RTPortableServerC.cpp
+SOURCE=.\PortableServerC.cpp
# End Source File
# Begin Source File
|