// SPDX-FileCopyrightText: 2018 Kitsune Ral // SPDX-License-Identifier: LGPL-2.1-or-later #include "requestdata.h" #include #include #include #include #include #include using namespace Quotient; auto fromData(const QByteArray& data) { auto source = std::make_unique(); source->setData(data); source->open(QIODevice::ReadOnly); return source; } template inline auto fromJson(const JsonDataT& jdata) { return fromData(QJsonDocument(jdata).toJson(QJsonDocument::Compact)); } RequestData::RequestData(const QByteArray& a) : _source(fromData(a)) {} RequestData::RequestData(const QJsonObject& jo) : _source(fromJson(jo)) {} RequestData::RequestData(const QJsonArray& ja) : _source(fromJson(ja)) {} RequestData::RequestData(QIODevice* source) : _source(std::unique_ptr(source)) {} RequestData::~RequestData() = default;