summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Event/EC_Factory.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Event/EC_Factory.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/Event/EC_Factory.h53
1 files changed, 16 insertions, 37 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_Factory.h b/TAO/orbsvcs/orbsvcs/Event/EC_Factory.h
index 20fb1863401..4d2750f30a1 100644
--- a/TAO/orbsvcs/orbsvcs/Event/EC_Factory.h
+++ b/TAO/orbsvcs/orbsvcs/Event/EC_Factory.h
@@ -7,11 +7,14 @@
// ORBSVCS Real-time Event Channel
//
// = FILENAME
-// EC_Factory
+// EC_Filter
//
// = AUTHOR
// Carlos O'Ryan (coryan@cs.wustl.edu)
//
+// = DESCRIPTION
+// The abstract factory for all the Event Channel components.
+//
// = CREDITS
// Based on previous work by Tim Harrison (harrison@cs.wustl.edu)
// and other members of the DOC group.
@@ -25,32 +28,25 @@
#ifndef TAO_EC_FACTORY_H
#define TAO_EC_FACTORY_H
-#include "orbsvcs/orbsvcs_export.h"
+#include "tao/corba.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
-#include "tao/corba.h"
-#include "ace/Service_Object.h"
-
class ACE_Lock;
class TAO_EC_Event_Channel;
class TAO_EC_Dispatching;
class TAO_EC_Filter_Builder;
-class TAO_EC_Supplier_Filter_Builder;
class TAO_EC_ConsumerAdmin;
class TAO_EC_SupplierAdmin;
class TAO_EC_ProxyPushConsumer;
class TAO_EC_ProxyPushSupplier;
-class TAO_EC_ObserverStrategy;
-class TAO_EC_ProxyPushSupplier_Set;
-class TAO_EC_Timeout_Generator;
-class TAO_EC_Scheduling_Strategy;
+class TAO_EC_Timer_Module;
-class TAO_ORBSVCS_Export TAO_EC_Factory : public ACE_Service_Object
+class TAO_EC_Factory
{
// = TITLE
// Abstract base class for the Event Channel components.
@@ -80,12 +76,6 @@ public:
destroy_filter_builder (TAO_EC_Filter_Builder*) = 0;
// Create and destroy the filter builder.
- virtual TAO_EC_Supplier_Filter_Builder*
- create_supplier_filter_builder (TAO_EC_Event_Channel*) = 0;
- virtual void
- destroy_supplier_filter_builder (TAO_EC_Supplier_Filter_Builder*) = 0;
- // Create and destroy the filter builder.
-
virtual TAO_EC_ConsumerAdmin*
create_consumer_admin (TAO_EC_Event_Channel*) = 0;
virtual void
@@ -110,29 +100,18 @@ public:
destroy_proxy_push_consumer (TAO_EC_ProxyPushConsumer*) = 0;
// Create and destroy a ProxyPushConsumer
- virtual TAO_EC_Timeout_Generator*
- create_timeout_generator (TAO_EC_Event_Channel*) = 0;
+ virtual TAO_EC_Timer_Module*
+ create_timer_module (TAO_EC_Event_Channel*) = 0;
virtual void
- destroy_timeout_generator (TAO_EC_Timeout_Generator*) = 0;
+ destroy_timer_module (TAO_EC_Timer_Module*) = 0;
// Create and destroy the timer module.
- virtual TAO_EC_ObserverStrategy*
- create_observer_strategy (TAO_EC_Event_Channel*) = 0;
- virtual void
- destroy_observer_strategy (TAO_EC_ObserverStrategy*) = 0;
- // Create and destroy the observer strategy.
-
- virtual TAO_EC_Scheduling_Strategy*
- create_scheduling_strategy (TAO_EC_Event_Channel*) = 0;
- virtual void
- destroy_scheduling_strategy (TAO_EC_Scheduling_Strategy*) = 0;
- // Create and destroy the observer strategy.
-
- virtual TAO_EC_ProxyPushSupplier_Set*
- create_proxy_push_supplier_set (TAO_EC_Event_Channel*) = 0;
- virtual void
- destroy_proxy_push_supplier_set (TAO_EC_ProxyPushSupplier_Set*) = 0;
- // Create and destroy a ProxyPushSupplier_Set
+ virtual PortableServer::POA_ptr
+ consumer_poa (CORBA::Environment& env) = 0;
+ virtual PortableServer::POA_ptr
+ supplier_poa (CORBA::Environment& env) = 0;
+ // The Event Channel uses this methods to control the activation of
+ // the run-time servants.
virtual ACE_Lock* create_consumer_lock (void) = 0;
virtual void destroy_consumer_lock (ACE_Lock*) = 0;