diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-05-05 19:36:15 +0900 |
---|---|---|
committer | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-05-05 19:36:15 +0900 |
commit | a8d2a73c771f188fc0fdc6351b4923af788317d5 (patch) | |
tree | b2795b93149f7c0ae3cd5005331b650a8eb6fd1e /lib/csapi/admin.h | |
parent | da16225dfbec9b155c2c299757203f7676ac6ccf (diff) | |
parent | a63838235134b066c092ad98e1f18ff7991c91c1 (diff) | |
download | libquotient-a8d2a73c771f188fc0fdc6351b4923af788317d5.tar.gz libquotient-a8d2a73c771f188fc0fdc6351b4923af788317d5.zip |
Merge branch 'kitsune-gtad'
Diffstat (limited to 'lib/csapi/admin.h')
-rw-r--r-- | lib/csapi/admin.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/lib/csapi/admin.h b/lib/csapi/admin.h new file mode 100644 index 00000000..ada5a8ca --- /dev/null +++ b/lib/csapi/admin.h @@ -0,0 +1,65 @@ +/****************************************************************************** + * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN + */ + +#pragma once + +#include "jobs/basejob.h" + +#include <QtCore/QHash> +#include <QtCore/QVector> + +#include "converters.h" + +namespace QMatrixClient +{ + // Operations + + class GetWhoIsJob : public BaseJob + { + public: + // Inner data structures + + struct ConnectionInfo + { + QString ip; + qint64 lastSeen; + QString userAgent; + }; + + struct SessionInfo + { + QVector<ConnectionInfo> connections; + }; + + struct DeviceInfo + { + QVector<SessionInfo> sessions; + }; + + // Construction/destruction + + explicit GetWhoIsJob(const QString& userId); + + /** Construct a URL out of baseUrl and usual parameters passed to + * GetWhoIsJob. This function can be used when + * a URL for GetWhoIsJob is necessary but the job + * itself isn't. + */ + static QUrl makeRequestUrl(QUrl baseUrl, const QString& userId); + + ~GetWhoIsJob() override; + + // Result properties + + const QString& userId() const; + const QHash<QString, DeviceInfo>& devices() const; + + protected: + Status parseJson(const QJsonDocument& data) override; + + private: + class Private; + QScopedPointer<Private> d; + }; +} // namespace QMatrixClient |