diff --git a/include/maxscale/monitor.hh b/include/maxscale/monitor.hh index a98ef0826..9e86c88d2 100644 --- a/include/maxscale/monitor.hh +++ b/include/maxscale/monitor.hh @@ -134,7 +134,7 @@ public: static void destroyInstance(MXS_MONITOR_INSTANCE* pInstance) { - MXS_EXCEPTION_GUARD(static_cast(pInstance)->destroy()); + MXS_EXCEPTION_GUARD(delete static_cast(pInstance)); } static bool startMonitor(MXS_MONITOR_INSTANCE* pInstance, diff --git a/server/modules/monitor/auroramon/auroramon.cc b/server/modules/monitor/auroramon/auroramon.cc index 8392b1c74..f759e2155 100644 --- a/server/modules/monitor/auroramon/auroramon.cc +++ b/server/modules/monitor/auroramon/auroramon.cc @@ -40,11 +40,6 @@ AuroraMonitor* AuroraMonitor::create(MXS_MONITOR* monitor) return new AuroraMonitor(monitor); } -void AuroraMonitor::destroy() -{ - delete this; -} - /** * @brief Update the status of a server * diff --git a/server/modules/monitor/auroramon/auroramon.hh b/server/modules/monitor/auroramon/auroramon.hh index c62b724c4..3085113fe 100644 --- a/server/modules/monitor/auroramon/auroramon.hh +++ b/server/modules/monitor/auroramon/auroramon.hh @@ -26,14 +26,13 @@ public: AuroraMonitor(const AuroraMonitor&) = delete; AuroraMonitor& operator = (const AuroraMonitor&) = delete; + ~AuroraMonitor(); static AuroraMonitor* create(MXS_MONITOR* monitor); - void destroy(); void diagnostics(DCB* dcb) const; json_t* diagnostics_json() const; private: AuroraMonitor(MXS_MONITOR* monitor); - ~AuroraMonitor(); void update_server_status(MXS_MONITORED_SERVER* monitored_server); diff --git a/server/modules/monitor/galeramon/galeramon.cc b/server/modules/monitor/galeramon/galeramon.cc index 8bd3efa6a..afcdc5199 100644 --- a/server/modules/monitor/galeramon/galeramon.cc +++ b/server/modules/monitor/galeramon/galeramon.cc @@ -142,11 +142,6 @@ GaleraMonitor* GaleraMonitor::create(MXS_MONITOR* monitor) return new GaleraMonitor(monitor); } -void GaleraMonitor::destroy() -{ - delete this; -} - bool GaleraMonitor::has_sufficient_permissions() const { return check_monitor_permissions(m_monitor, "SHOW STATUS LIKE 'wsrep_local_state'"); diff --git a/server/modules/monitor/galeramon/galeramon.hh b/server/modules/monitor/galeramon/galeramon.hh index 6903fc19d..a01c8bf65 100644 --- a/server/modules/monitor/galeramon/galeramon.hh +++ b/server/modules/monitor/galeramon/galeramon.hh @@ -58,8 +58,8 @@ public: GaleraMonitor(const GaleraMonitor&) = delete; GaleraMonitor& operator = (const GaleraMonitor&) = delete; + ~GaleraMonitor(); static GaleraMonitor* create(MXS_MONITOR* monitor); - void destroy(); void diagnostics(DCB* dcb) const; json_t* diagnostics_json() const; @@ -78,7 +78,6 @@ private: bool m_log_no_members; /**< Should we log if no member are found. */ GaleraMonitor(MXS_MONITOR* monitor); - ~GaleraMonitor(); bool detect_cluster_size(const int n_nodes, const char *candidate_uuid, diff --git a/server/modules/monitor/grmon/grmon.cc b/server/modules/monitor/grmon/grmon.cc index f2b8b3773..595c7bd5e 100644 --- a/server/modules/monitor/grmon/grmon.cc +++ b/server/modules/monitor/grmon/grmon.cc @@ -40,11 +40,6 @@ GRMon* GRMon::create(MXS_MONITOR* monitor) return new GRMon(monitor); } -void GRMon::destroy() -{ - delete this; -} - bool GRMon::has_sufficient_permissions() const { return true; diff --git a/server/modules/monitor/grmon/grmon.hh b/server/modules/monitor/grmon/grmon.hh index bdd28cc65..3edfe1cf2 100644 --- a/server/modules/monitor/grmon/grmon.hh +++ b/server/modules/monitor/grmon/grmon.hh @@ -26,14 +26,13 @@ public: GRMon(const GRMon&) = delete; GRMon& operator&(const GRMon&) = delete; + ~GRMon(); static GRMon* create(MXS_MONITOR* monitor); - void destroy(); void diagnostics(DCB* dcb) const; json_t* diagnostics_json() const; private: GRMon(MXS_MONITOR* monitor); - ~GRMon(); void update_server_status(MXS_MONITORED_SERVER* monitored_server); diff --git a/server/modules/monitor/mariadbmon/mariadbmon.cc b/server/modules/monitor/mariadbmon/mariadbmon.cc index e273cb57d..796535bb5 100644 --- a/server/modules/monitor/mariadbmon/mariadbmon.cc +++ b/server/modules/monitor/mariadbmon/mariadbmon.cc @@ -173,11 +173,6 @@ bool MariaDBMonitor::start(const MXS_CONFIG_PARAMETER* params) return !error; } -void MariaDBMonitor::destroy() -{ - delete this; -} - /** * Load config parameters * diff --git a/server/modules/monitor/mariadbmon/mariadbmon.hh b/server/modules/monitor/mariadbmon/mariadbmon.hh index 45002bb56..72efe4391 100644 --- a/server/modules/monitor/mariadbmon/mariadbmon.hh +++ b/server/modules/monitor/mariadbmon/mariadbmon.hh @@ -42,6 +42,8 @@ private: public: // TODO: Once done refactoring, see which of these can be moved to private. + ~MariaDBMonitor(); + /** * Print diagnostics. * @@ -78,11 +80,6 @@ public: */ bool start(const MXS_CONFIG_PARAMETER* params); - /** - * Destroyes aka deletes the instance. - */ - void destroy(); - /** * Stop the monitor. Waits until monitor has stopped. */ @@ -171,7 +168,6 @@ private: // Base methods MariaDBMonitor(MXS_MONITOR* monitor_base); - ~MariaDBMonitor(); void reset_server_info(); void clear_server_info(); bool load_config_params(const MXS_CONFIG_PARAMETER* params); diff --git a/server/modules/monitor/mmmon/mmmon.cc b/server/modules/monitor/mmmon/mmmon.cc index 4a08c1e5d..3dcc679c1 100644 --- a/server/modules/monitor/mmmon/mmmon.cc +++ b/server/modules/monitor/mmmon/mmmon.cc @@ -101,11 +101,6 @@ MMMonitor* MMMonitor::create(MXS_MONITOR* monitor) return new MMMonitor(monitor); } -void MMMonitor::destroy() -{ - delete this; -} - bool MMMonitor::has_sufficient_permissions() const { return check_monitor_permissions(m_monitor, "SHOW SLAVE STATUS"); diff --git a/server/modules/monitor/mmmon/mmmon.hh b/server/modules/monitor/mmmon/mmmon.hh index 70ff26c22..d8f8947ad 100644 --- a/server/modules/monitor/mmmon/mmmon.hh +++ b/server/modules/monitor/mmmon/mmmon.hh @@ -26,8 +26,8 @@ public: MMMonitor(const MMMonitor&) = delete; MMMonitor& operator = (const MMMonitor&) = delete; + ~MMMonitor(); static MMMonitor* create(MXS_MONITOR* monitor); - void destroy(); void diagnostics(DCB* dcb) const; json_t* diagnostics_json() const; @@ -36,7 +36,6 @@ private: int m_detectStaleMaster; /**< Monitor flag for Stale Master detection */ MMMonitor(MXS_MONITOR* monitor); - ~MMMonitor(); MXS_MONITORED_SERVER *get_current_master(); diff --git a/server/modules/monitor/ndbclustermon/ndbclustermon.cc b/server/modules/monitor/ndbclustermon/ndbclustermon.cc index 5f87da3c6..d28b4ed58 100644 --- a/server/modules/monitor/ndbclustermon/ndbclustermon.cc +++ b/server/modules/monitor/ndbclustermon/ndbclustermon.cc @@ -86,11 +86,6 @@ NDBCMonitor* NDBCMonitor::create(MXS_MONITOR* monitor) return new NDBCMonitor(monitor); } -void NDBCMonitor::destroy() -{ - delete this; -} - bool NDBCMonitor::has_sufficient_permissions() const { return check_monitor_permissions(m_monitor, "SHOW STATUS LIKE 'Ndb_number_of_ready_data_nodes'"); diff --git a/server/modules/monitor/ndbclustermon/ndbclustermon.hh b/server/modules/monitor/ndbclustermon/ndbclustermon.hh index 369b27bcc..f26249af3 100644 --- a/server/modules/monitor/ndbclustermon/ndbclustermon.hh +++ b/server/modules/monitor/ndbclustermon/ndbclustermon.hh @@ -26,8 +26,8 @@ public: NDBCMonitor(const NDBCMonitor&) = delete; NDBCMonitor& operator = (const NDBCMonitor&) = delete; + ~NDBCMonitor(); static NDBCMonitor* create(MXS_MONITOR* monitor); - void destroy(); void diagnostics(DCB* dcb) const; json_t* diagnostics_json() const; @@ -35,7 +35,6 @@ private: unsigned long m_id; /**< Monitor ID */ NDBCMonitor(MXS_MONITOR* monitor); - ~NDBCMonitor(); void update_server_status(MXS_MONITORED_SERVER* monitored_server);