aboutsummaryrefslogtreecommitdiff
path: root/jobs/generated/kicking.cpp
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2017-10-19 19:23:10 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2017-10-19 19:23:10 +0900
commit55e0375851c439c97fc353c61d7c8b2b19485082 (patch)
treeae87f5a06cac202a3ed25afd9e8a433921c2f26a /jobs/generated/kicking.cpp
parent878248db6122952998b390cf8ff4591c3f144474 (diff)
downloadlibquotient-55e0375851c439c97fc353c61d7c8b2b19485082.tar.gz
libquotient-55e0375851c439c97fc353c61d7c8b2b19485082.zip
Generated jobs: Don't dump empty strings to body parameters
This is important for (soon to be added) LoginJob, since the server is sensitive to getting an (even empty) entity for "medium" as opposed to omitting it entirely. This cannot be addressed on the spec level; on the other hand, removing empty parameters from the payload reduces useless bytes getting on the wire.
Diffstat (limited to 'jobs/generated/kicking.cpp')
-rw-r--r--jobs/generated/kicking.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/jobs/generated/kicking.cpp b/jobs/generated/kicking.cpp
index 2e6797d6..1a544c39 100644
--- a/jobs/generated/kicking.cpp
+++ b/jobs/generated/kicking.cpp
@@ -15,11 +15,13 @@ static const auto basePath = QStringLiteral("/_matrix/client/r0");
KickJob::KickJob(QString roomId, QString user_id, QString reason)
: BaseJob(HttpVerb::Post, "KickJob",
basePath % "/rooms/" % roomId % "/kick",
- Query { },
- Data {
- { "user_id", toJson(user_id) },
- { "reason", toJson(reason) }
- }
+ Query { }
)
-{ }
+{
+ Data _data;
+ _data.insert("user_id", toJson(user_id));
+ if (!reason.isEmpty())
+ _data.insert("reason", toJson(reason));
+ setRequestData(_data);
+}