diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/CosEvent')
42 files changed, 265 insertions, 446 deletions
diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp index faa5d2b9ac0..c1044726527 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp @@ -6,7 +6,7 @@ #include "CEC_ProxyPushConsumer.h" #include "CEC_EventChannel.h" -#include "orbsvcs/ESF/ESF_Shutdown_Proxy.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.h" #if ! defined (__ACE_INLINE__) #include "CEC_ConsumerAdmin.i" diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h index 980431bedbb..a56cbbed72f 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h @@ -15,17 +15,17 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Proxy_Admin.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h" #include "CEC_ProxyPushSupplier.h" #include "CEC_ProxyPullSupplier.h" -#include "event_serv_export.h" +#include "event_export.h" class TAO_CEC_EventChannel; @@ -45,7 +45,7 @@ class TAO_CEC_EventChannel; * externally. * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_ConsumerAdmin +class TAO_Event_Export TAO_CEC_ConsumerAdmin : public POA_CosEventChannelAdmin::ConsumerAdmin { public: diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp index 180466d987e..80f1bcfbdb6 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp @@ -49,17 +49,6 @@ TAO_CEC_ConsumerControl::system_exception (TAO_CEC_ProxyPushSupplier *, { } -bool -TAO_CEC_ConsumerControl::need_to_disconnect (PortableServer::ServantBase*) -{ - return true; -} - -void -TAO_CEC_ConsumerControl::successful_transmission (PortableServer::ServantBase*) -{ -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) #elif defined(ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h index f3a405d26c7..07293872b3f 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h @@ -21,8 +21,8 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "tao/PortableServer/PortableServerC.h" -#include "orbsvcs/CosEvent/event_serv_export.h" + +#include "orbsvcs/orbsvcs/CosEvent/event_export.h" class TAO_CEC_EventChannel; class TAO_CEC_ProxyPushSupplier; @@ -44,7 +44,7 @@ namespace CORBA * = LOCKING * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_ConsumerControl +class TAO_Event_Export TAO_CEC_ConsumerControl { public: /// Constructor. It does not assume ownership of the <event_channel> @@ -80,15 +80,6 @@ public: virtual void system_exception (TAO_CEC_ProxyPushSupplier *proxy, CORBA::SystemException & ACE_ENV_ARG_DECL_NOT_USED); - - /// Do we need to disconnect this supplier? The parameter type for - /// proxy is PortableServer::ServantBase* due to the fact that this - /// method will be used for TAO_CEC_ProxyPushSupplier's and - /// TAO_CEC_ProxyPullSupplier's. - virtual bool need_to_disconnect (PortableServer::ServantBase* proxy); - - /// Allow others to inform us when a send or receive was successful. - virtual void successful_transmission (PortableServer::ServantBase* proxy); }; #if defined (__ACE_INLINE__) diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp index 6be89cac48a..58f079b3cd9 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp @@ -13,12 +13,12 @@ #include "CEC_Reactive_ConsumerControl.h" #include "CEC_Reactive_SupplierControl.h" -#include "orbsvcs/ESF/ESF_Immediate_Changes.h" -#include "orbsvcs/ESF/ESF_Delayed_Changes.h" -#include "orbsvcs/ESF/ESF_Copy_On_Write.h" -#include "orbsvcs/ESF/ESF_Copy_On_Read.h" -#include "orbsvcs/ESF/ESF_Proxy_List.h" -#include "orbsvcs/ESF/ESF_Proxy_RB_Tree.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Copy_On_Write.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_List.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.h" #include "ace/Arg_Shifter.h" #include "ace/Sched_Params.h" @@ -334,8 +334,7 @@ TAO_CEC_Default_Factory::init (int argc, ACE_TCHAR* argv[]) } } - else if (ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECConsumerControlTimeout")) == 0 || - ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECConsumerControlRoundtripTimeout")) == 0) + else if (ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECConsumerControlTimeout")) == 0) { arg_shifter.consume_arg (); @@ -348,8 +347,7 @@ TAO_CEC_Default_Factory::init (int argc, ACE_TCHAR* argv[]) } } - else if (ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECSupplierControlTimeout")) == 0 || - ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECSupplierControlRoundtripTimeout")) == 0) + else if (ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECSupplierControlTimeout")) == 0) { arg_shifter.consume_arg (); @@ -362,18 +360,6 @@ TAO_CEC_Default_Factory::init (int argc, ACE_TCHAR* argv[]) } } - else if (ACE_OS::strcasecmp (arg, ACE_LIB_TEXT("-CECProxyDisconnectRetries")) == 0) - { - arg_shifter.consume_arg (); - - if (arg_shifter.is_parameter_next ()) - { - const ACE_TCHAR* opt = arg_shifter.get_current (); - this->proxy_disconnect_retries_ = ACE_OS::atoi (opt); - arg_shifter.consume_arg (); - } - } - else if (ACE_OS::strncmp (arg, ACE_LIB_TEXT("-CEC"), 3) == 0) { arg_shifter.consume_arg (); @@ -447,9 +433,8 @@ TAO_CEC_Default_Factory::create_pulling_strategy (TAO_CEC_EventChannel *ec) CORBA::ORB_init (argc, argv, this->orbid_); ACE_Time_Value rate (0, this->reactive_pulling_period_); - return new TAO_CEC_Reactive_Pulling_Strategy ( - rate, this->supplier_control_timeout_, - ec, orb.in ()); + return new TAO_CEC_Reactive_Pulling_Strategy (rate, ec, + orb.in ()); } return 0; } @@ -1229,10 +1214,7 @@ TAO_CEC_Default_Factory::create_consumer_control (TAO_CEC_EventChannel* ec) CORBA::ORB_init (argc, argv, this->orbid_); ACE_Time_Value rate (0, this->consumer_control_period_); - return new TAO_CEC_Reactive_ConsumerControl ( - rate, this->consumer_control_timeout_, - this->proxy_disconnect_retries_, - ec, orb.in ()); + return new TAO_CEC_Reactive_ConsumerControl (rate, consumer_control_timeout_, ec, orb.in ()); } return 0; } @@ -1251,10 +1233,7 @@ TAO_CEC_Default_Factory::create_consumer_control (TAO_CEC_TypedEventChannel* ec) CORBA::ORB_init (argc, argv, this->orbid_); ACE_Time_Value rate (0, this->consumer_control_period_); - return new TAO_CEC_Reactive_ConsumerControl ( - rate, this->consumer_control_timeout_, - this->proxy_disconnect_retries_, - ec, orb.in ()); + return new TAO_CEC_Reactive_ConsumerControl (rate, consumer_control_timeout_, ec, orb.in ()); } return 0; } @@ -1278,11 +1257,8 @@ TAO_CEC_Default_Factory::create_supplier_control (TAO_CEC_EventChannel* ec) CORBA::ORB_var orb = CORBA::ORB_init (argc, argv, this->orbid_); - ACE_Time_Value rate (0, this->supplier_control_period_); - return new TAO_CEC_Reactive_SupplierControl ( - rate, this->supplier_control_timeout_, - this->proxy_disconnect_retries_, - ec, orb.in ()); + ACE_Time_Value rate (0, this->consumer_control_period_); + return new TAO_CEC_Reactive_SupplierControl (rate, supplier_control_timeout_, ec, orb.in ()); } return 0; } @@ -1300,11 +1276,8 @@ TAO_CEC_Default_Factory::create_supplier_control (TAO_CEC_TypedEventChannel* ec) CORBA::ORB_var orb = CORBA::ORB_init (argc, argv, this->orbid_); - ACE_Time_Value rate (0, this->supplier_control_period_); - return new TAO_CEC_Reactive_SupplierControl ( - rate, this->supplier_control_timeout_, - this->proxy_disconnect_retries_, - ec, orb.in ()); + ACE_Time_Value rate (0, this->consumer_control_period_); + return new TAO_CEC_Reactive_SupplierControl (rate, supplier_control_timeout_, ec, orb.in ()); } return 0; } @@ -1324,7 +1297,7 @@ ACE_STATIC_SVC_DEFINE (TAO_CEC_Default_Factory, &ACE_SVC_NAME (TAO_CEC_Default_Factory), ACE_Service_Type::DELETE_THIS | ACE_Service_Type::DELETE_OBJ, 0) -ACE_FACTORY_DEFINE (TAO_Event_Serv, TAO_CEC_Default_Factory) +ACE_FACTORY_DEFINE (TAO_Event, TAO_CEC_Default_Factory) // **************************************************************** diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h index d314e1785ca..07536f4627c 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h @@ -38,7 +38,7 @@ * set in the service configurator file. * = MEMORY MANAGMENT */ -class TAO_Event_Serv_Export TAO_CEC_Default_Factory : public TAO_CEC_Factory +class TAO_Event_Export TAO_CEC_Default_Factory : public TAO_CEC_Factory { public: /// Constructor @@ -199,9 +199,6 @@ private: /// The consumer and supplier control timeout in usecs ACE_Time_Value consumer_control_timeout_; ACE_Time_Value supplier_control_timeout_; - - /// The number of retries before disconnecting a proxy - unsigned int proxy_disconnect_retries_; }; #if defined (__ACE_INLINE__) @@ -209,7 +206,7 @@ private: #endif /* __ACE_INLINE__ */ ACE_STATIC_SVC_DECLARE (TAO_CEC_Default_Factory) -ACE_FACTORY_DECLARE (TAO_Event_Serv, TAO_CEC_Default_Factory) +ACE_FACTORY_DECLARE (TAO_Event, TAO_CEC_Default_Factory) #include /**/ "ace/post.h" diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i index b039316d2cb..f7699383cb4 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i @@ -20,7 +20,6 @@ TAO_CEC_Default_Factory::TAO_CEC_Default_Factory (void) consumer_control_period_ (TAO_CEC_DEFAULT_CONSUMER_CONTROL_PERIOD), supplier_control_period_ (TAO_CEC_DEFAULT_SUPPLIER_CONTROL_PERIOD), consumer_control_timeout_ (0, TAO_CEC_DEFAULT_CONSUMER_CONTROL_TIMEOUT), - supplier_control_timeout_ (0, TAO_CEC_DEFAULT_SUPPLIER_CONTROL_TIMEOUT), - proxy_disconnect_retries_ (TAO_CEC_DEFAULT_PROXY_DISCONNECT_RETRIES) + supplier_control_timeout_ (0, TAO_CEC_DEFAULT_SUPPLIER_CONTROL_TIMEOUT) { } diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h index 5a97e4bd902..8cf65a09905 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h @@ -118,10 +118,6 @@ # define TAO_CEC_DEFAULT_SUPPLIER_CONTROL_TIMEOUT 10000 /* usecs */ #endif /* TAO_CEC_DEFAULT_SUPPLIER_CONTROL_TIMEOUT */ -#ifndef TAO_CEC_DEFAULT_PROXY_DISCONNECT_RETRIES -# define TAO_CEC_DEFAULT_PROXY_DISCONNECT_RETRIES 0 -#endif /* TAO_CEC_DEFAULT_PROXY_DISCONNECT_RETRIES */ - #include /**/ "ace/post.h" #endif /* TAO_CEC_DEFAULTS_H */ diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h index a6ba0f8a724..b121b22e54d 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h @@ -16,9 +16,9 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventCommC.h" +#include "orbsvcs/orbsvcs/CosEventCommC.h" -#include "event_serv_export.h" +#include "event_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -40,7 +40,7 @@ class TAO_CEC_TypedEvent; * for each queue or can simply push the event to the consumer in * FIFO order. */ -class TAO_Event_Serv_Export TAO_CEC_Dispatching +class TAO_Event_Export TAO_CEC_Dispatching { public: /// destructor... @@ -84,7 +84,7 @@ public: * The events are dispatched in FIFO ordering, using the invoking * thread to push the event to the consumer. */ -class TAO_Event_Serv_Export TAO_CEC_Reactive_Dispatching : public TAO_CEC_Dispatching +class TAO_Event_Export TAO_CEC_Reactive_Dispatching : public TAO_CEC_Dispatching { public: /// The scheduler is used to find the range of priorities and similar diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h index fe5b698b592..ac24df18469 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h @@ -28,7 +28,7 @@ #include "tao/Basic_Types.h" #include "tao/Objref_VarOut_T.h" -#include "orbsvcs/CosEvent/event_serv_export.h" +#include "orbsvcs/orbsvcs/CosEvent/event_export.h" #include "CEC_ProxyPushSupplier.h" @@ -43,7 +43,7 @@ * dispatching. * */ -class TAO_Event_Serv_Export TAO_CEC_Dispatching_Task : public ACE_Task<ACE_SYNCH> +class TAO_Event_Export TAO_CEC_Dispatching_Task : public ACE_Task<ACE_SYNCH> { public: /// Constructor @@ -72,7 +72,7 @@ private: // **************************************************************** -class TAO_Event_Serv_Export TAO_CEC_Dispatch_Command : public ACE_Message_Block +class TAO_Event_Export TAO_CEC_Dispatch_Command : public ACE_Message_Block { public: /// Constructor, it will allocate its own data block @@ -91,7 +91,7 @@ public: // **************************************************************** -class TAO_Event_Serv_Export TAO_CEC_Shutdown_Task_Command : public TAO_CEC_Dispatch_Command +class TAO_Event_Export TAO_CEC_Shutdown_Task_Command : public TAO_CEC_Dispatch_Command { public: /// Constructor @@ -103,7 +103,7 @@ public: // **************************************************************** -class TAO_Event_Serv_Export TAO_CEC_Push_Command : public TAO_CEC_Dispatch_Command +class TAO_Event_Export TAO_CEC_Push_Command : public TAO_CEC_Dispatch_Command { public: /// Constructor @@ -129,7 +129,7 @@ private: // **************************************************************** #if defined (TAO_HAS_TYPED_EVENT_CHANNEL) -class TAO_Event_Serv_Export TAO_CEC_Invoke_Command : public TAO_CEC_Dispatch_Command +class TAO_Event_Export TAO_CEC_Invoke_Command : public TAO_CEC_Dispatch_Command { public: /// Constructor diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp index df029202c74..ee171b6bbc8 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp @@ -227,14 +227,3 @@ TAO_CEC_EventChannel::destroy (ACE_ENV_SINGLE_ARG_DECL) { this->shutdown (ACE_ENV_SINGLE_ARG_PARAMETER); } - -#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) -template class ACE_Hash_Map_Manager_Ex<PortableServer::ServantBase*, unsigned int, ServantBaseHash, ACE_Equal_To<PortableServer::ServantBase*>, TAO_SYNCH_MUTEX>; -template class ACE_Hash_Map_Entry<PortableServer::ServantBase*, unsigned int>; - -#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) -#pragma instantiate ACE_Hash_Map_Manager_Ex<PortableServer::ServantBase*, unsigned int, ServantBaseHash, ACE_Equal_To<PortableServer::ServantBase*>, TAO_SYNCH_MUTEX> -#pragma instantiate ACE_Hash_Map_Entry<PortableServer::ServantBase*, unsigned int> - -#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h index 55f9282abe2..90c4e9cd216 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h @@ -26,11 +26,10 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #include "CEC_Defaults.h" -#include "event_serv_export.h" -#include "ace/Hash_Map_Manager.h" +#include "event_export.h" /** * @class TAO_CEC_EventChannel_Attributes @@ -48,7 +47,7 @@ * an easy mechanism to extend the attributes without requiring * changes in the EC constructor. */ -class TAO_Event_Serv_Export TAO_CEC_EventChannel_Attributes +class TAO_Event_Export TAO_CEC_EventChannel_Attributes { public: /** @@ -98,23 +97,9 @@ private: * ConsumerAdmin and Dispatching) and to provide a simpler * interface to the CEC_Factory. */ -class TAO_Event_Serv_Export TAO_CEC_EventChannel : public POA_CosEventChannelAdmin::EventChannel +class TAO_Event_Export TAO_CEC_EventChannel : public POA_CosEventChannelAdmin::EventChannel { public: - class ServantBaseHash - { - public: - u_long operator() (PortableServer::ServantBase* const & ptr) const { - return ACE_reinterpret_cast(u_long, ptr); - } - }; - - typedef ACE_Hash_Map_Manager_Ex<PortableServer::ServantBase*, - unsigned int, - ServantBaseHash, - ACE_Equal_To<PortableServer::ServantBase*>, - TAO_SYNCH_MUTEX> ServantRetryMap; - /** * constructor * If <own_factory> is not 0 it assumes ownership of the factory. @@ -253,8 +238,6 @@ public: virtual void destroy (ACE_ENV_SINGLE_ARG_DECL) ACE_THROW_SPEC ((CORBA::SystemException)); - ServantRetryMap& get_servant_retry_map (void); - private: /// The POAs used to activate "supplier-side" and "consumer-side" /// objects. @@ -294,8 +277,6 @@ private: /// suppliers TAO_CEC_ConsumerControl *consumer_control_; TAO_CEC_SupplierControl *supplier_control_; - - ServantRetryMap retry_map_; }; #if defined (__ACE_INLINE__) diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i index 256d518b72a..563dc6e69e0 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i @@ -192,8 +192,3 @@ TAO_CEC_EventChannel::disconnect_callbacks (void) const return this->disconnect_callbacks_; } -ACE_INLINE TAO_CEC_EventChannel::ServantRetryMap& -TAO_CEC_EventChannel::get_servant_retry_map (void) -{ - return this->retry_map_; -} diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.cpp index 78f11357d3e..a7f8408d45f 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.cpp @@ -18,9 +18,9 @@ #include "CEC_Event_Loader.h" #include "ace/Dynamic_Service.h" -#include "orbsvcs/CosNamingC.h" -#include "orbsvcs/CosEvent/CEC_EventChannel.h" -#include "orbsvcs/CosEvent/CEC_Default_Factory.h" +#include "orbsvcs/orbsvcs/CosNamingC.h" +#include "orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h" +#include "orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h" #include "ace/Get_Opt.h" #include "ace/Argv_Type_Converter.h" @@ -459,7 +459,7 @@ TAO_CEC_Event_Loader::fini (void) return 0; } -ACE_FACTORY_DEFINE (TAO_Event_Serv, TAO_CEC_Event_Loader) +ACE_FACTORY_DEFINE (TAO_Event, TAO_CEC_Event_Loader) #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class ACE_Dynamic_Service<TAO_CEC_Event_Loader>; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.h index d48c98c3705..4d4ca86a992 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Event_Loader.h @@ -23,7 +23,7 @@ #include "CEC_TypedEventChannel.h" #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */ -#include "orbsvcs/CosNamingC.h" +#include "orbsvcs/orbsvcs/CosNamingC.h" #include "ace/Service_Config.h" @@ -32,7 +32,7 @@ * * @brief Dynamically load an instance of the COS Event Service. */ -class TAO_Event_Serv_Export TAO_CEC_Event_Loader : public TAO_Object_Loader +class TAO_Event_Export TAO_CEC_Event_Loader : public TAO_Object_Loader { public: /// Constructor @@ -98,6 +98,6 @@ private: ACE_UNIMPLEMENTED_FUNC (TAO_CEC_Event_Loader &operator= (const TAO_CEC_Event_Loader &)) }; -ACE_FACTORY_DECLARE (TAO_Event_Serv, TAO_CEC_Event_Loader) +ACE_FACTORY_DECLARE (TAO_Event, TAO_CEC_Event_Loader) #endif /* TAO_CEC_EVENT_LOADER_H */ diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Factory.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Factory.h index 7161eb63dfd..248ef824c76 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Factory.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Factory.h @@ -22,7 +22,7 @@ #include "tao/Objref_VarOut_T.h" -#include "event_serv_export.h" +#include "event_export.h" class ACE_Lock; @@ -70,7 +70,7 @@ typedef TAO_ESF_Proxy_Collection<TAO_CEC_ProxyPullSupplier> TAO_CEC_ProxyPullSup * Some implementations may require a different instance for the * CEC_Factory for each instance of a CEC_EventChannel. */ -class TAO_Event_Serv_Export TAO_CEC_Factory : public ACE_Service_Object +class TAO_Event_Export TAO_CEC_Factory : public ACE_Service_Object { public: /// destructor... diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h index d3a706ff5b8..ba779b69f40 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h @@ -34,7 +34,7 @@ class TAO_CEC_EventChannel; * threads. It's main purpose is to decouple the suppliers from * the client execution time, specially in the collocated case. */ -class TAO_Event_Serv_Export TAO_CEC_MT_Dispatching : public TAO_CEC_Dispatching +class TAO_Event_Export TAO_CEC_MT_Dispatching : public TAO_CEC_Dispatching { public: /// Constructor diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp index fd172f89e1d..592b10354b4 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp @@ -28,13 +28,10 @@ TAO_CEC_ProxyPullConsumer:: this->default_POA_ = this->event_channel_->consumer_poa (); - - this->event_channel_->get_servant_retry_map ().bind (this, 0); } TAO_CEC_ProxyPullConsumer::~TAO_CEC_ProxyPullConsumer (void) { - this->event_channel_->get_servant_retry_map ().unbind (this); this->event_channel_->destroy_consumer_lock (this->lock_); } @@ -113,24 +110,24 @@ TAO_CEC_ProxyPullConsumer::try_pull_from_supplier ( } CORBA::Any_var any; - TAO_CEC_SupplierControl *control = - this->event_channel_->supplier_control (); - ACE_TRY { any = supplier->try_pull (has_event ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - - // Inform the control that we got something from the supplier - control->successful_transmission(this); } ACE_CATCH (CORBA::OBJECT_NOT_EXIST, ex) { + TAO_CEC_SupplierControl *control = + this->event_channel_->supplier_control (); + control->supplier_not_exist (this ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; } ACE_CATCH (CORBA::SystemException, sysex) { + TAO_CEC_SupplierControl *control = + this->event_channel_->supplier_control (); + control->system_exception (this, sysex ACE_ENV_ARG_PARAMETER); diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h index 35fae60d38e..415ae07b47e 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h @@ -15,14 +15,14 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Worker.h" -#include "event_serv_export.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" +#include "event_export.h" class TAO_CEC_EventChannel; class TAO_CEC_Dispatching; @@ -41,7 +41,7 @@ class TAO_CEC_ProxyPullSupplier; * The object commits suicide when disconnect_pull_consumer() is * called. */ -class TAO_Event_Serv_Export TAO_CEC_ProxyPullConsumer : public POA_CosEventChannelAdmin::ProxyPullConsumer +class TAO_Event_Export TAO_CEC_ProxyPullConsumer : public POA_CosEventChannelAdmin::ProxyPullConsumer { public: typedef CosEventChannelAdmin::ProxyPullConsumer_ptr _ptr_type; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp index b5b75ae5f43..32cbc3086f1 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp @@ -27,13 +27,10 @@ TAO_CEC_ProxyPullSupplier::TAO_CEC_ProxyPullSupplier (TAO_CEC_EventChannel* ec) this->default_POA_ = this->event_channel_->supplier_poa (); - - this->event_channel_->get_servant_retry_map ().bind (this, 0); } TAO_CEC_ProxyPullSupplier::~TAO_CEC_ProxyPullSupplier (void) { - this->event_channel_->get_servant_retry_map ().unbind (this); this->event_channel_->destroy_supplier_lock (this->lock_); } diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h index 1f7a0a603d4..85922eb8922 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h @@ -16,7 +16,7 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -26,7 +26,7 @@ #include "ace/Condition_Thread_Mutex.h" #include "ace/Unbounded_Queue.h" -#include "event_serv_export.h" +#include "event_export.h" class TAO_CEC_EventChannel; class TAO_CEC_ProxyPullConsumer; @@ -48,7 +48,7 @@ class TAO_CEC_ProxyPullConsumer; * Locking is strategized, the event channel acts as a factory for * the locking strategies. */ -class TAO_Event_Serv_Export TAO_CEC_ProxyPullSupplier : public POA_CosEventChannelAdmin::ProxyPullSupplier +class TAO_Event_Export TAO_CEC_ProxyPullSupplier : public POA_CosEventChannelAdmin::ProxyPullSupplier { public: typedef CosEventChannelAdmin::ProxyPullSupplier_ptr _ptr_type; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp index cadc6623315..434769bbb9d 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp @@ -28,13 +28,10 @@ TAO_CEC_ProxyPushConsumer:: this->default_POA_ = this->event_channel_->consumer_poa (); - - this->event_channel_->get_servant_retry_map ().bind (this, 0); } TAO_CEC_ProxyPushConsumer::~TAO_CEC_ProxyPushConsumer (void) { - this->event_channel_->get_servant_retry_map ().unbind (this); this->event_channel_->destroy_consumer_lock (this->lock_); } diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h index d16697cb4bd..aee97b6f167 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h @@ -15,14 +15,14 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" -#include "event_serv_export.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" +#include "event_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Worker.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" class TAO_CEC_EventChannel; class TAO_CEC_Dispatching; @@ -41,7 +41,7 @@ class TAO_CEC_ProxyPushSupplier; * The object commits suicide when disconnect_push_consumer() is * called. */ -class TAO_Event_Serv_Export TAO_CEC_ProxyPushConsumer +class TAO_Event_Export TAO_CEC_ProxyPushConsumer : public POA_CosEventChannelAdmin::ProxyPushConsumer { public: @@ -151,7 +151,7 @@ private: * the reference count on the proxy, eliminating the need to hold * mutexes during long operations. */ -class TAO_Event_Serv_Export TAO_CEC_ProxyPushConsumer_Guard +class TAO_Event_Export TAO_CEC_ProxyPushConsumer_Guard { public: /// Constructor diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp index eb188dd30f9..2deb6110383 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp @@ -10,8 +10,8 @@ #include "CEC_Dispatching.h" #include "CEC_EventChannel.h" #include "CEC_ConsumerControl.h" -#include "orbsvcs/ESF/ESF_RefCount_Guard.h" -#include "orbsvcs/ESF/ESF_Proxy_RefCount_Guard.h" +#include "orbsvcs/orbsvcs/ESF/ESF_RefCount_Guard.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_RefCount_Guard.h" #include "tao/debug.h" #if defined (TAO_HAS_TYPED_EVENT_CHANNEL) #include "CEC_TypedEvent.h" @@ -46,8 +46,6 @@ TAO_CEC_ProxyPushSupplier::TAO_CEC_ProxyPushSupplier (TAO_CEC_EventChannel* ec) this->default_POA_ = this->event_channel_->supplier_poa (); - - this->event_channel_->get_servant_retry_map ().bind (this, 0); } // TAO_CEC_ProxyPushSupplier Constructure (Typed EC) @@ -63,14 +61,11 @@ TAO_CEC_ProxyPushSupplier::TAO_CEC_ProxyPushSupplier (TAO_CEC_TypedEventChannel* this->default_POA_ = this->typed_event_channel_->typed_supplier_poa (); - - this->event_channel_->get_servant_retry_map ().bind (this, 0); } #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */ TAO_CEC_ProxyPushSupplier::~TAO_CEC_ProxyPushSupplier (void) { - this->event_channel_->get_servant_retry_map ().unbind (this); #if defined (TAO_HAS_TYPED_EVENT_CHANNEL) if (this->is_typed_ec () ) { @@ -603,23 +598,24 @@ TAO_CEC_ProxyPushSupplier::push_to_consumer (const CORBA::Any& event CosEventComm::PushConsumer::_duplicate (this->consumer_.in ()); } - TAO_CEC_ConsumerControl *control = - this->event_channel_->consumer_control (); ACE_TRY { consumer->push (event ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - - // Inform the control that we were able to push something - control->successful_transmission(this); } ACE_CATCH (CORBA::OBJECT_NOT_EXIST, not_used) { + TAO_CEC_ConsumerControl *control = + this->event_channel_->consumer_control (); + control->consumer_not_exist (this ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; } ACE_CATCH (CORBA::SystemException, sysex) { + TAO_CEC_ConsumerControl *control = + this->event_channel_->consumer_control (); + control->system_exception (this, sysex ACE_ENV_ARG_PARAMETER); @@ -647,24 +643,24 @@ TAO_CEC_ProxyPushSupplier::reactive_push_to_consumer ( CosEventComm::PushConsumer::_duplicate (this->consumer_.in ()); } - TAO_CEC_ConsumerControl *control = - this->event_channel_->consumer_control (); - ACE_TRY { consumer->push (event ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - - // Inform the control that we were able to push something - control->successful_transmission(this); } ACE_CATCH (CORBA::OBJECT_NOT_EXIST, not_used) { + TAO_CEC_ConsumerControl *control = + this->event_channel_->consumer_control (); + control->consumer_not_exist (this ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; } ACE_CATCH (CORBA::SystemException, sysex) { + TAO_CEC_ConsumerControl *control = + this->event_channel_->consumer_control (); + control->system_exception (this, sysex ACE_ENV_ARG_PARAMETER); diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h index 1e05d9e7e41..d87dd7977dd 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h @@ -16,13 +16,13 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #if defined (TAO_HAS_TYPED_EVENT_CHANNEL) -#include "orbsvcs/CosTypedEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosTypedEventChannelAdminS.h" #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */ -#include "event_serv_export.h" +#include "event_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -52,7 +52,7 @@ class TAO_CEC_TypedEventChannel; * Locking is strategized, the event channel acts as a factory for * the locking strategies. */ -class TAO_Event_Serv_Export TAO_CEC_ProxyPushSupplier : public POA_CosEventChannelAdmin::ProxyPushSupplier +class TAO_Event_Export TAO_CEC_ProxyPushSupplier : public POA_CosEventChannelAdmin::ProxyPushSupplier { public: typedef CosEventChannelAdmin::ProxyPushSupplier_ptr _ptr_type; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h index b4c0c970545..f1811d51f40 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h @@ -23,7 +23,7 @@ #include "tao/Objref_VarOut_T.h" -#include "orbsvcs/CosEvent/event_serv_export.h" +#include "orbsvcs/orbsvcs/CosEvent/event_export.h" /** * @class TAO_CEC_Pulling_Strategy @@ -36,7 +36,7 @@ * for each queue or can simply push the event to the consumer in * FIFO order. */ -class TAO_Event_Serv_Export TAO_CEC_Pulling_Strategy +class TAO_Event_Export TAO_CEC_Pulling_Strategy { public: /// destructor... diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp index 795ba286da9..0fed2f2298e 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp @@ -12,8 +12,6 @@ #include "CEC_ProxyPushSupplier.h" #include "CEC_ProxyPullSupplier.h" -#include "orbsvcs/Time_Utilities.h" - #include "tao/Messaging/Messaging.h" #include "tao/ORB_Core.h" @@ -30,12 +28,10 @@ ACE_RCSID (CosEvent, TAO_CEC_Reactive_ConsumerControl:: TAO_CEC_Reactive_ConsumerControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_EventChannel *ec, CORBA::ORB_ptr orb) : rate_ (rate), timeout_ (timeout), - retries_ (retries), adapter_ (this), event_channel_ (ec), orb_ (CORBA::ORB::_duplicate (orb)) @@ -54,12 +50,10 @@ TAO_CEC_Reactive_ConsumerControl:: TAO_CEC_Reactive_ConsumerControl:: TAO_CEC_Reactive_ConsumerControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_TypedEventChannel *ec, CORBA::ORB_ptr orb) : rate_ (rate), timeout_ (timeout), - retries_ (retries), adapter_ (this), typed_event_channel_ (ec), orb_ (CORBA::ORB::_duplicate (orb)) @@ -110,37 +104,6 @@ TAO_CEC_Reactive_ConsumerControl::query_consumers ( #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */ } -bool -TAO_CEC_Reactive_ConsumerControl::need_to_disconnect ( - PortableServer::ServantBase* proxy) -{ - bool disconnect = true; - TAO_CEC_EventChannel::ServantRetryMap::ENTRY* entry; - if (this->event_channel_-> - get_servant_retry_map ().find (proxy, entry) == 0) - { - ++entry->int_id_; - if (entry->int_id_ <= this->retries_) - { - disconnect = false; - } - } - - return disconnect; -} - -void -TAO_CEC_Reactive_ConsumerControl::successful_transmission ( - PortableServer::ServantBase* proxy) -{ - TAO_CEC_EventChannel::ServantRetryMap::ENTRY* entry; - if (this->event_channel_-> - get_servant_retry_map ().find (proxy, entry) == 0) - { - entry->int_id_ = 0; - } -} - void TAO_CEC_Reactive_ConsumerControl::handle_timeout ( const ACE_Time_Value &, @@ -162,17 +125,9 @@ TAO_CEC_Reactive_ConsumerControl::handle_timeout ( ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - ACE_TRY_EX (query) - { - // Query the state of the consumers... - this->query_consumers (ACE_ENV_SINGLE_ARG_PARAMETER); - ACE_TRY_CHECK_EX (query); - } - ACE_CATCHANY - { - // Ignore all exceptions - } - ACE_ENDTRY; + // Query the state of the consumers... + this->query_consumers (ACE_ENV_SINGLE_ARG_PARAMETER); + ACE_TRY_CHECK; this->policy_current_->set_policy_overrides (policies.in (), CORBA::SET_OVERRIDE @@ -208,12 +163,8 @@ TAO_CEC_Reactive_ConsumerControl::activate (void) ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - // Pre-compute the policy list to the set the right timeout - // value... - // We need to convert the relative timeout into 100's of nano seconds. - TimeBase::TimeT timeout; - ORBSVCS_Time::Time_Value_to_TimeT (timeout, - this->timeout_); + // Timeout for polling state (default = 10 msec) + TimeBase::TimeT timeout = timeout_.usec() * 10; CORBA::Any any; any <<= timeout; @@ -307,11 +258,18 @@ TAO_CEC_Reactive_ConsumerControl::system_exception ( { ACE_TRY { - if (this->need_to_disconnect (proxy)) - { - proxy->disconnect_push_supplier (ACE_ENV_SINGLE_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + // Anything else is serious, including timeouts... + proxy->disconnect_push_supplier (ACE_ENV_SINGLE_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { @@ -363,11 +321,17 @@ TAO_CEC_Ping_Push_Consumer::work (TAO_CEC_ProxyPushSupplier *supplier } ACE_CATCH (CORBA::TRANSIENT, transient) { - if (this->control_->need_to_disconnect (supplier)) - { - this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { @@ -402,11 +366,17 @@ TAO_CEC_Ping_Pull_Consumer::work (TAO_CEC_ProxyPullSupplier *supplier } ACE_CATCH (CORBA::TRANSIENT, transient) { - if (this->control_->need_to_disconnect (supplier)) - { - this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h index 43994062fd0..164e7588496 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h @@ -21,7 +21,7 @@ #include "CEC_ConsumerControl.h" -#include "orbsvcs/ESF/ESF_Worker.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" #include "tao/ORB.h" @@ -48,7 +48,7 @@ class TAO_CEC_TypedEventChannel; * periodically wakeup and verify the state of the consumers * registered with the Event Channel. */ -class TAO_Event_Serv_Export TAO_CEC_ConsumerControl_Adapter : public ACE_Event_Handler +class TAO_Event_Export TAO_CEC_ConsumerControl_Adapter : public ACE_Event_Handler { public: /// Constructor @@ -74,7 +74,7 @@ private: * = LOCKING * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_Reactive_ConsumerControl +class TAO_Event_Export TAO_CEC_Reactive_ConsumerControl : public TAO_CEC_ConsumerControl { public: @@ -82,7 +82,6 @@ public: /// parameter. TAO_CEC_Reactive_ConsumerControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_EventChannel *event_channel, CORBA::ORB_ptr orb); @@ -91,7 +90,6 @@ public: TAO_CEC_Reactive_ConsumerControl ( const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_TypedEventChannel *typed_event_channel, CORBA::ORB_ptr orb ); @@ -115,15 +113,6 @@ public: CORBA::SystemException & ACE_ENV_ARG_DECL_NOT_USED); - /// Do we need to disconnect this supplier? The parameter type for - /// proxy is PortableServer::ServantBase* due to the fact that this - /// method will be used for TAO_CEC_ProxyPushSupplier's and - /// TAO_CEC_ProxyPullSupplier's. - virtual bool need_to_disconnect (PortableServer::ServantBase* proxy); - - /// Allow others to inform us when a send or receive was successful. - virtual void successful_transmission (PortableServer::ServantBase* proxy); - private: /// Check if the consumers still exists. It is a helper method for /// handle_timeout() to isolate the exceptions. @@ -136,9 +125,6 @@ private: /// The polling timeout ACE_Time_Value timeout_; - /// The number of retries per proxy until it is disconnected - unsigned int retries_; - /// The Adapter for the reactor events TAO_CEC_ConsumerControl_Adapter adapter_; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp index 470f8a98292..dec3c06aa2f 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp @@ -6,8 +6,6 @@ #include "CEC_SupplierAdmin.h" #include "CEC_ConsumerAdmin.h" -#include "orbsvcs/Time_Utilities.h" - #include "tao/Messaging/Messaging.h" #include "tao/ORB_Core.h" @@ -21,12 +19,10 @@ ACE_RCSID(CosEvent, CEC_Reactive_Pulling_Strategy, "$Id$") TAO_CEC_Reactive_Pulling_Strategy:: TAO_CEC_Reactive_Pulling_Strategy (const ACE_Time_Value &rate, - const ACE_Time_Value &relative_timeout, TAO_CEC_EventChannel *event_channel, CORBA::ORB_ptr orb) : adapter_ (this), rate_ (rate), - relative_timeout_ (relative_timeout), event_channel_ (event_channel), orb_ (CORBA::ORB::_duplicate (orb)) { @@ -55,20 +51,12 @@ TAO_CEC_Reactive_Pulling_Strategy::handle_timeout ( ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - ACE_TRY_EX (query) - { - TAO_CEC_Pull_Event worker (this->event_channel_->consumer_admin (), - this->event_channel_->supplier_control ()); + TAO_CEC_Pull_Event worker (this->event_channel_->consumer_admin (), + this->event_channel_->supplier_control ()); - this->event_channel_->supplier_admin ()->for_each (&worker - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK_EX (query); - } - ACE_CATCHANY - { - // Ignore all exceptions - } - ACE_ENDTRY; + this->event_channel_->supplier_admin ()->for_each (&worker + ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; this->policy_current_->set_policy_overrides (policies.in (), CORBA::SET_OVERRIDE @@ -113,10 +101,8 @@ TAO_CEC_Reactive_Pulling_Strategy::activate (void) // Pre-compute the policy list to the set the right timeout // value... - // We need to convert the relative timeout into 100's of nano seconds. - TimeBase::TimeT timeout; - ORBSVCS_Time::Time_Value_to_TimeT (timeout, - this->relative_timeout_); + // @@ TODO It is currently hard-coded to 10 milliseconds + TimeBase::TimeT timeout = 10 * 10000; CORBA::Any any; any <<= timeout; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h index 0ee810190e2..cf38a4aa8b9 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h @@ -21,10 +21,9 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Worker.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" #include "tao/ORB.h" -#include "tao/PolicyC.h" #include "ace/Event_Handler.h" @@ -43,7 +42,7 @@ class TAO_CEC_Reactive_Pulling_Strategy; * periodically wakeup and try top pull events from each * PullSupplier connected to the EventChannel. */ -class TAO_Event_Serv_Export TAO_CEC_Pulling_Strategy_Adapter : public ACE_Event_Handler +class TAO_Event_Export TAO_CEC_Pulling_Strategy_Adapter : public ACE_Event_Handler { public: /// Constructor @@ -68,13 +67,12 @@ private: * The events are dispatched in FIFO ordering, using the invoking * thread to push the event to the consumer. */ -class TAO_Event_Serv_Export TAO_CEC_Reactive_Pulling_Strategy : public TAO_CEC_Pulling_Strategy +class TAO_Event_Export TAO_CEC_Reactive_Pulling_Strategy : public TAO_CEC_Pulling_Strategy { public: /// The scheduler is used to find the range of priorities and similar /// info. TAO_CEC_Reactive_Pulling_Strategy (const ACE_Time_Value &rate, - const ACE_Time_Value &relative_timeout, TAO_CEC_EventChannel *event_channel, CORBA::ORB_ptr orb); @@ -93,9 +91,6 @@ private: /// The polling rate ACE_Time_Value rate_; - /// The relative timeout - ACE_Time_Value relative_timeout_; - /// The event channel TAO_CEC_EventChannel *event_channel_; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp index 351b24a2fdc..f0745b949e8 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp @@ -13,8 +13,6 @@ #include "CEC_ProxyPullConsumer.h" -#include "orbsvcs/Time_Utilities.h" - #include "tao/Messaging/Messaging.h" #include "tao/ORB_Core.h" @@ -31,12 +29,10 @@ ACE_RCSID (CosEvent, TAO_CEC_Reactive_SupplierControl:: TAO_CEC_Reactive_SupplierControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_EventChannel *ec, CORBA::ORB_ptr orb) : rate_ (rate), timeout_ (timeout), - retries_ (retries), adapter_ (this), event_channel_ (ec), orb_ (CORBA::ORB::_duplicate (orb)) @@ -55,12 +51,10 @@ TAO_CEC_Reactive_SupplierControl:: TAO_CEC_Reactive_SupplierControl:: TAO_CEC_Reactive_SupplierControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_TypedEventChannel *ec, CORBA::ORB_ptr orb) : rate_ (rate), timeout_ (timeout), - retries_ (retries), adapter_ (this), typed_event_channel_ (ec), orb_ (CORBA::ORB::_duplicate (orb)) @@ -112,37 +106,6 @@ TAO_CEC_Reactive_SupplierControl::query_suppliers ( #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */ } -bool -TAO_CEC_Reactive_SupplierControl::need_to_disconnect ( - PortableServer::ServantBase* proxy) -{ - bool disconnect = true; - TAO_CEC_EventChannel::ServantRetryMap::ENTRY* entry; - if (this->event_channel_-> - get_servant_retry_map ().find (proxy, entry) == 0) - { - ++entry->int_id_; - if (entry->int_id_ <= this->retries_) - { - disconnect = false; - } - } - - return disconnect; -} - -void -TAO_CEC_Reactive_SupplierControl::successful_transmission ( - PortableServer::ServantBase* proxy) -{ - TAO_CEC_EventChannel::ServantRetryMap::ENTRY* entry; - if (this->event_channel_-> - get_servant_retry_map ().find (proxy, entry) == 0) - { - entry->int_id_ = 0; - } -} - void TAO_CEC_Reactive_SupplierControl::handle_timeout ( const ACE_Time_Value &, @@ -164,17 +127,9 @@ TAO_CEC_Reactive_SupplierControl::handle_timeout ( ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - ACE_TRY_EX (query) - { - // Query the state of the suppliers... - this->query_suppliers (ACE_ENV_SINGLE_ARG_PARAMETER); - ACE_TRY_CHECK_EX (query); - } - ACE_CATCHANY - { - // Ignore all exceptions - } - ACE_ENDTRY; + // Query the state of the suppliers... + this->query_suppliers (ACE_ENV_SINGLE_ARG_PARAMETER); + ACE_TRY_CHECK; this->policy_current_->set_policy_overrides (policies.in (), CORBA::SET_OVERRIDE @@ -210,12 +165,8 @@ TAO_CEC_Reactive_SupplierControl::activate (void) ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - // Pre-compute the policy list to the set the right timeout - // value... - // We need to convert the relative timeout into 100's of nano seconds. - TimeBase::TimeT timeout; - ORBSVCS_Time::Time_Value_to_TimeT (timeout, - this->timeout_); + // Timeout for polling state (default = 10 msec) + TimeBase::TimeT timeout = timeout_.usec() * 10; CORBA::Any any; any <<= timeout; @@ -324,11 +275,18 @@ TAO_CEC_Reactive_SupplierControl::system_exception ( { ACE_TRY { - if (this->need_to_disconnect (proxy)) - { - proxy->disconnect_pull_consumer (ACE_ENV_SINGLE_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + // Anything else is serious, including timeouts... + proxy->disconnect_pull_consumer (ACE_ENV_SINGLE_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { @@ -380,11 +338,18 @@ TAO_CEC_Ping_Push_Supplier::work (TAO_CEC_ProxyPushConsumer *consumer } ACE_CATCH (CORBA::TRANSIENT, transient) { - if (this->control_->need_to_disconnect (consumer)) - { - this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + // Anything else is serious, including timeouts... + this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { @@ -420,11 +385,18 @@ TAO_CEC_Ping_Typed_Push_Supplier::work (TAO_CEC_TypedProxyPushConsumer *consumer } ACE_CATCH (CORBA::TRANSIENT, transient) { - if (this->control_->need_to_disconnect (consumer)) - { - this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + // Anything else is serious, including timeouts... + this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { @@ -460,11 +432,18 @@ TAO_CEC_Ping_Pull_Supplier::work (TAO_CEC_ProxyPullConsumer *consumer } ACE_CATCH (CORBA::TRANSIENT, transient) { - if (this->control_->need_to_disconnect (consumer)) - { - this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - } + // The current implementation is very strict, and kicks out a + // client on the first system exception. We may + // want to be more lenient in the future, for example, + // this is TAO's minor code for a failed connection. + // + // if (CORBA::TRANSIENT::_narrow (&exception) != 0 + // && exception->minor () == 0x54410085) + // return; + + // Anything else is serious, including timeouts... + this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } ACE_CATCHANY { diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h index bede8d09893..1aefc64bb71 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h @@ -25,7 +25,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Worker.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" #include "tao/ORB.h" @@ -47,7 +47,7 @@ class TAO_CEC_TypedEventChannel; * periodically wakeup and verify the state of the suppliers * registered with the Event Channel. */ -class TAO_Event_Serv_Export TAO_CEC_SupplierControl_Adapter +class TAO_Event_Export TAO_CEC_SupplierControl_Adapter : public ACE_Event_Handler { public: @@ -74,7 +74,7 @@ private: * = LOCKING * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_Reactive_SupplierControl +class TAO_Event_Export TAO_CEC_Reactive_SupplierControl : public TAO_CEC_SupplierControl { public: @@ -82,7 +82,6 @@ public: /// parameter. TAO_CEC_Reactive_SupplierControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_EventChannel *event_channel, CORBA::ORB_ptr orb); @@ -91,7 +90,6 @@ public: TAO_CEC_Reactive_SupplierControl ( const ACE_Time_Value &rate, const ACE_Time_Value &timeout, - unsigned int retries, TAO_CEC_TypedEventChannel *typed_event_channel, CORBA::ORB_ptr orb ); @@ -119,15 +117,6 @@ public: CORBA::SystemException & ACE_ENV_ARG_DECL_NOT_USED); - /// Do we need to disconnect this supplier? The parameter type for - /// proxy is PortableServer::ServantBase* due to the fact that this - /// method will be used for TAO_CEC_ProxyPushSupplier's and - /// TAO_CEC_ProxyPullSupplier's. - virtual bool need_to_disconnect (PortableServer::ServantBase* proxy); - - /// Allow others to inform us when a send or receive was successful. - virtual void successful_transmission (PortableServer::ServantBase* proxy); - private: /// Check if the suppliers still exists. It is a helper method for /// handle_timeout() to isolate the exceptions. @@ -140,9 +129,6 @@ private: /// The polling timeout ACE_Time_Value timeout_; - /// The number of retries per proxy until it is disconnected - unsigned int retries_; - /// The Adapter for the reactor events TAO_CEC_SupplierControl_Adapter adapter_; diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp index a2837a9b7eb..1335ad5b02e 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp @@ -4,7 +4,7 @@ #include "CEC_ProxyPushConsumer.h" #include "CEC_ProxyPullConsumer.h" #include "CEC_EventChannel.h" -#include "orbsvcs/ESF/ESF_Shutdown_Proxy.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.h" #if ! defined (__ACE_INLINE__) #include "CEC_SupplierAdmin.i" diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h index 38f312bdc53..2fdab582804 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h @@ -19,17 +19,17 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Proxy_Admin.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h" #include "CEC_ProxyPushConsumer.h" #include "CEC_ProxyPullConsumer.h" -#include "event_serv_export.h" +#include "event_export.h" class TAO_CEC_EventChannel; @@ -49,7 +49,7 @@ class TAO_CEC_EventChannel; * externally. * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_SupplierAdmin +class TAO_Event_Export TAO_CEC_SupplierAdmin : public POA_CosEventChannelAdmin::SupplierAdmin { public: diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp index 788cc6b7852..28ffbd85d1e 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp @@ -55,17 +55,6 @@ TAO_CEC_SupplierControl::system_exception (TAO_CEC_ProxyPullConsumer *, { } -bool -TAO_CEC_SupplierControl::need_to_disconnect (PortableServer::ServantBase*) -{ - return true; -} - -void -TAO_CEC_SupplierControl::successful_transmission (PortableServer::ServantBase*) -{ -} - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) #elif defined(ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h index 7875e543f34..b65cfc52350 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h @@ -26,10 +26,9 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "tao/PortableServer/PortableServerC.h" #include "tao/Objref_VarOut_T.h" -#include "orbsvcs/CosEvent/event_serv_export.h" +#include "orbsvcs/orbsvcs/CosEvent/event_export.h" class TAO_CEC_EventChannel; class TAO_CEC_ProxyPushConsumer; @@ -55,7 +54,7 @@ namespace CORBA * = LOCKING * = TODO */ -class TAO_Event_Serv_Export TAO_CEC_SupplierControl +class TAO_Event_Export TAO_CEC_SupplierControl { public: /// Constructor. It does not assume ownership of the <event_channel> @@ -95,15 +94,6 @@ public: virtual void system_exception (TAO_CEC_ProxyPullConsumer *proxy, CORBA::SystemException & ACE_ENV_ARG_DECL_NOT_USED); - - /// Do we need to disconnect this supplier? The parameter type for - /// proxy is PortableServer::ServantBase* due to the fact that this - /// method will be used for TAO_CEC_ProxyPushSupplier's and - /// TAO_CEC_ProxyPullSupplier's. - virtual bool need_to_disconnect (PortableServer::ServantBase* proxy); - - /// Allow others to inform us when a send or receive was successful. - virtual void successful_transmission (PortableServer::ServantBase* proxy); }; #if defined (__ACE_INLINE__) diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedConsumerAdmin.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedConsumerAdmin.h index 1e08da77de5..9dce04452c9 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedConsumerAdmin.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedConsumerAdmin.h @@ -16,13 +16,13 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosTypedEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosTypedEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Proxy_Admin.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h" #include "CEC_ProxyPushSupplier.h" #include "CEC_TypedEvent.h" @@ -30,7 +30,7 @@ class TAO_CEC_TypedEventChannel; //Class TAO_CEC_TypedConsumerAdmin -class TAO_Event_Serv_Export TAO_CEC_TypedConsumerAdmin +class TAO_Event_Export TAO_CEC_TypedConsumerAdmin : public POA_CosTypedEventChannelAdmin::TypedConsumerAdmin { public: diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEvent.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEvent.h index d0ee1cfa917..3eac4f3f572 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEvent.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEvent.h @@ -12,7 +12,7 @@ #define TAO_CEC_TYPEDEVENT_H_ #include /**/ "ace/pre.h" -#include "event_serv_export.h" +#include "event_export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once @@ -34,7 +34,7 @@ class TAO_CEC_ProxyPushSupplier; -class TAO_Event_Serv_Export TAO_CEC_TypedEvent +class TAO_Event_Export TAO_CEC_TypedEvent { public: /// constructors... diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h index 1119ef34170..6db51475183 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h @@ -23,9 +23,9 @@ #endif /* ACE_LACKS_PRAGMA_ONCE */ #include "CEC_Defaults.h" -#include "event_serv_export.h" +#include "event_export.h" -#include "orbsvcs/CosTypedEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosTypedEventChannelAdminS.h" #include "tao/IFR_Client/IFR_BasicC.h" #include "tao/NVList.h" @@ -50,7 +50,7 @@ * an easy mechanism to extend the attributes without requiring * changes in the EC constructor. */ -class TAO_Event_Serv_Export TAO_CEC_TypedEventChannel_Attributes +class TAO_Event_Export TAO_CEC_TypedEventChannel_Attributes { public: /** @@ -105,7 +105,7 @@ private: class TAO_CEC_Operation_Params; //Class TAO_CEC_TypedEventChannel -class TAO_Event_Serv_Export TAO_CEC_TypedEventChannel : public virtual POA_CosTypedEventChannelAdmin::TypedEventChannel +class TAO_Event_Export TAO_CEC_TypedEventChannel : public virtual POA_CosTypedEventChannelAdmin::TypedEventChannel { public: @@ -322,7 +322,7 @@ private: }; -class TAO_Event_Serv_Export TAO_CEC_Param +class TAO_Event_Export TAO_CEC_Param { public: /// Constructor @@ -341,7 +341,7 @@ private: }; -class TAO_Event_Serv_Export TAO_CEC_Operation_Params +class TAO_Event_Export TAO_CEC_Operation_Params { /// constructor TAO_CEC_Operation_Params (CORBA::ULong num_params); diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h index de3210df73b..3ae216f6a4b 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h @@ -16,21 +16,20 @@ #define TAO_CEC_TYPEDPROXYPUSHCONSUMER_H_ #include /**/ "ace/pre.h" -#include "orbsvcs/CosTypedEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosTypedEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Worker.h" -#include "event_serv_export.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Worker.h" class TAO_CEC_TypedEvent; class TAO_CEC_TypedEventChannel; class TAO_CEC_DynamicImplementationServer; //Class TAO_CEC_TypedProxyPushConsumer -class TAO_Event_Serv_Export TAO_CEC_TypedProxyPushConsumer +class TAO_Event_Export TAO_CEC_TypedProxyPushConsumer : public virtual POA_CosTypedEventChannelAdmin::TypedProxyPushConsumer { public: @@ -148,7 +147,7 @@ private: * the reference count on the proxy, eliminating the need to hold * mutexes during long operations. */ -class TAO_Event_Serv_Export TAO_CEC_TypedProxyPushConsumer_Guard +class TAO_Event_Export TAO_CEC_TypedProxyPushConsumer_Guard { public: /// Constructor diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedSupplierAdmin.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedSupplierAdmin.h index ac42bd0ca8b..7f0d3002bc8 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedSupplierAdmin.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedSupplierAdmin.h @@ -19,20 +19,20 @@ #include /**/ "ace/pre.h" -#include "orbsvcs/CosTypedEventChannelAdminS.h" +#include "orbsvcs/orbsvcs/CosTypedEventChannelAdminS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "orbsvcs/ESF/ESF_Proxy_Admin.h" +#include "orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h" #include "CEC_TypedProxyPushConsumer.h" class TAO_CEC_TypedEventChannel; //Class TAO_CEC_TypedSupplierAdmin -class TAO_Event_Serv_Export TAO_CEC_TypedSupplierAdmin +class TAO_Event_Export TAO_CEC_TypedSupplierAdmin : public POA_CosTypedEventChannelAdmin::TypedSupplierAdmin { public: diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/Makefile.am b/TAO/orbsvcs/orbsvcs/CosEvent/Makefile.am new file mode 100644 index 00000000000..4e1ad8fc3fb --- /dev/null +++ b/TAO/orbsvcs/orbsvcs/CosEvent/Makefile.am @@ -0,0 +1,42 @@ +##--------------------------------------------------------------------------- +## $Id$ +## +## Makefile for TAO's CosEvent Service library +## +##--------------------------------------------------------------------------- + +## +## Process this file with automake to create Makefile.in +## + +## The number in AUTOMAKE_OPTIONS is the minimum required version automake +## needed to process this file. +AUTOMAKE_OPTIONS = 1.4 + +INCLUDES = -I$(top_builddir) -I$(top_srcdir) + +lib_LTLIBRARIES = libTAO_CosEvent.la + +libTAO_CosEvent_la_LDADD = \ + $(top_builddir)/ace/libACE.la $(top_builddir)/TAO/tao/libTAO.la + +libTAO_CosEvent_la_SOURCES = \ + ConsumerAdmin_i.cpp \ + EventChannel_i.cpp \ + ProxyPushConsumer_i.cpp \ + ProxyPushSupplier_i.cpp \ + SupplierAdmin_i.cpp + +noinst_HEADERS = \ + ConsumerAdmin_i.h \ + EventChannel_i.h \ + ProxyPushConsumer_i.h \ + ProxyPushSupplier_i.h \ + SupplierAdmin_i.h + +## Clean up some additional files/directories possibly created during +## the configure script tests. +clean-local: + -rm -f *.bak *.rpo *.sym lib*.*_pure_* Makefile.old core + -rm -rf ptrepository Templates.DB gcctemp.c gcctemp so_locations + |