aboutsummaryrefslogtreecommitdiff
path: root/lib/jobs/generated/notifications.h
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2018-04-30 22:33:45 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2018-04-30 22:33:45 +0900
commitfe4afda065fc9a1db64fd8032bad4e10bff3d020 (patch)
tree2a2b784f1a1ada80e83c7969f753ab463e992a57 /lib/jobs/generated/notifications.h
parentae5835b959455d3f4eb86b3a1f3d98f3713bdfbe (diff)
downloadlibquotient-fe4afda065fc9a1db64fd8032bad4e10bff3d020.tar.gz
libquotient-fe4afda065fc9a1db64fd8032bad4e10bff3d020.zip
jobs/generated: GetNotificationsJob
Diffstat (limited to 'lib/jobs/generated/notifications.h')
-rw-r--r--lib/jobs/generated/notifications.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/lib/jobs/generated/notifications.h b/lib/jobs/generated/notifications.h
new file mode 100644
index 00000000..9249a1b7
--- /dev/null
+++ b/lib/jobs/generated/notifications.h
@@ -0,0 +1,77 @@
+/******************************************************************************
+ * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
+ */
+
+#pragma once
+
+#include "../basejob.h"
+
+#include <QtCore/QJsonObject>
+#include <QtCore/QVector>
+
+#include "converters.h"
+
+namespace QMatrixClient
+{
+ // Operations
+
+ class GetNotificationsJob : public BaseJob
+ {
+ public:
+ // Inner data structures
+
+ struct Unsigned
+ {
+ qint64 age;
+ QJsonObject prevContent;
+ QString transactionId;
+ QJsonObject redactedBecause;
+
+ };
+
+ struct Event
+ {
+ QString eventId;
+ QJsonObject content;
+ qint64 originServerTimestamp;
+ QString sender;
+ QString stateKey;
+ QString type;
+ Unsigned unsignedData;
+
+ };
+
+ struct Notification
+ {
+ QVector<QJsonObject> actions;
+ Event event;
+ QString profileTag;
+ bool read;
+ QString roomId;
+ qint64 ts;
+
+ };
+
+ // End of inner data structures
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * GetNotificationsJob. This function can be used when
+ * a URL for GetNotificationsJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl, const QString& from = {}, int limit = {}, const QString& only = {});
+
+ explicit GetNotificationsJob(const QString& from = {}, int limit = {}, const QString& only = {});
+ ~GetNotificationsJob() override;
+
+ const QString& nextToken() const;
+ const QVector<Notification>& notifications() const;
+
+ protected:
+ Status parseJson(const QJsonDocument& data) override;
+
+ private:
+ class Private;
+ QScopedPointer<Private> d;
+ };
+} // namespace QMatrixClient