aboutsummaryrefslogtreecommitdiff
path: root/lib/identity
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2020-06-09 08:52:25 +0200
committerGitHub <noreply@github.com>2020-06-09 08:52:25 +0200
commit370d9b3e46332d38df8798cda208c534c58be808 (patch)
treef3db0cd7463468ff52c74446acd608356f8b8ab6 /lib/identity
parente1f5d0aa2c33e6da6c3a609c8bc7e0b5867e748d (diff)
parent10d9ac4673e374a9ac17ff492591136520337c4c (diff)
downloadlibquotient-370d9b3e46332d38df8798cda208c534c58be808.tar.gz
libquotient-370d9b3e46332d38df8798cda208c534c58be808.zip
Merge pull request #405 from quotient-im/kitsune-basejob-store-json-response
Store JSON response in BaseJob + tweaks to the generated code
Diffstat (limited to 'lib/identity')
-rw-r--r--lib/identity/definitions/request_email_validation.cpp25
-rw-r--r--lib/identity/definitions/request_email_validation.h26
-rw-r--r--lib/identity/definitions/request_msisdn_validation.cpp27
-rw-r--r--lib/identity/definitions/request_msisdn_validation.h29
-rw-r--r--lib/identity/definitions/sid.cpp17
-rw-r--r--lib/identity/definitions/sid.h27
6 files changed, 40 insertions, 111 deletions
diff --git a/lib/identity/definitions/request_email_validation.cpp b/lib/identity/definitions/request_email_validation.cpp
deleted file mode 100644
index 22cb0072..00000000
--- a/lib/identity/definitions/request_email_validation.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
-/******************************************************************************
- * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
- */
-
-#include "request_email_validation.h"
-
-using namespace Quotient;
-
-void JsonObjectConverter<RequestEmailValidation>::dumpTo(
- QJsonObject& jo, const RequestEmailValidation& pod)
-{
- addParam<>(jo, QStringLiteral("client_secret"), pod.clientSecret);
- addParam<>(jo, QStringLiteral("email"), pod.email);
- addParam<>(jo, QStringLiteral("send_attempt"), pod.sendAttempt);
- addParam<IfNotEmpty>(jo, QStringLiteral("next_link"), pod.nextLink);
-}
-
-void JsonObjectConverter<RequestEmailValidation>::fillFrom(
- const QJsonObject& jo, RequestEmailValidation& result)
-{
- fromJson(jo.value("client_secret"_ls), result.clientSecret);
- fromJson(jo.value("email"_ls), result.email);
- fromJson(jo.value("send_attempt"_ls), result.sendAttempt);
- fromJson(jo.value("next_link"_ls), result.nextLink);
-}
diff --git a/lib/identity/definitions/request_email_validation.h b/lib/identity/definitions/request_email_validation.h
index 32c6eaaf..079da953 100644
--- a/lib/identity/definitions/request_email_validation.h
+++ b/lib/identity/definitions/request_email_validation.h
@@ -8,8 +8,6 @@
namespace Quotient {
-// Data structures
-
struct RequestEmailValidation {
/// A unique string generated by the client, and used to identify the
/// validation attempt. It must be a string consisting of the characters
@@ -26,18 +24,32 @@ struct RequestEmailValidation {
/// avoid repeatedly sending the same email in the case of request
/// retries between the POSTing user and the identity server.
/// The client should increment this value if they desire a new
- /// email (e.g. a reminder) to be sent.
+ /// email (e.g. a reminder) to be sent. If they do not, the server
+ /// should respond with success but not resend the email.
int sendAttempt;
- /// Optional. When the validation is completed, the identity
- /// server will redirect the user to this URL.
+ /// Optional. When the validation is completed, the identity server will
+ /// redirect the user to this URL. This option is ignored when submitting
+ /// 3PID validation information through a POST request.
QString nextLink;
};
template <>
struct JsonObjectConverter<RequestEmailValidation> {
- static void dumpTo(QJsonObject& jo, const RequestEmailValidation& pod);
- static void fillFrom(const QJsonObject& jo, RequestEmailValidation& pod);
+ static void dumpTo(QJsonObject& jo, const RequestEmailValidation& pod)
+ {
+ addParam<>(jo, QStringLiteral("client_secret"), pod.clientSecret);
+ addParam<>(jo, QStringLiteral("email"), pod.email);
+ addParam<>(jo, QStringLiteral("send_attempt"), pod.sendAttempt);
+ addParam<IfNotEmpty>(jo, QStringLiteral("next_link"), pod.nextLink);
+ }
+ static void fillFrom(const QJsonObject& jo, RequestEmailValidation& pod)
+ {
+ fromJson(jo.value("client_secret"_ls), pod.clientSecret);
+ fromJson(jo.value("email"_ls), pod.email);
+ fromJson(jo.value("send_attempt"_ls), pod.sendAttempt);
+ fromJson(jo.value("next_link"_ls), pod.nextLink);
+ }
};
} // namespace Quotient
diff --git a/lib/identity/definitions/request_msisdn_validation.cpp b/lib/identity/definitions/request_msisdn_validation.cpp
deleted file mode 100644
index 6024bf61..00000000
--- a/lib/identity/definitions/request_msisdn_validation.cpp
+++ /dev/null
@@ -1,27 +0,0 @@
-/******************************************************************************
- * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
- */
-
-#include "request_msisdn_validation.h"
-
-using namespace Quotient;
-
-void JsonObjectConverter<RequestMsisdnValidation>::dumpTo(
- QJsonObject& jo, const RequestMsisdnValidation& pod)
-{
- addParam<>(jo, QStringLiteral("client_secret"), pod.clientSecret);
- addParam<>(jo, QStringLiteral("country"), pod.country);
- addParam<>(jo, QStringLiteral("phone_number"), pod.phoneNumber);
- addParam<>(jo, QStringLiteral("send_attempt"), pod.sendAttempt);
- addParam<IfNotEmpty>(jo, QStringLiteral("next_link"), pod.nextLink);
-}
-
-void JsonObjectConverter<RequestMsisdnValidation>::fillFrom(
- const QJsonObject& jo, RequestMsisdnValidation& result)
-{
- fromJson(jo.value("client_secret"_ls), result.clientSecret);
- fromJson(jo.value("country"_ls), result.country);
- fromJson(jo.value("phone_number"_ls), result.phoneNumber);
- fromJson(jo.value("send_attempt"_ls), result.sendAttempt);
- fromJson(jo.value("next_link"_ls), result.nextLink);
-}
diff --git a/lib/identity/definitions/request_msisdn_validation.h b/lib/identity/definitions/request_msisdn_validation.h
index 90aed7b8..a29fd0de 100644
--- a/lib/identity/definitions/request_msisdn_validation.h
+++ b/lib/identity/definitions/request_msisdn_validation.h
@@ -8,8 +8,6 @@
namespace Quotient {
-// Data structures
-
struct RequestMsisdnValidation {
/// A unique string generated by the client, and used to identify the
/// validation attempt. It must be a string consisting of the characters
@@ -17,8 +15,8 @@ struct RequestMsisdnValidation {
/// must not be empty.
QString clientSecret;
- /// The two-letter uppercase ISO country code that the number in
- /// ``phone_number`` should be parsed as if it were dialled from.
+ /// The two-letter uppercase ISO-3166-1 alpha-2 country code that the
+ /// number in ``phone_number`` should be parsed as if it were dialled from.
QString country;
/// The phone number to validate.
@@ -33,15 +31,30 @@ struct RequestMsisdnValidation {
/// they desire a new SMS (e.g. a reminder) to be sent.
int sendAttempt;
- /// Optional. When the validation is completed, the identity
- /// server will redirect the user to this URL.
+ /// Optional. When the validation is completed, the identity server will
+ /// redirect the user to this URL. This option is ignored when submitting
+ /// 3PID validation information through a POST request.
QString nextLink;
};
template <>
struct JsonObjectConverter<RequestMsisdnValidation> {
- static void dumpTo(QJsonObject& jo, const RequestMsisdnValidation& pod);
- static void fillFrom(const QJsonObject& jo, RequestMsisdnValidation& pod);
+ static void dumpTo(QJsonObject& jo, const RequestMsisdnValidation& pod)
+ {
+ addParam<>(jo, QStringLiteral("client_secret"), pod.clientSecret);
+ addParam<>(jo, QStringLiteral("country"), pod.country);
+ addParam<>(jo, QStringLiteral("phone_number"), pod.phoneNumber);
+ addParam<>(jo, QStringLiteral("send_attempt"), pod.sendAttempt);
+ addParam<IfNotEmpty>(jo, QStringLiteral("next_link"), pod.nextLink);
+ }
+ static void fillFrom(const QJsonObject& jo, RequestMsisdnValidation& pod)
+ {
+ fromJson(jo.value("client_secret"_ls), pod.clientSecret);
+ fromJson(jo.value("country"_ls), pod.country);
+ fromJson(jo.value("phone_number"_ls), pod.phoneNumber);
+ fromJson(jo.value("send_attempt"_ls), pod.sendAttempt);
+ fromJson(jo.value("next_link"_ls), pod.nextLink);
+ }
};
} // namespace Quotient
diff --git a/lib/identity/definitions/sid.cpp b/lib/identity/definitions/sid.cpp
deleted file mode 100644
index 99fe9b59..00000000
--- a/lib/identity/definitions/sid.cpp
+++ /dev/null
@@ -1,17 +0,0 @@
-/******************************************************************************
- * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
- */
-
-#include "sid.h"
-
-using namespace Quotient;
-
-void JsonObjectConverter<Sid>::dumpTo(QJsonObject& jo, const Sid& pod)
-{
- addParam<>(jo, QStringLiteral("sid"), pod.sid);
-}
-
-void JsonObjectConverter<Sid>::fillFrom(const QJsonObject& jo, Sid& result)
-{
- fromJson(jo.value("sid"_ls), result.sid);
-}
diff --git a/lib/identity/definitions/sid.h b/lib/identity/definitions/sid.h
deleted file mode 100644
index 981826f6..00000000
--- a/lib/identity/definitions/sid.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/******************************************************************************
- * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
- */
-
-#pragma once
-
-#include "converters.h"
-
-namespace Quotient {
-
-// Data structures
-
-struct Sid {
- /// The session ID. Session IDs are opaque strings generated by the identity
- /// server. They must consist entirely of the characters
- /// ``[0-9a-zA-Z.=_-]``. Their length must not exceed 255 characters and
- /// they must not be empty.
- QString sid;
-};
-
-template <>
-struct JsonObjectConverter<Sid> {
- static void dumpTo(QJsonObject& jo, const Sid& pod);
- static void fillFrom(const QJsonObject& jo, Sid& pod);
-};
-
-} // namespace Quotient