aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/admin.h
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2018-05-05 19:36:15 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2018-05-05 19:36:15 +0900
commita8d2a73c771f188fc0fdc6351b4923af788317d5 (patch)
treeb2795b93149f7c0ae3cd5005331b650a8eb6fd1e /lib/csapi/admin.h
parentda16225dfbec9b155c2c299757203f7676ac6ccf (diff)
parenta63838235134b066c092ad98e1f18ff7991c91c1 (diff)
downloadlibquotient-a8d2a73c771f188fc0fdc6351b4923af788317d5.tar.gz
libquotient-a8d2a73c771f188fc0fdc6351b4923af788317d5.zip
Merge branch 'kitsune-gtad'
Diffstat (limited to 'lib/csapi/admin.h')
-rw-r--r--lib/csapi/admin.h65
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