Newer
Older
/**
* A library for Qt app
*
* LICENSE: The GNU Lesser General Public License, version 3.0
*
* @author Akira Ohgaki <akiraohgaki@gmail.com>
* @copyright Akira Ohgaki
* @license https://opensource.org/licenses/LGPL-3.0 The GNU Lesser General Public License, version 3.0
* @link https://github.com/akiraohgaki/qt-libs
*/
#include <QEventLoop>
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
Network::Network(const bool &async, QObject *parent) :
connect(manager_, &QNetworkAccessManager::finished, this, &utils::Network::finished);
connect(manager_, &QNetworkAccessManager::finished, eventLoop_, &QEventLoop::quit);
manager_->deleteLater();
if (!async_) {
delete eventLoop_;
}
}
QNetworkReply *Network::head(const QUrl &uri)
{
QNetworkReply *reply = manager_->head(QNetworkRequest(uri));
if (!async_) {
eventLoop_->exec();
}
return reply;
}
QNetworkReply *Network::get(const QUrl &uri)
{
connect(reply, &QNetworkReply::downloadProgress, this, &utils::Network::downloadProgress);