diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2001-06-21 07:43:08 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2001-06-21 07:43:08 +0000 |
commit | 69952784e4d608580545d72ade656ed400f9134a (patch) | |
tree | 3ab64e5e8347327f8254d94a302cfd3dba5b56af | |
parent | 4f64a248c2dbbdb2a0d09295e88b221de0a6a8ec (diff) | |
download | ATCD-69952784e4d608580545d72ade656ed400f9134a.tar.gz |
*** empty log message ***
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Makefile.LoadBalancing | 233 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/LoadBalancing/HasherFactory.cpp | 1 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/LoadBalancing/HasherFactory.h | 1 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/LoadBalancing/server.cpp | 33 |
4 files changed, 263 insertions, 5 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Makefile.LoadBalancing b/TAO/orbsvcs/orbsvcs/Makefile.LoadBalancing index 6c547005eeb..2e5a01d3eab 100644 --- a/TAO/orbsvcs/orbsvcs/Makefile.LoadBalancing +++ b/TAO/orbsvcs/orbsvcs/Makefile.LoadBalancing @@ -2263,6 +2263,239 @@ realclean: clean $(TAO_ROOT)/tao/PortableServer/Key_Adapters.i \ LoadBalancing/LB_ReplicaInfo.h LoadBalancing/LB_ObjectGroup_Map.inl +.obj/LB_Pull_Handler.o .obj/LB_Pull_Handler.so .shobj/LB_Pull_Handler.o .shobj/LB_Pull_Handler.so: LoadBalancing/LB_Pull_Handler.cpp \ + LoadBalancing/LB_Pull_Handler.h \ + $(ACE_ROOT)/ace/pre.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 \ + LoadBalancingC.h \ + $(TAO_ROOT)/tao/corba.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/Typecode.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.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/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(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/Any.i \ + $(TAO_ROOT)/tao/NVList.h \ + $(ACE_ROOT)/ace/Unbounded_Queue.h \ + $(ACE_ROOT)/ace/Unbounded_Queue.inl \ + $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/LocalObject.i \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/OctetSeqC.h \ + $(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/OctetSeqC.i \ + $(TAO_ROOT)/tao/Principal.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/PolicyC.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/Remote_Object_Proxy_Impl.h \ + $(TAO_ROOT)/tao/PolicyC.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/BoundsC.h \ + $(TAO_ROOT)/tao/BoundsC.i \ + $(TAO_ROOT)/tao/ValueBase.h \ + $(TAO_ROOT)/tao/ValueBase.i \ + $(TAO_ROOT)/tao/ValueFactory.h \ + $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/DomainC.h \ + $(TAO_ROOT)/tao/DomainC.i \ + $(TAO_ROOT)/tao/WrongTransactionC.h \ + $(TAO_ROOT)/tao/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/ObjectIDList.h \ + $(TAO_ROOT)/tao/ObjectIDList.i \ + $(TAO_ROOT)/tao/PortableInterceptor.h \ + $(TAO_ROOT)/tao/PortableInterceptorC.h \ + $(TAO_ROOT)/tao/DynamicC.h \ + $(TAO_ROOT)/tao/DynamicC.i \ + $(TAO_ROOT)/tao/MessagingC.h \ + $(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/IOPC.h \ + $(TAO_ROOT)/tao/IOPC.i \ + $(TAO_ROOT)/tao/PollableC.h \ + $(TAO_ROOT)/tao/PollableC.i \ + $(TAO_ROOT)/tao/MessagingC.i \ + $(TAO_ROOT)/tao/PortableInterceptorC.i \ + $(TAO_ROOT)/tao/Interceptor_List.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ + $(TAO_ROOT)/tao/Interceptor_List.inl \ + $(TAO_ROOT)/tao/PortableInterceptor.i \ + $(TAO_ROOT)/tao/StringSeqC.h \ + $(TAO_ROOT)/tao/StringSeqC.i \ + LoadBalancing/LoadBalancing_export.h \ + CosNamingC.h \ + Naming/naming_export.h \ + CosNamingC.i \ + LoadBalancingC.i \ + LoadBalancing/LB_ReplicaInfo.h LoadBalancing/LB_Location_Map.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 \ + $(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/Service_Config.i \ + $(ACE_ROOT)/ace/Reactor.h \ + $(ACE_ROOT)/ace/Handle_Set.h \ + $(ACE_ROOT)/ace/Handle_Set.i \ + $(ACE_ROOT)/ace/Timer_Queue.h \ + $(ACE_ROOT)/ace/Timer_Queue_T.h \ + $(ACE_ROOT)/ace/Test_and_Set.h \ + $(ACE_ROOT)/ace/Test_and_Set.i \ + $(ACE_ROOT)/ace/Test_and_Set.cpp \ + $(ACE_ROOT)/ace/Timer_Queue_T.i \ + $(ACE_ROOT)/ace/Timer_Queue_T.cpp \ + $(ACE_ROOT)/ace/Reactor.i \ + $(ACE_ROOT)/ace/Reactor_Impl.h \ + $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \ + LoadBalancing/LB_Location_Hash.h LoadBalancing/LB_Location_Hash.inl \ + LoadBalancing/LB_Location_Equal_To.h \ + LoadBalancing/LB_Location_Equal_To.inl \ + $(TAO_ROOT)/tao/debug.h + .obj/LB_RPMS_Monitor.o .obj/LB_RPMS_Monitor.so .shobj/LB_RPMS_Monitor.o .shobj/LB_RPMS_Monitor.so: LoadBalancing/LB_RPMS_Monitor.cpp \ LoadBalancing/LB_RPMS_Monitor.h \ $(ACE_ROOT)/ace/pre.h \ diff --git a/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.cpp b/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.cpp index 07416786055..7c449ee871a 100644 --- a/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.cpp +++ b/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.cpp @@ -5,7 +5,6 @@ #include "tao/debug.h" - ACE_RCSID (LoadBalancing, HasherFactory, "$Id$") diff --git a/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.h b/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.h index 2bd7bffe147..11ffeee1f59 100644 --- a/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.h +++ b/TAO/orbsvcs/tests/LoadBalancing/HasherFactory.h @@ -28,6 +28,7 @@ #include "Hasher_i.h" + /** * @class HasherFactory * diff --git a/TAO/orbsvcs/tests/LoadBalancing/server.cpp b/TAO/orbsvcs/tests/LoadBalancing/server.cpp index 7a66d94723f..b913a09d8a2 100644 --- a/TAO/orbsvcs/tests/LoadBalancing/server.cpp +++ b/TAO/orbsvcs/tests/LoadBalancing/server.cpp @@ -2,6 +2,8 @@ #include "ace/Get_Opt.h" +#include "orbsvcs/LoadBalancing/LB_RPMS_Monitor.h" + #include "HasherFactory.h" //#include "PropertyManagerTest.h" @@ -44,11 +46,21 @@ parse_args (int argc, char *argv[]) } LoadBalancing::Criteria * -setup_criteria (HasherFactory &hasher_factory) +setup_lb (CORBA::Object_ptr lb, + TAO_LB_RPMS_Monitor &rpms_monitor, + HasherFactory &hasher_factory) { ACE_DECLARE_NEW_CORBA_ENV; ACE_TRY { + LoadBalancing::ReplicationManager_var balancer = + LoadBalancing::ReplicationManager::_narrow (lb, ACE_TRY_ENV); + ACE_TRY_CHECK; + + LoadBalancing::LoadMonitor_var monitor = + rpms_monitor._this (ACE_TRY_ENV); + ACE_TRY_CHECK; + const CORBA::UShort INIT_NUM_REPLICAS = 4; const CORBA::UShort MIN_NUM_REPLICAS = 3; @@ -100,7 +112,7 @@ setup_criteria (HasherFactory &hasher_factory) LoadBalancing::GenericFactory_var factory = LoadBalancing::GenericFactory::_narrow (obj.in (), - ACE_TRY_ENV); + ACE_TRY_ENV); ACE_TRY_CHECK; LoadBalancing::FactoryInfos factory_infos; @@ -128,6 +140,12 @@ setup_criteria (HasherFactory &hasher_factory) CORBA::string_dup (location); factory_info.the_location[CORBA::ULong (0)].kind = CORBA::string_dup ("location number"); + + // Register a load monitor for each of the replicas. + balancer->register_load_monitor (monitor.in (), + factory_info.the_location, + ACE_TRY_ENV); + ACE_TRY_CHECK; } factories.val <<= factory_infos; @@ -168,6 +186,10 @@ main (int argc, char *argv[]) ACE_DECLARE_NEW_CORBA_ENV; ACE_TRY { + TAO_LB_RPMS_Monitor rpms_monitor; + rpms_monitor.init (ACE_TRY_ENV); + ACE_TRY_CHECK; + CORBA::ORB_var orb = CORBA::ORB_init (argc, argv, "test_orb", @@ -225,12 +247,15 @@ main (int argc, char *argv[]) // -1); - HasherFactory hasher_factory (orb.in (), root_poa.in ()); + HasherFactory hasher_factory (orb.in (), + root_poa.in ()); // Set up the criteria to be used when creating the object // group, and activate the hasher factory. LoadBalancing::Criteria_var the_criteria = - ::setup_criteria (hasher_factory); + ::setup_lb (lb, + rpms_monitor, + hasher_factory); // The FactoryCreationId LoadBalancing::GenericFactory::FactoryCreationId_var |