diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2017-12-07 11:40:46 +0900 |
---|---|---|
committer | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2017-12-07 12:49:07 +0900 |
commit | 879e0bd17abedcc93d005eb7b66f6e9aa762200a (patch) | |
tree | 451a8e9bb1e5f7ed3e5f172427d0302bec2ec2f6 /jobs/generated/directory.cpp | |
parent | 80588a782ce702384802e3e0cb469f71e5640ef4 (diff) | |
download | libquotient-879e0bd17abedcc93d005eb7b66f6e9aa762200a.tar.gz libquotient-879e0bd17abedcc93d005eb7b66f6e9aa762200a.zip |
New generated jobs for: room directory, 3PIDs, redactions, typing notifications and others
Closes #128 (the issue has the full list of jobs arriving herewith).
Diffstat (limited to 'jobs/generated/directory.cpp')
-rw-r--r-- | jobs/generated/directory.cpp | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/jobs/generated/directory.cpp b/jobs/generated/directory.cpp new file mode 100644 index 00000000..dcec75ac --- /dev/null +++ b/jobs/generated/directory.cpp @@ -0,0 +1,71 @@ +/****************************************************************************** + * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN + */ + + +#include "directory.h" + +#include "converters.h" + +#include <QtCore/QStringBuilder> + +using namespace QMatrixClient; + +static const auto basePath = QStringLiteral("/_matrix/client/r0/directory"); + +SetRoomAliasJob::SetRoomAliasJob(const QString& roomAlias, const QString& roomId) + : BaseJob(HttpVerb::Put, "SetRoomAliasJob", + basePath % "/room/" % roomAlias, + Query { } + ) +{ + QJsonObject _data; + if (!roomId.isEmpty()) + _data.insert("room_id", toJson(roomId)); + setRequestData(_data); +} + +class GetRoomIdByAliasJob::Private +{ + public: + QString roomId; + QVector<QString> servers; +}; + +GetRoomIdByAliasJob::GetRoomIdByAliasJob(const QString& roomAlias) + : BaseJob(HttpVerb::Get, "GetRoomIdByAliasJob", + basePath % "/room/" % roomAlias, + Query { }, Data { }, false + ), d(new Private) +{ } + +GetRoomIdByAliasJob::~GetRoomIdByAliasJob() +{ + delete d; +} + +const QString& GetRoomIdByAliasJob::roomId() const +{ + return d->roomId; +} + +const QVector<QString>& GetRoomIdByAliasJob::servers() const +{ + return d->servers; +} + +BaseJob::Status GetRoomIdByAliasJob::parseJson(const QJsonDocument& data) +{ + auto json = data.object(); + d->roomId = fromJson<QString>(json.value("room_id")); + d->servers = fromJson<QVector<QString>>(json.value("servers")); + return Success; +} + +DeleteRoomAliasJob::DeleteRoomAliasJob(const QString& roomAlias) + : BaseJob(HttpVerb::Delete, "DeleteRoomAliasJob", + basePath % "/room/" % roomAlias, + Query { } + ) +{ } + |