aboutsummaryrefslogtreecommitdiff
path: root/src/Maintenance/maintenance.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Maintenance/maintenance.h')
-rw-r--r--src/Maintenance/maintenance.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/Maintenance/maintenance.h b/src/Maintenance/maintenance.h
new file mode 100644
index 0000000..b7a63a2
--- /dev/null
+++ b/src/Maintenance/maintenance.h
@@ -0,0 +1,33 @@
+#ifndef MAINTENANCE_H
+#define MAINTENANCE_H
+
+#include <QTimer>
+
+#include "Core/CoreObject/coreobject.h"
+#include "Database/databaseinterface.h"
+
+class Maintenance: public QObject
+{
+ Q_OBJECT
+
+public:
+ Maintenance(const QSharedPointer<CoreObject> &coreObject);
+ bool scheduleMaintenance();
+
+private:
+ QSharedPointer<CoreObject> _coreObject;
+
+ // schedule timer
+ QTimer _maintenanceTimer;
+
+private:
+ int updateStats();
+ int pruneBeacons();
+ int pruneServerInfo();
+ int prunePlayers();
+
+private slots:
+ void onMaintenanceTimerAction();
+};
+
+#endif // MAINTENANCE_H