diff options
Diffstat (limited to 'TAO/tao/Strategies')
-rw-r--r-- | TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.cpp | 34 | ||||
-rw-r--r-- | TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.h | 40 | ||||
-rw-r--r-- | TAO/tao/Strategies/LFU_Connection_Purging_Strategy.cpp | 32 | ||||
-rw-r--r-- | TAO/tao/Strategies/LFU_Connection_Purging_Strategy.h | 37 | ||||
-rw-r--r-- | TAO/tao/Strategies/Makefile | 669 | ||||
-rw-r--r-- | TAO/tao/Strategies/Makefile.bor | 5 | ||||
-rw-r--r-- | TAO/tao/Strategies/NULL_Connection_Purging_Strategy.cpp | 46 | ||||
-rw-r--r-- | TAO/tao/Strategies/NULL_Connection_Purging_Strategy.h | 45 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp | 5 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connector.cpp | 16 | ||||
-rw-r--r-- | TAO/tao/Strategies/TAO_Strategies.dsp | 12 | ||||
-rw-r--r-- | TAO/tao/Strategies/TAO_Strategies_Static.dsp | 12 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Connection_Handler.cpp | 5 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Connector.cpp | 16 | ||||
-rw-r--r-- | TAO/tao/Strategies/advanced_resource.cpp | 41 | ||||
-rw-r--r-- | TAO/tao/Strategies/advanced_resource.h | 3 |
16 files changed, 886 insertions, 132 deletions
diff --git a/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.cpp b/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.cpp new file mode 100644 index 00000000000..7393ac3ac7a --- /dev/null +++ b/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.cpp @@ -0,0 +1,34 @@ +// $Id$ + +#include "FIFO_Connection_Purging_Strategy.h" + +ACE_RCSID(tao, FIFO_Connection_Purging_Strategy, "$Id$") + +TAO_FIFO_Connection_Purging_Strategy::TAO_FIFO_Connection_Purging_Strategy ( + TAO_Resource_Factory* rf) + : TAO_ULong_Connection_Purging_Strategy (rf), + order_ (0) +{ +} + + +TAO_FIFO_Connection_Purging_Strategy::~TAO_FIFO_Connection_Purging_Strategy () +{ +} + + +void +TAO_FIFO_Connection_Purging_Strategy::update_item_i ( + TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item) +{ + TAO_Cache_ExtId ext_id (prop); + ATTRIBUTE_TYPE int_id (this->order_); + if (this->tracking_map ().find (ext_id, int_id) != 0) + { + this->tracking_map ().bind(ext_id, int_id); + this->order_++; + } +} + + diff --git a/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.h b/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.h new file mode 100644 index 00000000000..fb43fc77533 --- /dev/null +++ b/TAO/tao/Strategies/FIFO_Connection_Purging_Strategy.h @@ -0,0 +1,40 @@ +// ================================================================ +/** + * @file FIFO_Connection_Purging_Strategy.h + * + * $Id$ + * + * @author Chad Elliott (elliott_c@ociweb.com) + */ +// ================================================================ + +#ifndef TAO_FIFO_PURGING_STRATEGY_H +#define TAO_FIFO_PURGING_STRATEGY_H +#include "ace/pre.h" + +#include "strategies_export.h" +#include "tao/Connection_Purging_Strategy.h" + +class TAO_Strategies_Export TAO_FIFO_Connection_Purging_Strategy: + public TAO_ULong_Connection_Purging_Strategy +{ +public: + /// The constructor + TAO_FIFO_Connection_Purging_Strategy (TAO_Resource_Factory* rf); + + /// The destructor + virtual ~TAO_FIFO_Connection_Purging_Strategy (); + +protected: + + /// Called when accessing an item from the cache + virtual void update_item_i (TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item); + +private: + + ATTRIBUTE_TYPE order_; +}; + +#include "ace/post.h" +#endif /* TAO_FIFO_PURGING_STRATEGY_H */ diff --git a/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.cpp b/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.cpp new file mode 100644 index 00000000000..8d134a958b8 --- /dev/null +++ b/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.cpp @@ -0,0 +1,32 @@ +// $Id$ + +#include "LFU_Connection_Purging_Strategy.h" + +ACE_RCSID(tao, LFU_Connection_Purging_Strategy, "$Id$") + +TAO_LFU_Connection_Purging_Strategy::TAO_LFU_Connection_Purging_Strategy ( + TAO_Resource_Factory* rf) + : TAO_ULong_Connection_Purging_Strategy (rf) +{ +} + + +TAO_LFU_Connection_Purging_Strategy::~TAO_LFU_Connection_Purging_Strategy () +{ +} + + +void +TAO_LFU_Connection_Purging_Strategy::update_item_i ( + TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item) +{ + TAO_Cache_ExtId ext_id (prop); + ATTRIBUTE_TYPE int_id (0); + if (this->tracking_map ().find (ext_id, int_id) == 0) + { + int_id++; + } + this->tracking_map ().rebind(ext_id, int_id); +} + diff --git a/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.h b/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.h new file mode 100644 index 00000000000..b260f1b17d4 --- /dev/null +++ b/TAO/tao/Strategies/LFU_Connection_Purging_Strategy.h @@ -0,0 +1,37 @@ +// ================================================================ +/** + * @file LFU_Connection_Purging_Strategy.h + * + * $Id$ + * + * @author Chad Elliott (elliott_c@ociweb.com) + */ +// ================================================================ + +#ifndef TAO_LFU_PURGING_STRATEGY_H +#define TAO_LFU_PURGING_STRATEGY_H +#include "ace/pre.h" + +#include "strategies_export.h" +#include "tao/Connection_Purging_Strategy.h" + +class TAO_Strategies_Export TAO_LFU_Connection_Purging_Strategy: + public TAO_ULong_Connection_Purging_Strategy +{ +public: + /// The constructor + TAO_LFU_Connection_Purging_Strategy (TAO_Resource_Factory* rf); + + /// The destructor + virtual ~TAO_LFU_Connection_Purging_Strategy (); + +protected: + + /// Called when accessing an item from the cache + virtual void update_item_i (TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item); + +}; + +#include "ace/post.h" +#endif /* TAO_LFU_PURGING_STRATEGY_H */ diff --git a/TAO/tao/Strategies/Makefile b/TAO/tao/Strategies/Makefile index c0b86adda17..6f66f1bfb00 100644 --- a/TAO/tao/Strategies/Makefile +++ b/TAO/tao/Strategies/Makefile @@ -43,7 +43,10 @@ CPP_SRCS += \ TAO_Strategies_Internal \ uiop_endpoints \ advanced_resource \ - Reactor_Per_Priority + Reactor_Per_Priority \ + LFU_Connection_Purging_Strategy \ + FIFO_Connection_Purging_Strategy \ + NULL_Connection_Purging_Strategy ifeq ($(rt_corba),1) @@ -88,7 +91,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Protocol_Factory.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 \ @@ -96,6 +98,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -411,6 +414,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Connector_Registry.h \ $(TAO_ROOT)/tao/Connector_Registry.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ $(TAO_ROOT)/tao/GIOP_Message_State.h \ $(TAO_ROOT)/tao/GIOP_Message_State.i \ UIOP_Connector.h \ @@ -427,7 +433,6 @@ CPPFLAGS += -I$(TAO_ROOT) .obj/UIOP_Lite_Factory.o .obj/UIOP_Lite_Factory.so .shobj/UIOP_Lite_Factory.o .shobj/UIOP_Lite_Factory.so: UIOP_Lite_Factory.cpp UIOP_Lite_Factory.h \ $(ACE_ROOT)/ace/pre.h \ strategies_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 \ @@ -435,6 +440,7 @@ 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/post.h \ $(TAO_ROOT)/tao/Protocol_Factory.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ @@ -752,6 +758,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Connector_Registry.h \ $(TAO_ROOT)/tao/Connector_Registry.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ $(TAO_ROOT)/tao/GIOP_Message_State.h \ $(TAO_ROOT)/tao/GIOP_Message_State.i \ UIOP_Connector.h \ @@ -774,7 +783,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Profile.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 \ @@ -782,6 +790,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -1107,7 +1116,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Transport.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 \ @@ -1115,6 +1123,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -1475,7 +1484,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Pluggable.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 \ @@ -1483,6 +1491,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -1815,14 +1824,15 @@ CPPFLAGS += -I$(TAO_ROOT) $(ACE_ROOT)/ace/Auto_Ptr.i \ $(ACE_ROOT)/ace/Auto_Ptr.cpp \ $(TAO_ROOT)/tao/Base_Transport_Property.h \ - $(TAO_ROOT)/tao/Base_Transport_Property.inl + $(TAO_ROOT)/tao/Base_Transport_Property.inl \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl .obj/UIOP_Acceptor.o .obj/UIOP_Acceptor.so .shobj/UIOP_Acceptor.o .shobj/UIOP_Acceptor.so: UIOP_Acceptor.cpp UIOP_Acceptor.h \ $(ACE_ROOT)/ace/pre.h \ $(TAO_ROOT)/tao/Pluggable.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 \ @@ -1830,6 +1840,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -2143,6 +2154,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Connector_Registry.h \ $(TAO_ROOT)/tao/Connector_Registry.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ $(TAO_ROOT)/tao/GIOP_Message_State.h \ $(TAO_ROOT)/tao/GIOP_Message_State.i \ UIOP_Profile.h \ @@ -2156,16 +2170,15 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_KeyC.i \ UIOP_Endpoint.h UIOP_Endpoint.i UIOP_Profile.i \ $(TAO_ROOT)/tao/MProfile.h \ - $(TAO_ROOT)/tao/MProfile.i \ - $(TAO_ROOT)/tao/debug.h + $(TAO_ROOT)/tao/MProfile.i .obj/UIOP_Connection_Handler.o .obj/UIOP_Connection_Handler.so .shobj/UIOP_Connection_Handler.o .shobj/UIOP_Connection_Handler.so: UIOP_Connection_Handler.cpp \ UIOP_Connection_Handler.h \ - $(ACE_ROOT)/ace/pre.h UIOP_Transport.h \ + $(ACE_ROOT)/ace/pre.h \ + UIOP_Transport.h \ $(TAO_ROOT)/tao/Transport.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 \ @@ -2173,6 +2186,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -2495,14 +2509,15 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/GIOP_Utils.i \ $(TAO_ROOT)/tao/GIOP_Message_State.h \ $(TAO_ROOT)/tao/GIOP_Message_State.i \ - $(TAO_ROOT)/tao/GIOP_Message_Lite.i + $(TAO_ROOT)/tao/GIOP_Message_Lite.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl .obj/UIOP_Endpoint.o .obj/UIOP_Endpoint.so .shobj/UIOP_Endpoint.o .shobj/UIOP_Endpoint.so: UIOP_Endpoint.cpp UIOP_Endpoint.h \ $(ACE_ROOT)/ace/pre.h \ $(TAO_ROOT)/tao/Endpoint.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 \ @@ -2510,6 +2525,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -2730,7 +2746,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -2738,6 +2753,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -3054,6 +3070,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Connector_Registry.h \ $(TAO_ROOT)/tao/Connector_Registry.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ $(ACE_ROOT)/ace/MEM_Acceptor.h \ $(ACE_ROOT)/ace/SOCK_Acceptor.h \ $(ACE_ROOT)/ace/SOCK_Stream.h \ @@ -3083,7 +3102,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -3091,6 +3109,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -3308,7 +3327,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -3317,17 +3341,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -3355,7 +3368,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -3363,6 +3375,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -3729,7 +3742,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -3737,6 +3749,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -4078,13 +4091,14 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Client_Strategy_Factory.h \ $(ACE_ROOT)/ace/Auto_Ptr.h \ $(ACE_ROOT)/ace/Auto_Ptr.i \ - $(ACE_ROOT)/ace/Auto_Ptr.cpp + $(ACE_ROOT)/ace/Auto_Ptr.cpp \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl .obj/SHMIOP_Acceptor.o .obj/SHMIOP_Acceptor.so .shobj/SHMIOP_Acceptor.o .shobj/SHMIOP_Acceptor.so: SHMIOP_Acceptor.cpp SHMIOP_Acceptor.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 \ @@ -4092,6 +4106,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -4406,6 +4421,9 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Connector_Registry.h \ $(TAO_ROOT)/tao/Connector_Registry.i \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ $(ACE_ROOT)/ace/MEM_Acceptor.h \ $(ACE_ROOT)/ace/SOCK_Acceptor.h \ $(ACE_ROOT)/ace/SOCK_Stream.h \ @@ -4430,15 +4448,13 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Object_KeyC.i \ SHMIOP_Endpoint.h SHMIOP_Endpoint.i SHMIOP_Profile.i \ $(TAO_ROOT)/tao/MProfile.h \ - $(TAO_ROOT)/tao/MProfile.i \ - $(TAO_ROOT)/tao/debug.h + $(TAO_ROOT)/tao/MProfile.i .obj/SHMIOP_Connection_Handler.o .obj/SHMIOP_Connection_Handler.so .shobj/SHMIOP_Connection_Handler.o .shobj/SHMIOP_Connection_Handler.so: SHMIOP_Connection_Handler.cpp \ SHMIOP_Connection_Handler.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 \ @@ -4446,6 +4462,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -4783,6 +4800,8 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/Base_Transport_Property.h \ $(TAO_ROOT)/tao/Base_Transport_Property.inl \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ SHMIOP_Endpoint.h \ $(ACE_ROOT)/ace/MEM_Addr.h \ $(ACE_ROOT)/ace/MEM_Addr.i \ @@ -4793,7 +4812,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Endpoint.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 \ @@ -4801,6 +4819,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -5053,7 +5072,6 @@ CPPFLAGS += -I$(TAO_ROOT) GIOP_Message_NonReactive_Base.h \ $(ACE_ROOT)/ace/pre.h \ strategies_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 \ @@ -5061,6 +5079,7 @@ 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/post.h \ GIOP_Message_NonReactive_Handler.h \ $(TAO_ROOT)/tao/CDR.h \ $(TAO_ROOT)/tao/corbafwd.h \ @@ -5285,7 +5304,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -5294,19 +5318,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Endpoint.h \ - $(TAO_ROOT)/tao/Endpoint.i \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -5334,7 +5345,6 @@ CPPFLAGS += -I$(TAO_ROOT) GIOP_Message_NonReactive_Handler.h \ $(ACE_ROOT)/ace/pre.h \ strategies_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 \ @@ -5342,6 +5352,7 @@ 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/post.h \ $(TAO_ROOT)/tao/CDR.h \ $(TAO_ROOT)/tao/corbafwd.h \ $(ACE_ROOT)/ace/CDR_Base.h \ @@ -5564,7 +5575,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -5573,19 +5589,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Endpoint.h \ - $(TAO_ROOT)/tao/Endpoint.i \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -5607,6 +5610,14 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/ORB_Core.i \ $(TAO_ROOT)/tao/debug.h \ $(TAO_ROOT)/tao/Transport.h \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ + $(TAO_ROOT)/tao/Endpoint.h \ + $(TAO_ROOT)/tao/Endpoint.i \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(TAO_ROOT)/tao/Cache_Entries.h \ + $(TAO_ROOT)/tao/Cache_Entries.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ $(TAO_ROOT)/tao/Transport_Timer.h \ $(ACE_ROOT)/ace/Strategies.h \ $(ACE_ROOT)/ace/Strategies_T.h \ @@ -5636,7 +5647,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -5644,6 +5654,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -5848,7 +5859,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -5857,19 +5873,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Endpoint.h \ - $(TAO_ROOT)/tao/Endpoint.i \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -5897,7 +5900,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ @@ -5905,6 +5907,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -6021,7 +6024,6 @@ CPPFLAGS += -I$(TAO_ROOT) .obj/advanced_resource.o .obj/advanced_resource.so .shobj/advanced_resource.o .shobj/advanced_resource.so: advanced_resource.cpp advanced_resource.h \ $(ACE_ROOT)/ace/pre.h \ strategies_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 \ @@ -6029,6 +6031,7 @@ 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/post.h \ $(TAO_ROOT)/tao/default_resource.h \ $(TAO_ROOT)/tao/Resource_Factory.h \ $(ACE_ROOT)/ace/Service_Object.h \ @@ -6229,7 +6232,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -6238,19 +6246,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Endpoint.h \ - $(TAO_ROOT)/tao/Endpoint.i \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -6278,10 +6273,22 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Priority_Mapping.h \ $(TAO_ROOT)/tao/Priority_Mapping.i \ Direct_Priority_Mapping.i Linear_Priority_Mapping.h \ - Linear_Priority_Mapping.i \ + Linear_Priority_Mapping.i LFU_Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(TAO_ROOT)/tao/Cache_Entries.h \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ + $(TAO_ROOT)/tao/Endpoint.h \ + $(TAO_ROOT)/tao/Endpoint.i \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ + $(TAO_ROOT)/tao/Cache_Entries.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl \ + FIFO_Connection_Purging_Strategy.h NULL_Connection_Purging_Strategy.h \ $(TAO_ROOT)/tao/Single_Reactor.h \ $(TAO_ROOT)/tao/Single_Reactor.i \ + $(TAO_ROOT)/tao/LRU_Connection_Purging_Strategy.h \ $(TAO_ROOT)/tao/Leader_Follower.h \ $(TAO_ROOT)/tao/Leader_Follower.i \ $(ACE_ROOT)/ace/Auto_Ptr.h \ @@ -6338,7 +6345,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Reactor_Registry.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 \ @@ -6346,6 +6352,7 @@ 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/post.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ $(ACE_ROOT)/ace/Message_Block.h \ @@ -6545,7 +6552,12 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Service_Callbacks.i \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.h \ $(TAO_ROOT)/tao/Fault_Tolerance_Service.i \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(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 \ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ $(ACE_ROOT)/ace/Functor.h \ $(ACE_ROOT)/ace/Functor.i \ @@ -6554,19 +6566,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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/Cache_Entries.h \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ - $(TAO_ROOT)/tao/Endpoint.h \ - $(TAO_ROOT)/tao/Endpoint.i \ - $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ - $(TAO_ROOT)/tao/Cache_Entries.inl \ - $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ - $(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 \ @@ -6590,11 +6589,450 @@ CPPFLAGS += -I$(TAO_ROOT) $(TAO_ROOT)/tao/Leader_Follower.i \ $(TAO_ROOT)/tao/debug.h -.obj/Linear_Priority_Mapping.o .obj/Linear_Priority_Mapping.so .shobj/Linear_Priority_Mapping.o .shobj/Linear_Priority_Mapping.so: Linear_Priority_Mapping.cpp \ +.obj/LFU_Connection_Purging_Strategy.o .obj/LFU_Connection_Purging_Strategy.so .shobj/LFU_Connection_Purging_Strategy.o .shobj/LFU_Connection_Purging_Strategy.so: LFU_Connection_Purging_Strategy.cpp \ + LFU_Connection_Purging_Strategy.h \ + $(ACE_ROOT)/ace/pre.h \ + strategies_export.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/post.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.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/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Functor.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(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/Functor.i \ + $(ACE_ROOT)/ace/Functor_T.h \ + $(ACE_ROOT)/ace/Functor_T.i \ + $(ACE_ROOT)/ace/Functor_T.cpp \ + $(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/Hash_Map_Manager_T.i \ + $(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/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/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Service_Object.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Unbounded_Queue.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Queue.inl \ + $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.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/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(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 \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(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/Memory_Pool.i \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/Cache_Entries.h \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ + $(TAO_ROOT)/tao/Endpoint.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(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/corbafwd.i \ + $(TAO_ROOT)/tao/Endpoint.i \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ + $(TAO_ROOT)/tao/Cache_Entries.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ + $(TAO_ROOT)/tao/debug.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl + +.obj/FIFO_Connection_Purging_Strategy.o .obj/FIFO_Connection_Purging_Strategy.so .shobj/FIFO_Connection_Purging_Strategy.o .shobj/FIFO_Connection_Purging_Strategy.so: \ + FIFO_Connection_Purging_Strategy.cpp \ + FIFO_Connection_Purging_Strategy.h \ $(ACE_ROOT)/ace/pre.h \ + strategies_export.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/post.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.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/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Functor.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(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/Functor.i \ + $(ACE_ROOT)/ace/Functor_T.h \ + $(ACE_ROOT)/ace/Functor_T.i \ + $(ACE_ROOT)/ace/Functor_T.cpp \ + $(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/Hash_Map_Manager_T.i \ + $(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/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/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Service_Object.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Unbounded_Queue.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Queue.inl \ + $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.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/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(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 \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(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/Memory_Pool.i \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/Cache_Entries.h \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ + $(TAO_ROOT)/tao/Endpoint.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(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/corbafwd.i \ + $(TAO_ROOT)/tao/Endpoint.i \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ + $(TAO_ROOT)/tao/Cache_Entries.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ + $(TAO_ROOT)/tao/debug.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl + +.obj/NULL_Connection_Purging_Strategy.o .obj/NULL_Connection_Purging_Strategy.so .shobj/NULL_Connection_Purging_Strategy.o .shobj/NULL_Connection_Purging_Strategy.so: \ + NULL_Connection_Purging_Strategy.cpp \ + NULL_Connection_Purging_Strategy.h \ + $(ACE_ROOT)/ace/pre.h \ + strategies_export.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/post.h \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.h \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.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/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(ACE_ROOT)/ace/Functor.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(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/Functor.i \ + $(ACE_ROOT)/ace/Functor_T.h \ + $(ACE_ROOT)/ace/Functor_T.i \ + $(ACE_ROOT)/ace/Functor_T.cpp \ + $(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/Hash_Map_Manager_T.i \ + $(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/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/Event_Handler.h \ + $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Service_Object.i \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Signal.i \ + $(ACE_ROOT)/ace/Unbounded_Queue.h \ + $(ACE_ROOT)/ace/Node.h \ + $(ACE_ROOT)/ace/Node.cpp \ + $(ACE_ROOT)/ace/Unbounded_Queue.inl \ + $(ACE_ROOT)/ace/Unbounded_Queue.cpp \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Unbounded_Set.h \ + $(ACE_ROOT)/ace/Unbounded_Set.inl \ + $(ACE_ROOT)/ace/Unbounded_Set.cpp \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.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/Free_List.h \ + $(ACE_ROOT)/ace/Free_List.i \ + $(ACE_ROOT)/ace/Free_List.cpp \ + $(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 \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Malloc.i \ + $(ACE_ROOT)/ace/Malloc_T.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.h \ + $(ACE_ROOT)/ace/Malloc_Allocator.i \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(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/Memory_Pool.i \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/Cache_Entries.h \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.h \ + $(TAO_ROOT)/tao/Endpoint.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Base.h \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(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/corbafwd.i \ + $(TAO_ROOT)/tao/Endpoint.i \ + $(TAO_ROOT)/tao/Transport_Descriptor_Interface.inl \ + $(TAO_ROOT)/tao/Cache_Entries.inl \ + $(TAO_ROOT)/tao/Transport_Cache_Manager.inl \ + $(TAO_ROOT)/tao/debug.h \ + $(ACE_ROOT)/ace/Array_Base.h \ + $(ACE_ROOT)/ace/Array_Base.inl \ + $(ACE_ROOT)/ace/Array_Base.cpp \ + $(TAO_ROOT)/tao/Connection_Purging_Strategy.inl + +.obj/Linear_Priority_Mapping.o .obj/Linear_Priority_Mapping.so .shobj/Linear_Priority_Mapping.o .shobj/Linear_Priority_Mapping.so: Linear_Priority_Mapping.cpp \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/pre.h \ + $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/ACE_export.h \ $(ACE_ROOT)/ace/svc_export.h \ $(ACE_ROOT)/ace/ace_wchar.h \ @@ -6602,6 +7040,7 @@ 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/post.h \ $(ACE_ROOT)/ace/OS_Dirent.h \ $(ACE_ROOT)/ace/OS_Dirent.inl \ $(ACE_ROOT)/ace/OS_String.h \ @@ -6749,7 +7188,6 @@ CPPFLAGS += -I$(TAO_ROOT) $(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 \ $(ACE_ROOT)/ace/svc_export.h \ $(ACE_ROOT)/ace/ace_wchar.h \ @@ -6757,6 +7195,7 @@ 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/post.h \ $(ACE_ROOT)/ace/OS_Dirent.h \ $(ACE_ROOT)/ace/OS_Dirent.inl \ $(ACE_ROOT)/ace/OS_String.h \ diff --git a/TAO/tao/Strategies/Makefile.bor b/TAO/tao/Strategies/Makefile.bor index bd98c93e956..0ece9771152 100644 --- a/TAO/tao/Strategies/Makefile.bor +++ b/TAO/tao/Strategies/Makefile.bor @@ -27,7 +27,10 @@ OBJFILES = \ $(OBJDIR)\advanced_resource.obj \ $(OBJDIR)\Reactor_Per_Priority.obj \ $(OBJDIR)\Linear_Priority_Mapping.obj \ - $(OBJDIR)\Direct_Priority_Mapping.obj + $(OBJDIR)\Direct_Priority_Mapping.obj \ + $(OBJDIR)\FIFO_Connection_Purging_Strategy.obj \ + $(OBJDIR)\LFU_Connection_Purging_Strategy.obj \ + $(OBJDIR)\NULL_Connection_Purging_Strategy.obj !ifdef STATIC CFLAGS = $(ACE_CFLAGS) $(TAO_CFLAGS) $(TAO_STRATEGIES_CFLAGS) diff --git a/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.cpp b/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.cpp new file mode 100644 index 00000000000..e875c533366 --- /dev/null +++ b/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.cpp @@ -0,0 +1,46 @@ +// $Id$ + +#include "NULL_Connection_Purging_Strategy.h" + +ACE_RCSID(tao, NULL_Connection_Purging_Strategy, "$Id$") + +TAO_NULL_Connection_Purging_Strategy::TAO_NULL_Connection_Purging_Strategy ( + TAO_Resource_Factory* rf) + : TAO_Connection_Purging_Strategy (rf) +{ +} + + +TAO_NULL_Connection_Purging_Strategy::~TAO_NULL_Connection_Purging_Strategy () +{ +} + + +int +TAO_NULL_Connection_Purging_Strategy::fill_set_i (DESCRIPTOR_SET& sorted_set) +{ + return 0; +} + + +void +TAO_NULL_Connection_Purging_Strategy::update_item_i ( + TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item) +{ +} + + +void +TAO_NULL_Connection_Purging_Strategy::remove_item_i ( + TAO_DESCRIPTOR_INTERFACE* prop) +{ +} + + +void +TAO_NULL_Connection_Purging_Strategy::remove_all_i () +{ +} + + diff --git a/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.h b/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.h new file mode 100644 index 00000000000..67a00e4d0e4 --- /dev/null +++ b/TAO/tao/Strategies/NULL_Connection_Purging_Strategy.h @@ -0,0 +1,45 @@ +// ================================================================ +/** + * @file NULL_Connection_Purging_Strategy.h + * + * $Id$ + * + * @author Chad Elliott (elliott_c@ociweb.com) + */ +// ================================================================ + +#ifndef TAO_NULL_PURGING_STRATEGY_H +#define TAO_NULL_PURGING_STRATEGY_H +#include "ace/pre.h" + +#include "strategies_export.h" +#include "tao/Connection_Purging_Strategy.h" + +class TAO_Strategies_Export TAO_NULL_Connection_Purging_Strategy: + public TAO_Connection_Purging_Strategy +{ +public: + /// The constructor + TAO_NULL_Connection_Purging_Strategy (TAO_Resource_Factory* rf); + + /// The destructor + virtual ~TAO_NULL_Connection_Purging_Strategy (); + +protected: + /// Does nothing. + virtual int fill_set_i (DESCRIPTOR_SET& sorted_set); + + /// Does nothing. + virtual void update_item_i (TAO_DESCRIPTOR_INTERFACE* prop, + TAO_PURGING_CACHE_ITEM* item); + + /// Does nothing. + virtual void remove_item_i (TAO_DESCRIPTOR_INTERFACE* prop); + + /// Does nothing. + virtual void remove_all_i (); + +}; + +#include "ace/post.h" +#endif /* TAO_NULL_PURGING_STRATEGY_H */ diff --git a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp index 4799cf3ef42..3df9b6e6ee3 100644 --- a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp @@ -14,6 +14,7 @@ #include "tao/GIOP_Message_Lite.h" #include "tao/Server_Strategy_Factory.h" #include "tao/Base_Transport_Property.h" +#include "tao/Connection_Purging_Strategy.h" #include "SHMIOP_Endpoint.h" #if !defined (__ACE_INLINE__) @@ -242,8 +243,8 @@ TAO_SHMIOP_Connection_Handler::add_transport_to_cache (void) TAO_Base_Transport_Property prop (&endpoint); // Add the handler to Cache - return this->orb_core ()->transport_cache ().cache_transport (&prop, - this->transport ()); + return this->orb_core ()->purging_strategy ()->add_to_cache (&prop, + this->transport ()); } diff --git a/TAO/tao/Strategies/SHMIOP_Connector.cpp b/TAO/tao/Strategies/SHMIOP_Connector.cpp index eec5c62dcae..b8277c19a9d 100644 --- a/TAO/tao/Strategies/SHMIOP_Connector.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connector.cpp @@ -13,6 +13,7 @@ #include "tao/Client_Strategy_Factory.h" #include "tao/Environment.h" #include "ace/Auto_Ptr.h" +#include "tao/Connection_Purging_Strategy.h" ACE_RCSID (Strategies, SHMIOP_Connector, @@ -164,8 +165,8 @@ TAO_SHMIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, // Check the Cache first for connections // If transport found, reference count is incremented on assignment - if (this->orb_core ()->transport_cache ().find_transport (desc, - base_transport) == 0) + if (this->orb_core ()->purging_strategy ()->find_in_cache (desc, + base_transport) == 0) { if (TAO_debug_level > 5) ACE_DEBUG ((LM_DEBUG, @@ -180,6 +181,9 @@ TAO_SHMIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, ACE_TEXT ("(%P|%t) SHMIOP_Connector::connect ") ACE_TEXT ("making a new connection \n"))); + // Purge connections (if necessary) + this->orb_core ()->purging_strategy ()->purge (); + // @@ This needs to change in the next round when we implement a // policy that will not allow new connections when a connection // is busy. @@ -232,8 +236,8 @@ TAO_SHMIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, base_transport = TAO_Transport::_duplicate (svc_handler->transport ()); // Add the handler to Cache int retval = - this->orb_core ()->transport_cache ().cache_transport (desc, - svc_handler->transport ()); + this->orb_core ()->purging_strategy ()->add_to_cache (desc, + svc_handler->transport ()); if (retval != 0 && TAO_debug_level > 0) { @@ -365,8 +369,8 @@ TAO_SHMIOP_Connector::preconnect (const char *preconnects) // Add the handler to Cache int retval = - this->orb_core ()->transport_cache ().cache_transport (&prop, - handlers[slot]->transport ()); + this->orb_core ()->purging_strategy ()->add_to_cache (&prop, + handlers[slot]->transport ()); successes++; if (retval != 0 && TAO_debug_level > 4) diff --git a/TAO/tao/Strategies/TAO_Strategies.dsp b/TAO/tao/Strategies/TAO_Strategies.dsp index 5743d911718..eda74764ee0 100644 --- a/TAO/tao/Strategies/TAO_Strategies.dsp +++ b/TAO/tao/Strategies/TAO_Strategies.dsp @@ -102,6 +102,10 @@ SOURCE=.\Direct_Priority_Mapping.cpp # End Source File
# Begin Source File
+SOURCE=.\FIFO_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\GIOP_Message_NonReactive_Base.cpp
# End Source File
# Begin Source File
@@ -114,6 +118,14 @@ SOURCE=.\Linear_Priority_Mapping.cpp # End Source File
# Begin Source File
+SOURCE=.\LFU_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\NULL_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\Reactor_Per_Priority.cpp
# End Source File
# Begin Source File
diff --git a/TAO/tao/Strategies/TAO_Strategies_Static.dsp b/TAO/tao/Strategies/TAO_Strategies_Static.dsp index a9526d08ce2..bd1cf67c0af 100644 --- a/TAO/tao/Strategies/TAO_Strategies_Static.dsp +++ b/TAO/tao/Strategies/TAO_Strategies_Static.dsp @@ -99,6 +99,10 @@ SOURCE=.\Direct_Priority_Mapping.cpp # End Source File
# Begin Source File
+SOURCE=.\FIFO_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\GIOP_Message_NonReactive_Base.cpp
# End Source File
# Begin Source File
@@ -111,6 +115,14 @@ SOURCE=.\Linear_Priority_Mapping.cpp # End Source File
# Begin Source File
+SOURCE=.\LFU_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\NULL_Connection_Purging_Strategy.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\Reactor_Per_Priority.cpp
# End Source File
# Begin Source File
diff --git a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp index 803769de9bd..e6207eecb2a 100644 --- a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp +++ b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp @@ -15,6 +15,7 @@ #include "tao/Messaging_Policy_i.h" #include "tao/Base_Transport_Property.h" #include "tao/GIOP_Message_Lite.h" +#include "tao/Connection_Purging_Strategy.h" #if !defined (__ACE_INLINE__) # include "UIOP_Connection_Handler.inl" @@ -217,8 +218,8 @@ TAO_UIOP_Connection_Handler::add_transport_to_cache (void) TAO_Base_Transport_Property prop (&endpoint); // Add the handler to Cache - return this->orb_core ()->transport_cache ().cache_transport (&prop, - this->transport ()); + return this->orb_core ()->purging_strategy ()->add_to_cache (&prop, + this->transport ()); } diff --git a/TAO/tao/Strategies/UIOP_Connector.cpp b/TAO/tao/Strategies/UIOP_Connector.cpp index ba166d8d592..c1cd7f5940a 100644 --- a/TAO/tao/Strategies/UIOP_Connector.cpp +++ b/TAO/tao/Strategies/UIOP_Connector.cpp @@ -13,6 +13,7 @@ #include "ace/Auto_Ptr.h" #include "tao/Protocols_Hooks.h" #include "tao/Base_Transport_Property.h" +#include "tao/Connection_Purging_Strategy.h" ACE_RCSID(Strategies, UIOP_Connector, "$Id$") @@ -153,8 +154,8 @@ TAO_UIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, // Check the Cache first for connections // If transport found, reference count is incremented on assignment - if (this->orb_core ()->transport_cache ().find_transport (desc, - base_transport) == 0) + if (this->orb_core ()->purging_strategy ()->find_in_cache (desc, + base_transport) == 0) { if (TAO_debug_level > 5) ACE_DEBUG ((LM_DEBUG, @@ -169,6 +170,9 @@ TAO_UIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, ACE_TEXT ("(%P|%t) UIOP_Connector::connect ") ACE_TEXT ("making a new connection \n"))); + // Purge connections (if necessary) + this->orb_core ()->purging_strategy ()->purge (); + // @@ This needs to change in the next round when we implement a // policy that will not allow new connections when a connection // is busy. @@ -217,8 +221,8 @@ TAO_UIOP_Connector::connect (TAO_Transport_Descriptor_Interface *desc, base_transport = TAO_Transport::_duplicate (svc_handler->transport ()); // Add the handler to Cache int retval = - this->orb_core ()->transport_cache ().cache_transport (desc, - base_transport); + this->orb_core ()->purging_strategy ()->add_to_cache (desc, + base_transport); if (retval != 0 && TAO_debug_level > 0) { @@ -338,8 +342,8 @@ TAO_UIOP_Connector::preconnect (const char *preconnects) // Add the handler to Cache int retval = - this->orb_core ()->transport_cache ().cache_transport (&prop, - handlers[slot]->transport ()); + this->orb_core ()->purging_strategy ()->add_to_cache (&prop, + handlers[slot]->transport ()); ++successes; if (retval != 0 && TAO_debug_level > 4) diff --git a/TAO/tao/Strategies/advanced_resource.cpp b/TAO/tao/Strategies/advanced_resource.cpp index 48c770eecb1..245e8659a37 100644 --- a/TAO/tao/Strategies/advanced_resource.cpp +++ b/TAO/tao/Strategies/advanced_resource.cpp @@ -12,9 +12,13 @@ #include "Reactor_Per_Priority.h" #include "Direct_Priority_Mapping.h" #include "Linear_Priority_Mapping.h" +#include "LFU_Connection_Purging_Strategy.h" +#include "FIFO_Connection_Purging_Strategy.h" +#include "NULL_Connection_Purging_Strategy.h" #include "tao/debug.h" #include "tao/Single_Reactor.h" +#include "tao/LRU_Connection_Purging_Strategy.h" #include "tao/Leader_Follower.h" #include "ace/Auto_Ptr.h" @@ -576,6 +580,43 @@ TAO_Advanced_Resource_Factory::input_cdr_allocator_type_locked (void) return this->cdr_allocator_type_ == TAO_ALLOCATOR_NULL_LOCK ? 0 : 1; } +TAO_Connection_Purging_Strategy * +TAO_Advanced_Resource_Factory::create_purging_strategy (void) +{ + TAO_Connection_Purging_Strategy *strategy = 0; + + switch(this->connection_caching_type_) + { + case TAO_Resource_Factory::LFU: + ACE_NEW_RETURN (strategy, + TAO_LFU_Connection_Purging_Strategy (this), + 0); + break; + case TAO_Resource_Factory::FIFO: + ACE_NEW_RETURN (strategy, + TAO_FIFO_Connection_Purging_Strategy (this), + 0); + break; + case TAO_Resource_Factory::NOOP: + ACE_NEW_RETURN (strategy, + TAO_NULL_Connection_Purging_Strategy (this), + 0); + break; + case TAO_Resource_Factory::LRU: + ACE_NEW_RETURN (strategy, + TAO_LRU_Connection_Purging_Strategy (this), + 0); + break; + default: + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("TAO (%P|%t) - ") + ACE_TEXT ("Unknown connection purging strategy ") + ACE_TEXT ("type was found.\n"))); + } + + return strategy; +} + TAO_LF_Strategy * TAO_Advanced_Resource_Factory::create_lf_strategy (void) { diff --git a/TAO/tao/Strategies/advanced_resource.h b/TAO/tao/Strategies/advanced_resource.h index 2bde16d5ed1..e1d34974678 100644 --- a/TAO/tao/Strategies/advanced_resource.h +++ b/TAO/tao/Strategies/advanced_resource.h @@ -14,6 +14,8 @@ #include "tao/ORB_Core.h" +class TAO_Connection_Purging_Strategy; + class TAO_Strategies_Export TAO_Resource_Factory_Changer { public: @@ -86,6 +88,7 @@ public: virtual TAO_Priority_Mapping *get_priority_mapping (void); + virtual TAO_Connection_Purging_Strategy *create_purging_strategy (void); virtual TAO_LF_Strategy *create_lf_strategy (void); protected: |