diff options
Diffstat (limited to 'lib/csapi/wellknown.h')
-rw-r--r-- | lib/csapi/wellknown.h | 70 |
1 files changed, 31 insertions, 39 deletions
diff --git a/lib/csapi/wellknown.h b/lib/csapi/wellknown.h index 8da9ce9f..b21d9fc7 100644 --- a/lib/csapi/wellknown.h +++ b/lib/csapi/wellknown.h @@ -4,50 +4,42 @@ #pragma once -#include "jobs/basejob.h" - #include "csapi/definitions/wellknown/full.h" -#include "converters.h" -namespace QMatrixClient -{ - // Operations +#include "jobs/basejob.h" +namespace Quotient { + +/*! \brief Gets Matrix server discovery information about the domain. + * + * Gets discovery information about the domain. The file may include + * additional keys, which MUST follow the Java package naming convention, + * e.g. ``com.example.myapp.property``. This ensures property names are + * suitably namespaced for each application and reduces the risk of + * clashes. + * + * Note that this endpoint is not necessarily handled by the homeserver, + * but by another webserver, to be used for discovering the homeserver URL. + */ +class GetWellknownJob : public BaseJob { +public: /// Gets Matrix server discovery information about the domain. - /// - /// Gets discovery information about the domain. The file may include - /// additional keys, which MUST follow the Java package naming convention, - /// e.g. ``com.example.myapp.property``. This ensures property names are - /// suitably namespaced for each application and reduces the risk of - /// clashes. - /// - /// Note that this endpoint is not necessarily handled by the homeserver, - /// but by another webserver, to be used for discovering the homeserver URL. - class GetWellknownJob : public BaseJob - { - public: - explicit GetWellknownJob(); - - /*! Construct a URL without creating a full-fledged job object - * - * This function can be used when a URL for - * GetWellknownJob is necessary but the job - * itself isn't. - */ - static QUrl makeRequestUrl(QUrl baseUrl); + explicit GetWellknownJob(); - ~GetWellknownJob() override; + /*! \brief Construct a URL without creating a full-fledged job object + * + * This function can be used when a URL for GetWellknownJob + * is necessary but the job itself isn't. + */ + static QUrl makeRequestUrl(QUrl baseUrl); - // Result properties + // Result properties - /// Server discovery information. - const DiscoveryInformation& data() const; - - protected: - Status parseJson(const QJsonDocument& data) override; + /// Server discovery information. + DiscoveryInformation data() const + { + return fromJson<DiscoveryInformation>(jsonData()); + } +}; - private: - class Private; - QScopedPointer<Private> d; - }; -} // namespace QMatrixClient +} // namespace Quotient |