aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/device_management.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/csapi/device_management.cpp')
-rw-r--r--lib/csapi/device_management.cpp107
1 files changed, 27 insertions, 80 deletions
diff --git a/lib/csapi/device_management.cpp b/lib/csapi/device_management.cpp
index 9c31db5d..eac9a545 100644
--- a/lib/csapi/device_management.cpp
+++ b/lib/csapi/device_management.cpp
@@ -4,114 +4,61 @@
#include "device_management.h"
-#include "converters.h"
-
#include <QtCore/QStringBuilder>
-using namespace QMatrixClient;
-
-static const auto basePath = QStringLiteral("/_matrix/client/r0");
-
-class GetDevicesJob::Private
-{
- public:
- QVector<Device> devices;
-};
+using namespace Quotient;
QUrl GetDevicesJob::makeRequestUrl(QUrl baseUrl)
{
return BaseJob::makeRequestUrl(std::move(baseUrl),
- basePath % "/devices");
+ QStringLiteral("/_matrix/client/r0")
+ % "/devices");
}
-static const auto GetDevicesJobName = QStringLiteral("GetDevicesJob");
-
GetDevicesJob::GetDevicesJob()
- : BaseJob(HttpVerb::Get, GetDevicesJobName,
- basePath % "/devices")
- , d(new Private)
-{
-}
-
-GetDevicesJob::~GetDevicesJob() = default;
-
-const QVector<Device>& GetDevicesJob::devices() const
-{
- return d->devices;
-}
-
-BaseJob::Status GetDevicesJob::parseJson(const QJsonDocument& data)
-{
- auto json = data.object();
- fromJson(json.value("devices"_ls), d->devices);
- return Success;
-}
-
-class GetDeviceJob::Private
-{
- public:
- Device data;
-};
+ : BaseJob(HttpVerb::Get, QStringLiteral("GetDevicesJob"),
+ QStringLiteral("/_matrix/client/r0") % "/devices")
+{}
QUrl GetDeviceJob::makeRequestUrl(QUrl baseUrl, const QString& deviceId)
{
return BaseJob::makeRequestUrl(std::move(baseUrl),
- basePath % "/devices/" % deviceId);
+ QStringLiteral("/_matrix/client/r0")
+ % "/devices/" % deviceId);
}
-static const auto GetDeviceJobName = QStringLiteral("GetDeviceJob");
-
GetDeviceJob::GetDeviceJob(const QString& deviceId)
- : BaseJob(HttpVerb::Get, GetDeviceJobName,
- basePath % "/devices/" % deviceId)
- , d(new Private)
-{
-}
-
-GetDeviceJob::~GetDeviceJob() = default;
-
-const Device& GetDeviceJob::data() const
-{
- return d->data;
-}
-
-BaseJob::Status GetDeviceJob::parseJson(const QJsonDocument& data)
-{
- fromJson(data, d->data);
- return Success;
-}
-
-static const auto UpdateDeviceJobName = QStringLiteral("UpdateDeviceJob");
-
-UpdateDeviceJob::UpdateDeviceJob(const QString& deviceId, const QString& displayName)
- : BaseJob(HttpVerb::Put, UpdateDeviceJobName,
- basePath % "/devices/" % deviceId)
+ : BaseJob(HttpVerb::Get, QStringLiteral("GetDeviceJob"),
+ QStringLiteral("/_matrix/client/r0") % "/devices/" % deviceId)
+{}
+
+UpdateDeviceJob::UpdateDeviceJob(const QString& deviceId,
+ const QString& displayName)
+ : BaseJob(HttpVerb::Put, QStringLiteral("UpdateDeviceJob"),
+ QStringLiteral("/_matrix/client/r0") % "/devices/" % deviceId)
{
QJsonObject _data;
addParam<IfNotEmpty>(_data, QStringLiteral("display_name"), displayName);
- setRequestData(_data);
+ setRequestData(std::move(_data));
}
-static const auto DeleteDeviceJobName = QStringLiteral("DeleteDeviceJob");
-
-DeleteDeviceJob::DeleteDeviceJob(const QString& deviceId, const Omittable<AuthenticationData>& auth)
- : BaseJob(HttpVerb::Delete, DeleteDeviceJobName,
- basePath % "/devices/" % deviceId)
+DeleteDeviceJob::DeleteDeviceJob(const QString& deviceId,
+ const Omittable<AuthenticationData>& auth)
+ : BaseJob(HttpVerb::Delete, QStringLiteral("DeleteDeviceJob"),
+ QStringLiteral("/_matrix/client/r0") % "/devices/" % deviceId)
{
QJsonObject _data;
addParam<IfNotEmpty>(_data, QStringLiteral("auth"), auth);
- setRequestData(_data);
+ setRequestData(std::move(_data));
}
-static const auto DeleteDevicesJobName = QStringLiteral("DeleteDevicesJob");
-
-DeleteDevicesJob::DeleteDevicesJob(const QStringList& devices, const Omittable<AuthenticationData>& auth)
- : BaseJob(HttpVerb::Post, DeleteDevicesJobName,
- basePath % "/delete_devices")
+DeleteDevicesJob::DeleteDevicesJob(const QStringList& devices,
+ const Omittable<AuthenticationData>& auth)
+ : BaseJob(HttpVerb::Post, QStringLiteral("DeleteDevicesJob"),
+ QStringLiteral("/_matrix/client/r0") % "/delete_devices")
{
QJsonObject _data;
addParam<>(_data, QStringLiteral("devices"), devices);
addParam<IfNotEmpty>(_data, QStringLiteral("auth"), auth);
- setRequestData(_data);
+ setRequestData(std::move(_data));
}
-