diff options
Diffstat (limited to 'lib/csapi/profile.h')
-rw-r--r-- | lib/csapi/profile.h | 73 |
1 files changed, 64 insertions, 9 deletions
diff --git a/lib/csapi/profile.h b/lib/csapi/profile.h index 77eebdfa..694f36b8 100644 --- a/lib/csapi/profile.h +++ b/lib/csapi/profile.h @@ -11,20 +11,40 @@ namespace QMatrixClient { // Operations + /// Set the user's display name. + /// + /// This API sets the given user's display name. You must have permission to + /// set this user's display name, e.g. you need to have their ``access_token``. class SetDisplayNameJob : public BaseJob { public: + /*! Set the user's display name. + * \param userId + * The user whose display name to set. + * \param displayname + * The new display name for this user. + */ explicit SetDisplayNameJob(const QString& userId, const QString& displayname = {}); }; + /// Get the user's display name. + /// + /// Get the user's display name. This API may be used to fetch the user's + /// own displayname or to query the name of other users; either locally or + /// on remote homeservers. class GetDisplayNameJob : public BaseJob { public: + /*! Get the user's display name. + * \param userId + * The user whose display name to get. + */ explicit GetDisplayNameJob(const QString& userId); - /** Construct a URL out of baseUrl and usual parameters passed to - * GetDisplayNameJob. This function can be used when - * a URL for GetDisplayNameJob is necessary but the job + /*! Construct a URL without creating a full-fledged job object + * + * This function can be used when a URL for + * GetDisplayNameJob is necessary but the job * itself isn't. */ static QUrl makeRequestUrl(QUrl baseUrl, const QString& userId); @@ -33,6 +53,7 @@ namespace QMatrixClient // Result properties + /// The user's display name if they have set one, otherwise not present. const QString& displayname() const; protected: @@ -43,20 +64,40 @@ namespace QMatrixClient QScopedPointer<Private> d; }; + /// Set the user's avatar URL. + /// + /// This API sets the given user's avatar URL. You must have permission to + /// set this user's avatar URL, e.g. you need to have their ``access_token``. class SetAvatarUrlJob : public BaseJob { public: + /*! Set the user's avatar URL. + * \param userId + * The user whose avatar URL to set. + * \param avatarUrl + * The new avatar URL for this user. + */ explicit SetAvatarUrlJob(const QString& userId, const QString& avatarUrl = {}); }; + /// Get the user's avatar URL. + /// + /// Get the user's avatar URL. This API may be used to fetch the user's + /// own avatar URL or to query the URL of other users; either locally or + /// on remote homeservers. class GetAvatarUrlJob : public BaseJob { public: + /*! Get the user's avatar URL. + * \param userId + * The user whose avatar URL to get. + */ explicit GetAvatarUrlJob(const QString& userId); - /** Construct a URL out of baseUrl and usual parameters passed to - * GetAvatarUrlJob. This function can be used when - * a URL for GetAvatarUrlJob is necessary but the job + /*! Construct a URL without creating a full-fledged job object + * + * This function can be used when a URL for + * GetAvatarUrlJob is necessary but the job * itself isn't. */ static QUrl makeRequestUrl(QUrl baseUrl, const QString& userId); @@ -65,6 +106,7 @@ namespace QMatrixClient // Result properties + /// The user's avatar URL if they have set one, otherwise not present. const QString& avatarUrl() const; protected: @@ -75,14 +117,25 @@ namespace QMatrixClient QScopedPointer<Private> d; }; + /// Get this user's profile information. + /// + /// Get the combined profile information for this user. This API may be used + /// to fetch the user's own profile information or other users; either + /// locally or on remote homeservers. This API may return keys which are not + /// limited to ``displayname`` or ``avatar_url``. class GetUserProfileJob : public BaseJob { public: + /*! Get this user's profile information. + * \param userId + * The user whose profile information to get. + */ explicit GetUserProfileJob(const QString& userId); - /** Construct a URL out of baseUrl and usual parameters passed to - * GetUserProfileJob. This function can be used when - * a URL for GetUserProfileJob is necessary but the job + /*! Construct a URL without creating a full-fledged job object + * + * This function can be used when a URL for + * GetUserProfileJob is necessary but the job * itself isn't. */ static QUrl makeRequestUrl(QUrl baseUrl, const QString& userId); @@ -91,7 +144,9 @@ namespace QMatrixClient // Result properties + /// The user's avatar URL if they have set one, otherwise not present. const QString& avatarUrl() const; + /// The user's display name if they have set one, otherwise not present. const QString& displayname() const; protected: |