00001 /* -*- C++ -*- */ 00002 /** 00003 * @file Default_Factory.h 00004 * 00005 * $Id: Default_Factory.h 79084 2007-07-30 13:13:45Z elliott_c $ 00006 * 00007 * @author Pradeep Gore <pradeep@oomworks.com> 00008 * 00009 * 00010 */ 00011 00012 #ifndef TAO_Notify_DEFAULT_FACTORY_H 00013 #define TAO_Notify_DEFAULT_FACTORY_H 00014 #include /**/ "ace/pre.h" 00015 00016 #include "orbsvcs/Notify/notify_serv_export.h" 00017 00018 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00019 # pragma once 00020 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00021 00022 #include "orbsvcs/Notify/Factory.h" 00023 00024 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00025 00026 /** 00027 * @class TAO_Notify_Default_Factory 00028 * 00029 * @brief Default_Factory interface for creating Notify Objects. 00030 * 00031 */ 00032 class TAO_Notify_Serv_Export TAO_Notify_Default_Factory : public TAO_Notify_Factory 00033 { 00034 public: 00035 /// Constructor 00036 TAO_Notify_Default_Factory (void); 00037 00038 /// Destructor 00039 virtual ~TAO_Notify_Default_Factory (); 00040 00041 /// Create ProxySupplier Collection 00042 virtual void create (TAO_Notify_ProxySupplier_Collection*& collection); 00043 00044 /// Create ProxyConsumer Collection 00045 virtual void create (TAO_Notify_ProxyConsumer_Collection*& collection); 00046 00047 /// Create EventChannel Collection 00048 virtual void create (TAO_Notify_EventChannel_Collection*& collection); 00049 00050 /// Create ConsumerAdmin Collection 00051 virtual void create (TAO_Notify_ConsumerAdmin_Collection*& collection); 00052 00053 /// Create SupplierAdmin Collection 00054 virtual void create (TAO_Notify_SupplierAdmin_Collection*& collection); 00055 00056 /// Create Proxy Collection 00057 virtual void create (TAO_Notify_Proxy_Collection*& collection); 00058 00059 /// Create EventChannelDefault_Factory 00060 virtual void create (TAO_Notify_EventChannelFactory*& channel_factory, 00061 const char* factory_name); 00062 00063 /// Create EventChannel 00064 virtual void create (TAO_Notify_EventChannel*& channel, 00065 const char* ec_name); 00066 00067 /// Create SupplierAdmin 00068 virtual void create (TAO_Notify_SupplierAdmin*& admin); 00069 00070 /// Create ConsumerAdmin 00071 virtual void create (TAO_Notify_ConsumerAdmin*& admin); 00072 00073 /// Create ProxyPushConsumer 00074 virtual void create (TAO_Notify_ProxyPushConsumer*& proxy); 00075 00076 /// Create ProxyPushSupplier 00077 virtual void create (TAO_Notify_ProxyPushSupplier*& proxy); 00078 00079 /// Create CosEC_ProxyPushConsumer 00080 virtual void create (TAO_Notify_CosEC_ProxyPushConsumer*& proxy); 00081 00082 /// Create CosEC_ProxyPushSupplier 00083 virtual void create (TAO_Notify_CosEC_ProxyPushSupplier*& proxy); 00084 00085 /// Create StructuredProxyPushConsumer 00086 virtual void create (TAO_Notify_StructuredProxyPushConsumer*& proxy); 00087 00088 /// Create StructuredProxyPushSupplier 00089 virtual void create (TAO_Notify_StructuredProxyPushSupplier*& proxy); 00090 00091 /// Create SequenceProxyPushConsumer 00092 virtual void create (TAO_Notify_SequenceProxyPushConsumer*& proxy); 00093 00094 /// Create SequenceProxyPushSupplier 00095 virtual void create (TAO_Notify_SequenceProxyPushSupplier*& proxy); 00096 }; 00097 00098 TAO_END_VERSIONED_NAMESPACE_DECL 00099 00100 ACE_FACTORY_DECLARE (TAO_Notify_Serv, TAO_Notify_Default_Factory) 00101 00102 #include /**/ "ace/post.h" 00103 #endif /* TAO_Notify_DEFAULT_FACTORY_H */