diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-08-25 22:40:15 +0900 |
---|---|---|
committer | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-08-25 22:40:15 +0900 |
commit | d9ff200ff62fb7f5b6b51082dc3979d5454a1bec (patch) | |
tree | 16f33987a6e98646b462d22ca9f69884a9e01ee6 /lib/csapi/openid.h | |
parent | e507ca582b1b243ee4422a4a3e0b11b28697cb16 (diff) | |
download | libquotient-d9ff200ff62fb7f5b6b51082dc3979d5454a1bec.tar.gz libquotient-d9ff200ff62fb7f5b6b51082dc3979d5454a1bec.zip |
Update to the recent CS API (watch out for breakage)
Breaking changes:
* guest_can_join is no more a thing - neither in Connection::createRoom, nor even in CreateRoomJob (it turned out that Synapse didn't really process this flag);
* LoginJob has changed its list of arguments. If you use Connection to do logins (and you really should), you shouldn't be affected.
* GetPublicRoomsJob now returns PublicRoomsResponse instead of providing all the response parts within the job
Watch other changes in the diff.
Diffstat (limited to 'lib/csapi/openid.h')
-rw-r--r-- | lib/csapi/openid.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/lib/csapi/openid.h b/lib/csapi/openid.h new file mode 100644 index 00000000..0dbad7eb --- /dev/null +++ b/lib/csapi/openid.h @@ -0,0 +1,61 @@ +/****************************************************************************** + * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN + */ + +#pragma once + +#include "jobs/basejob.h" + +#include "converters.h" +#include <QtCore/QJsonObject> + +namespace QMatrixClient +{ + // Operations + + /// Get an OpenID token object to verify the requester's identity. + /// + /// Gets an OpenID token object that the requester may supply to another + /// service to verify their identity in Matrix. The generated token is only + /// valid for exchanging for user information from the federation API for + /// OpenID. + /// + /// The access token generated is only valid for the OpenID API. It cannot + /// be used to request another OpenID access token or call ``/sync``, for + /// example. + class RequestOpenIdTokenJob : public BaseJob + { + public: + /*! Get an OpenID token object to verify the requester's identity. + * \param userId + * The user to request and OpenID token for. Should be the user who + * is authenticated for the request. + * \param body + * An empty object. Reserved for future expansion. + */ + explicit RequestOpenIdTokenJob(const QString& userId, const QJsonObject& body = {}); + ~RequestOpenIdTokenJob() override; + + // Result properties + + /// An access token the consumer may use to verify the identity of + /// the person who generated the token. This is given to the federation + /// API ``GET /openid/userinfo``. + const QString& accessToken() const; + /// The string ``Bearer``. + const QString& tokenType() const; + /// The homeserver domain the consumer should use when attempting to + /// verify the user's identity. + const QString& matrixServerName() const; + /// The number of seconds before this token expires and a new one must + /// be generated. + int expiresIn() const; + + protected: + Status parseJson(const QJsonDocument& data) override; + + private: + class Private; + QScopedPointer<Private> d; + }; +} // namespace QMatrixClient |