diff options
Diffstat (limited to 'lib/csapi/definitions/device_keys.h')
-rw-r--r-- | lib/csapi/definitions/device_keys.h | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/lib/csapi/definitions/device_keys.h b/lib/csapi/definitions/device_keys.h index 6c417ce7..c86db46a 100644 --- a/lib/csapi/definitions/device_keys.h +++ b/lib/csapi/definitions/device_keys.h @@ -4,38 +4,39 @@ #pragma once + + #include "converters.h" #include <QtCore/QHash> -namespace QMatrixClient { - // Data structures - - /// Device identity keys - struct DeviceKeys { - /// The ID of the user the device belongs to. Must match the user ID - /// used when logging in. - QString userId; - /// The ID of the device these keys belong to. Must match the device ID - /// used when logging in. - QString deviceId; - /// The encryption algorithms supported by this device. - QStringList algorithms; - /// Public identity keys. The names of the properties should be in the - /// format ``<algorithm>:<device_id>``. The keys themselves should be - /// encoded as specified by the key algorithm. - QHash<QString, QString> keys; - /// Signatures for the device key object. A map from user ID, to a map - /// from - /// ``<algorithm>:<device_id>`` to the signature. - /// - /// The signature is calculated using the process described at `Signing - /// JSON`_. - QHash<QString, QHash<QString, QString>> signatures; - }; - template <> struct JsonObjectConverter<DeviceKeys> { - static void dumpTo(QJsonObject& jo, const DeviceKeys& pod); - static void fillFrom(const QJsonObject& jo, DeviceKeys& pod); - }; +namespace QMatrixClient +{ + +// Data structures + +/// Device identity keys +struct DeviceKeys +{ + /// The ID of the user the device belongs to. Must match the user ID usedwhen logging in. + QString userId; + /// The ID of the device these keys belong to. Must match the device ID usedwhen logging in. + QString deviceId; + /// The encryption algorithms supported by this device. + QStringList algorithms; + /// Public identity keys. The names of the properties should be in theformat ``<algorithm>:<device_id>``. The keys themselves should beencoded as specified by the key algorithm. + QHash<QString, QString> keys; + /// Signatures for the device key object. A map from user ID, to a map from``<algorithm>:<device_id>`` to the signature.The signature is calculated using the process described at `SigningJSON`_. + QHash<QString, QHash<QString, QString>> signatures; + + +}; + +template <> struct JsonObjectConverter<DeviceKeys> +{ + static void dumpTo(QJsonObject& jo, const DeviceKeys& pod); + static void fillFrom(const QJsonObject& jo, DeviceKeys& pod);}; + + } // namespace QMatrixClient |