MXS-2271 All monitors inherit from MXS_MONITOR

Most of the API entrypoints are replaced with virtual functions.
This commit is contained in:
Esa Korhonen
2019-01-18 17:27:41 +02:00
parent 17fc2ba88a
commit dadb6a1a79
19 changed files with 94 additions and 118 deletions

View File

@ -34,9 +34,8 @@
static void detectStaleMaster(void*, int);
static bool isMySQLEvent(mxs_monitor_event_t event);
MMMonitor::MMMonitor(MXS_MONITOR* monitor)
: maxscale::MonitorInstanceSimple(monitor)
, m_detectStaleMaster(false)
MMMonitor::MMMonitor()
: m_detectStaleMaster(false)
{
}
@ -45,9 +44,9 @@ MMMonitor::~MMMonitor()
}
// static
MMMonitor* MMMonitor::create(MXS_MONITOR* monitor)
MMMonitor* MMMonitor::create()
{
return new MMMonitor(monitor);
return new MMMonitor();
}
void MMMonitor::diagnostics(DCB* dcb) const

View File

@ -26,7 +26,7 @@ public:
MMMonitor& operator=(const MMMonitor&) = delete;
~MMMonitor();
static MMMonitor* create(MXS_MONITOR* monitor);
static MMMonitor* create();
void diagnostics(DCB* dcb) const;
json_t* diagnostics_json() const;
@ -39,7 +39,7 @@ protected:
private:
int m_detectStaleMaster; /**< Monitor flag for Stale Master detection */
MMMonitor(MXS_MONITOR* monitor);
MMMonitor();
MXS_MONITORED_SERVER* get_current_master();
};