/****************************************************************************** * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN */ #include "create_room.h" #include "converters.h" #include using namespace QMatrixClient; static const auto basePath = QStringLiteral("/_matrix/client/r0"); namespace QMatrixClient { // Converters QJsonObject toJson(const CreateRoomJob::Invite3pid& pod) { QJsonObject _json; addParam<>(_json, QStringLiteral("id_server"), pod.idServer); addParam<>(_json, QStringLiteral("medium"), pod.medium); addParam<>(_json, QStringLiteral("address"), pod.address); return _json; } QJsonObject toJson(const CreateRoomJob::StateEvent& pod) { QJsonObject _json; addParam<>(_json, QStringLiteral("type"), pod.type); addParam(_json, QStringLiteral("state_key"), pod.stateKey); addParam<>(_json, QStringLiteral("content"), pod.content); return _json; } } // namespace QMatrixClient class CreateRoomJob::Private { public: QString roomId; }; static const auto CreateRoomJobName = QStringLiteral("CreateRoomJob"); CreateRoomJob::CreateRoomJob(const QString& visibility, const QString& roomAliasName, const QString& name, const QString& topic, const QStringList& invite, const QVector& invite3pid, const QJsonObject& creationContent, const QVector& initialState, const QString& preset, bool isDirect, bool guestCanJoin) : BaseJob(HttpVerb::Post, CreateRoomJobName, basePath % "/createRoom") , d(new Private) { QJsonObject _data; addParam(_data, QStringLiteral("visibility"), visibility); addParam(_data, QStringLiteral("room_alias_name"), roomAliasName); addParam(_data, QStringLiteral("name"), name); addParam(_data, QStringLiteral("topic"), topic); addParam(_data, QStringLiteral("invite"), invite); addParam(_data, QStringLiteral("invite_3pid"), invite3pid); addParam(_data, QStringLiteral("creation_content"), creationContent); addParam(_data, QStringLiteral("initial_state"), initialState); addParam(_data, QStringLiteral("preset"), preset); addParam(_data, QStringLiteral("is_direct"), isDirect); addParam(_data, QStringLiteral("guest_can_join"), guestCanJoin); setRequestData(_data); } CreateRoomJob::~CreateRoomJob() = default; const QString& CreateRoomJob::roomId() const { return d->roomId; } BaseJob::Status CreateRoomJob::parseJson(const QJsonDocument& data) { auto json = data.object(); d->roomId = fromJson(json.value("room_id"_ls)); return Success; }