summaryrefslogtreecommitdiff
path: root/saltoqd/storagemanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'saltoqd/storagemanager.h')
-rw-r--r--saltoqd/storagemanager.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/saltoqd/storagemanager.h b/saltoqd/storagemanager.h
new file mode 100644
index 0000000..fa97a8d
--- /dev/null
+++ b/saltoqd/storagemanager.h
@@ -0,0 +1,29 @@
+#ifndef STORAGEMANAGER_H
+#define STORAGEMANAGER_H
+
+#include "toqmanager.h"
+
+class StorageManager : public QObject, public ToqManager::EndpointHandler
+{
+ Q_OBJECT
+public:
+ explicit StorageManager(ToqManager *toq);
+
+ void handleMessage(const ToqConnection::Message &msg) Q_DECL_OVERRIDE;
+
+ void updateStore(const QString &id, const QByteArray &data);
+
+private:
+ void handleGetStoreMessage(const ToqConnection::Message &msg);
+
+ struct Store {
+ QByteArray data;
+ quint32 checksum;
+ };
+
+private:
+ ToqManager *_toq;
+ QHash<QString, QByteArray> _stores;
+};
+
+#endif // STORAGEMANAGER_H