William Cheng eff3e6df53
[cpp-qt] Add option for download progress, add test (#19297)
* add option for download progress, add test

* add cmake file

* remove test

* update
2024-08-05 16:06:36 +08:00

148 lines
3.9 KiB
C++

/**
* OpenAPI Petstore
* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
*
* The version of the OpenAPI document: 1.0.0
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
#include <QDebug>
#include <QFile>
#include <QJsonDocument>
#include <QJsonObject>
#include "PFXHttpFileElement.h"
namespace test_namespace {
void PFXHttpFileElement::setMimeType(const QString &mime) {
mime_type = mime;
}
void PFXHttpFileElement::setFileName(const QString &name) {
local_filename = name;
}
void PFXHttpFileElement::setVariableName(const QString &name) {
variable_name = name;
}
void PFXHttpFileElement::setRequestFileName(const QString &name) {
request_filename = name;
}
bool PFXHttpFileElement::isSet() const {
return !local_filename.isEmpty() || !request_filename.isEmpty();
}
QString PFXHttpFileElement::asJson() const {
QFile file(local_filename);
QByteArray bArray;
bool result = false;
if (file.exists()) {
result = file.open(QIODevice::ReadOnly);
bArray = file.readAll();
file.close();
}
if (!result) {
qDebug() << "Error opening file " << local_filename;
}
return QString(bArray);
}
QJsonValue PFXHttpFileElement::asJsonValue() const {
QFile file(local_filename);
QByteArray bArray;
bool result = false;
if (file.exists()) {
result = file.open(QIODevice::ReadOnly);
bArray = file.readAll();
file.close();
}
if (!result) {
qDebug() << "Error opening file " << local_filename;
}
return QJsonDocument::fromJson(bArray.data()).object();
}
bool PFXHttpFileElement::fromStringValue(const QString &instr) {
QFile file(local_filename);
bool result = false;
if (file.exists()) {
file.remove();
}
result = file.open(QIODevice::WriteOnly);
file.write(instr.toUtf8());
file.close();
if (!result) {
qDebug() << "Error creating file " << local_filename;
}
return result;
}
bool PFXHttpFileElement::fromJsonValue(const QJsonValue &jval) {
QFile file(local_filename);
bool result = false;
if (file.exists()) {
file.remove();
}
result = file.open(QIODevice::WriteOnly);
file.write(QJsonDocument(jval.toObject()).toJson());
file.close();
if (!result) {
qDebug() << "Error creating file " << local_filename;
}
return result;
}
QByteArray PFXHttpFileElement::asByteArray() const {
QFile file(local_filename);
QByteArray bArray;
bool result = false;
if (file.exists()) {
result = file.open(QIODevice::ReadOnly);
bArray = file.readAll();
file.close();
}
if (!result) {
qDebug() << "Error opening file " << local_filename;
}
return bArray;
}
bool PFXHttpFileElement::fromByteArray(const QByteArray &bytes) {
QFile file(local_filename);
bool result = false;
if (file.exists()) {
file.remove();
}
result = file.open(QIODevice::WriteOnly);
file.write(bytes);
file.close();
if (!result) {
qDebug() << "Error creating file " << local_filename;
}
return result;
}
bool PFXHttpFileElement::saveToFile(const QString &varName, const QString &localFName, const QString &reqFname, const QString &mime, const QByteArray &bytes) {
setMimeType(mime);
setFileName(localFName);
setVariableName(varName);
setRequestFileName(reqFname);
return fromByteArray(bytes);
}
QByteArray PFXHttpFileElement::loadFromFile(const QString &varName, const QString &localFName, const QString &reqFname, const QString &mime) {
setMimeType(mime);
setFileName(localFName);
setVariableName(varName);
setRequestFileName(reqFname);
return asByteArray();
}
} // namespace test_namespace