Simplify Upload and Download

Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
Trial97
2023-06-27 01:01:02 +03:00
parent b142407b21
commit 385babb458
9 changed files with 451 additions and 533 deletions

View File

@ -37,37 +37,21 @@
#pragma once
#include "NetAction.h"
#include "Sink.h"
#include "net/NetRequest.h"
namespace Net {
class Upload : public NetAction {
class Upload : public NetRequest {
Q_OBJECT
public:
using Ptr = shared_qobject_ptr<Upload>;
static Upload::Ptr makeByteArray(QUrl url, std::shared_ptr<QByteArray> output, QByteArray m_post_data);
auto abort() -> bool override;
auto canAbort() const -> bool override { return true; };
virtual void init() override{};
protected slots:
void downloadProgress(qint64 bytesReceived, qint64 bytesTotal) override;
void downloadError(QNetworkReply::NetworkError error) override;
void sslErrors(const QList<QSslError>& errors) override;
void downloadFinished() override;
void downloadReadyRead() override;
public slots:
void executeTask() override;
protected:
std::unique_ptr<Sink> m_sink;
virtual QNetworkReply* getReply(QNetworkRequest&) override;
QByteArray m_post_data;
bool handleRedirect();
};
} // namespace Net