00001 /** 00002 * @file MC_Notify_Service.h 00003 * 00004 * $Id: MC_Notify_Service.h 87253 2009-10-28 23:29:32Z dai_y $ 00005 * 00006 * @author Chad Elliott <elliott_c@ociweb.com> 00007 */ 00008 00009 #ifndef TAO_MC_NOTIFY_SERVICE_H 00010 #define TAO_MC_NOTIFY_SERVICE_H 00011 00012 #include /**/ "ace/pre.h" 00013 00014 #include "orbsvcs/Notify/CosNotify_Service.h" 00015 00016 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00017 # pragma once 00018 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00019 00020 #include "orbsvcs/Notify/MonitorControlExt/notify_mc_ext_export.h" 00021 00022 #if defined (TAO_HAS_MONITOR_FRAMEWORK) && (TAO_HAS_MONITOR_FRAMEWORK == 1) 00023 00024 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00025 00026 /** 00027 * @class TAO_MC_Notify_Service 00028 * 00029 * @brief Implemetation of the TAO_Notify_Service interface for Monitoring 00030 * 00031 */ 00032 class TAO_Notify_MC_Ext_Export TAO_MC_Notify_Service: public TAO_CosNotify_Service 00033 { 00034 public: 00035 virtual ~TAO_MC_Notify_Service (void); 00036 00037 protected: 00038 virtual void init_i (CORBA::ORB_ptr orb); 00039 virtual void init_i2 (CORBA::ORB_ptr orb, CORBA::ORB_ptr dispatching_orb); 00040 virtual void finalize_service ( 00041 CosNotifyChannelAdmin::EventChannelFactory_ptr factory); 00042 00043 private: 00044 virtual TAO_Notify_Factory* create_factory (void); 00045 }; 00046 00047 TAO_END_VERSIONED_NAMESPACE_DECL 00048 00049 #define TAO_NOTIFY_MONITOR_CONTROL_EXTENSION "TAO_MC_Notify_Service" 00050 ACE_FACTORY_DECLARE (TAO_Notify_MC_Ext, TAO_MC_Notify_Service) 00051 00052 #if defined(TAO_AS_STATIC_LIBS) 00053 00054 ACE_STATIC_SVC_DECLARE (TAO_MC_Notify_Service) 00055 00056 #endif 00057 00058 00059 #endif /* TAO_HAS_MONITOR_FRAMEWORK==1 */ 00060 00061 #include /**/ "ace/post.h" 00062 00063 #endif /* TAO_MC_NOTIFY_SERVICE_H */