aboutsummaryrefslogtreecommitdiff
path: root/jobs/roommessagesjob.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'jobs/roommessagesjob.cpp')
-rw-r--r--jobs/roommessagesjob.cpp36
1 files changed, 8 insertions, 28 deletions
diff --git a/jobs/roommessagesjob.cpp b/jobs/roommessagesjob.cpp
index f880713d..d67ffc2a 100644
--- a/jobs/roommessagesjob.cpp
+++ b/jobs/roommessagesjob.cpp
@@ -29,23 +29,20 @@ class RoomMessagesJob::Private
public:
Private() {}
- Room* room;
- QString from;
- FetchDirectory dir;
- int limit;
-
Events events;
QString end;
};
RoomMessagesJob::RoomMessagesJob(ConnectionData* data, Room* room, QString from, FetchDirectory dir, int limit)
- : BaseJob(data, JobHttpType::GetJob, "RoomMessagesJob")
+ : BaseJob(data, JobHttpType::GetJob, "RoomMessagesJob",
+ QString("/_matrix/client/r0/rooms/%1/messages").arg(room->id()),
+ Query(
+ { { "from", from }
+ , { "dir", dir == FetchDirectory::Backwards ? "b" : "f" }
+ , { "limit", QString::number(limit) }
+ }))
+ , d(new Private)
{
- d = new Private();
- d->room = room;
- d->from = from;
- d->dir = dir;
- d->limit = limit;
}
RoomMessagesJob::~RoomMessagesJob()
@@ -63,23 +60,6 @@ QString RoomMessagesJob::end()
return d->end;
}
-QString RoomMessagesJob::apiPath() const
-{
- return QString("/_matrix/client/r0/rooms/%1/messages").arg(d->room->id());
-}
-
-QUrlQuery RoomMessagesJob::query() const
-{
- QUrlQuery query;
- query.addQueryItem("from", d->from);
- if( d->dir == FetchDirectory::Backwards )
- query.addQueryItem("dir", "b");
- else
- query.addQueryItem("dir", "f");
- query.addQueryItem("limit", QString::number(d->limit));
- return query;
-}
-
BaseJob::Status RoomMessagesJob::parseJson(const QJsonDocument& data)
{
QJsonObject obj = data.object();