aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/message_pagination.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/csapi/message_pagination.cpp')
-rw-r--r--lib/csapi/message_pagination.cpp47
1 files changed, 9 insertions, 38 deletions
diff --git a/lib/csapi/message_pagination.cpp b/lib/csapi/message_pagination.cpp
index ba982748..855c051f 100644
--- a/lib/csapi/message_pagination.cpp
+++ b/lib/csapi/message_pagination.cpp
@@ -4,24 +4,13 @@
#include "message_pagination.h"
-#include "converters.h"
-
#include <QtCore/QStringBuilder>
using namespace Quotient;
-static const auto basePath = QStringLiteral("/_matrix/client/r0");
-
-class GetRoomEventsJob::Private {
-public:
- QString begin;
- QString end;
- RoomEvents chunk;
-};
-
-BaseJob::Query queryToGetRoomEvents(const QString& from, const QString& to,
- const QString& dir, Omittable<int> limit,
- const QString& filter)
+auto queryToGetRoomEvents(const QString& from, const QString& to,
+ const QString& dir, Omittable<int> limit,
+ const QString& filter)
{
BaseJob::Query _q;
addParam<>(_q, QStringLiteral("from"), from);
@@ -37,35 +26,17 @@ QUrl GetRoomEventsJob::makeRequestUrl(QUrl baseUrl, const QString& roomId,
const QString& to, Omittable<int> limit,
const QString& filter)
{
- return BaseJob::makeRequestUrl(std::move(baseUrl),
- basePath % "/rooms/" % roomId % "/messages",
- queryToGetRoomEvents(from, to, dir, limit,
- filter));
+ return BaseJob::makeRequestUrl(
+ std::move(baseUrl),
+ QStringLiteral("/_matrix/client/r0") % "/rooms/" % roomId % "/messages",
+ queryToGetRoomEvents(from, to, dir, limit, filter));
}
GetRoomEventsJob::GetRoomEventsJob(const QString& roomId, const QString& from,
const QString& dir, const QString& to,
Omittable<int> limit, const QString& filter)
: BaseJob(HttpVerb::Get, QStringLiteral("GetRoomEventsJob"),
- basePath % "/rooms/" % roomId % "/messages",
+ QStringLiteral("/_matrix/client/r0") % "/rooms/" % roomId
+ % "/messages",
queryToGetRoomEvents(from, to, dir, limit, filter))
- , d(new Private)
{}
-
-GetRoomEventsJob::~GetRoomEventsJob() = default;
-
-const QString& GetRoomEventsJob::begin() const { return d->begin; }
-
-const QString& GetRoomEventsJob::end() const { return d->end; }
-
-RoomEvents&& GetRoomEventsJob::chunk() { return std::move(d->chunk); }
-
-BaseJob::Status GetRoomEventsJob::parseJson(const QJsonDocument& data)
-{
- auto json = data.object();
- fromJson(json.value("start"_ls), d->begin);
- fromJson(json.value("end"_ls), d->end);
- fromJson(json.value("chunk"_ls), d->chunk);
-
- return Success;
-}