aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/pushrules.h
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2018-06-03 19:50:54 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2018-06-03 19:50:54 +0900
commitddf10847d496dd65b00bc2026412958acd09790d (patch)
treef7a90ff1177897095f705fec2d108cba2cc8a962 /lib/csapi/pushrules.h
parent826b8fb5afc80dd6adcc7ecee22997365a59f9d0 (diff)
downloadlibquotient-ddf10847d496dd65b00bc2026412958acd09790d.tar.gz
libquotient-ddf10847d496dd65b00bc2026412958acd09790d.zip
csapi: jobs to setup push-rules
Diffstat (limited to 'lib/csapi/pushrules.h')
-rw-r--r--lib/csapi/pushrules.h154
1 files changed, 154 insertions, 0 deletions
diff --git a/lib/csapi/pushrules.h b/lib/csapi/pushrules.h
new file mode 100644
index 00000000..a01049af
--- /dev/null
+++ b/lib/csapi/pushrules.h
@@ -0,0 +1,154 @@
+/******************************************************************************
+ * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
+ */
+
+#pragma once
+
+#include "jobs/basejob.h"
+
+#include "lib/csapi/definitions/push_ruleset.h"
+#include <QtCore/QVector>
+#include "converters.h"
+#include "lib/csapi/definitions/push_rule.h"
+#include "lib/csapi/definitions/push_condition.h"
+
+namespace QMatrixClient
+{
+ // Operations
+
+ class GetPushRulesJob : public BaseJob
+ {
+ public:
+ explicit GetPushRulesJob();
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * GetPushRulesJob. This function can be used when
+ * a URL for GetPushRulesJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl);
+
+ ~GetPushRulesJob() override;
+
+ // Result properties
+
+ const PushRuleset& global() const;
+
+ protected:
+ Status parseJson(const QJsonDocument& data) override;
+
+ private:
+ class Private;
+ QScopedPointer<Private> d;
+ };
+
+ class GetPushRuleJob : public BaseJob
+ {
+ public:
+ explicit GetPushRuleJob(const QString& scope, const QString& kind, const QString& ruleId);
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * GetPushRuleJob. This function can be used when
+ * a URL for GetPushRuleJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl, const QString& scope, const QString& kind, const QString& ruleId);
+
+ ~GetPushRuleJob() override;
+
+ // Result properties
+
+ const PushRule& data() const;
+
+ protected:
+ Status parseJson(const QJsonDocument& data) override;
+
+ private:
+ class Private;
+ QScopedPointer<Private> d;
+ };
+
+ class DeletePushRuleJob : public BaseJob
+ {
+ public:
+ explicit DeletePushRuleJob(const QString& scope, const QString& kind, const QString& ruleId);
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * DeletePushRuleJob. This function can be used when
+ * a URL for DeletePushRuleJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl, const QString& scope, const QString& kind, const QString& ruleId);
+
+ };
+
+ class SetPushRuleJob : public BaseJob
+ {
+ public:
+ explicit SetPushRuleJob(const QString& scope, const QString& kind, const QString& ruleId, const QStringList& actions, const QString& before = {}, const QString& after = {}, const QVector<PushCondition>& conditions = {}, const QString& pattern = {});
+ };
+
+ class IsPushRuleEnabledJob : public BaseJob
+ {
+ public:
+ explicit IsPushRuleEnabledJob(const QString& scope, const QString& kind, const QString& ruleId);
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * IsPushRuleEnabledJob. This function can be used when
+ * a URL for IsPushRuleEnabledJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl, const QString& scope, const QString& kind, const QString& ruleId);
+
+ ~IsPushRuleEnabledJob() override;
+
+ // Result properties
+
+ bool enabled() const;
+
+ protected:
+ Status parseJson(const QJsonDocument& data) override;
+
+ private:
+ class Private;
+ QScopedPointer<Private> d;
+ };
+
+ class SetPushRuleEnabledJob : public BaseJob
+ {
+ public:
+ explicit SetPushRuleEnabledJob(const QString& scope, const QString& kind, const QString& ruleId, bool enabled);
+ };
+
+ class GetPushRuleActionsJob : public BaseJob
+ {
+ public:
+ explicit GetPushRuleActionsJob(const QString& scope, const QString& kind, const QString& ruleId);
+
+ /** Construct a URL out of baseUrl and usual parameters passed to
+ * GetPushRuleActionsJob. This function can be used when
+ * a URL for GetPushRuleActionsJob is necessary but the job
+ * itself isn't.
+ */
+ static QUrl makeRequestUrl(QUrl baseUrl, const QString& scope, const QString& kind, const QString& ruleId);
+
+ ~GetPushRuleActionsJob() override;
+
+ // Result properties
+
+ const QStringList& actions() const;
+
+ protected:
+ Status parseJson(const QJsonDocument& data) override;
+
+ private:
+ class Private;
+ QScopedPointer<Private> d;
+ };
+
+ class SetPushRuleActionsJob : public BaseJob
+ {
+ public:
+ explicit SetPushRuleActionsJob(const QString& scope, const QString& kind, const QString& ruleId, const QStringList& actions);
+ };
+} // namespace QMatrixClient