Go to the documentation of this file.00001
00002
00003 #ifndef NOTIFICATIONSERVICEMONITOR_I_H
00004 #define NOTIFICATIONSERVICEMONITOR_I_H
00005
00006 #include "ace/pre.h"
00007
00008 #include "orbsvcs/Notify/MonitorControl/NotificationServiceMCS.h"
00009
00010 #include "tao/ORB.h"
00011
00012 #if defined (TAO_HAS_MONITOR_FRAMEWORK) && (TAO_HAS_MONITOR_FRAMEWORK == 1)
00013
00014 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00015
00016 namespace ACE
00017 {
00018 namespace Monitor_Control
00019 {
00020 class Monitor_Point_Registry;
00021 }
00022 }
00023
00024 ACE_END_VERSIONED_NAMESPACE_DECL
00025
00026 using namespace ACE_VERSIONED_NAMESPACE_NAME::ACE::Monitor_Control;
00027
00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00029
00030 class TAO_Notify_MC_Export NotificationServiceMonitor_i
00031 : public virtual POA_CosNotification::NotificationServiceMonitorControl
00032 {
00033 public:
00034
00035
00036 NotificationServiceMonitor_i (CORBA::ORB_ptr orb = 0);
00037
00038
00039 virtual Monitor::NameList* get_statistic_names (void);
00040
00041
00042 virtual Monitor::Data*
00043 get_statistic (const char* name);
00044
00045
00046 virtual Monitor::DataList*
00047 get_statistics (const Monitor::NameList& names);
00048
00049
00050
00051 virtual Monitor::DataList*
00052 get_and_clear_statistics (const Monitor::NameList& names);
00053
00054
00055 virtual void clear_statistics (const Monitor::NameList& names);
00056
00057
00058 virtual void shutdown_event_channel (const char* name);
00059
00060
00061 virtual void remove_consumer (const char* name);
00062
00063
00064 virtual void remove_supplier (const char* name);
00065
00066
00067 virtual void remove_consumeradmin (const char* name);
00068
00069
00070 virtual void remove_supplieradmin (const char* name);
00071
00072
00073 virtual void shutdown (void);
00074
00075 private:
00076 void send_control_command (const char* name, const char* cmd);
00077
00078 void get_data (Monitor_Point_Registry* registry,
00079 const char* name,
00080 Monitor::Data& data);
00081
00082 void get_invalid_names (Monitor_Point_Registry* registry,
00083 const Monitor::NameList& names,
00084 Monitor::NameList& invalid);
00085
00086 CORBA::ORB_var orb_;
00087 };
00088
00089 TAO_END_VERSIONED_NAMESPACE_DECL
00090
00091 #endif
00092
00093 #include "ace/post.h"
00094
00095 #endif