20#ifndef LIBREPCB_CORE_NETWORKACCESSMANAGER_H
21#define LIBREPCB_CORE_NETWORKACCESSMANAGER_H
26#include "../fileio/filepath.h"
74 QNetworkReply*
get(const QNetworkRequest& request) noexcept;
75 QNetworkReply*
post(const QNetworkRequest& request,
76 const QByteArray& data) noexcept;
77 std::unique_ptr<QIODevice>
readFromCache(const QUrl& url) noexcept;
79 const QDateTime& dt) noexcept;
88 void run() noexcept override;
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:129
A network access manager which processes network requests in a separate thread.
Definition: networkaccessmanager.h:64
bool setMinimumCacheExpirationDate(const QUrl &url, const QDateTime &dt) noexcept
Definition: networkaccessmanager.cpp:110
void run() noexcept override
Definition: networkaccessmanager.cpp:141
const FilePath mCacheFp
Definition: networkaccessmanager.h:92
static NetworkAccessManager * sInstance
Definition: networkaccessmanager.h:95
~NetworkAccessManager() noexcept
Definition: networkaccessmanager.cpp:64
QNetworkReply * post(const QNetworkRequest &request, const QByteArray &data) noexcept
Definition: networkaccessmanager.cpp:86
NetworkAccessManager(const NetworkAccessManager &other)=delete
QNetworkReply * get(const QNetworkRequest &request) noexcept
Definition: networkaccessmanager.cpp:74
void stop() noexcept
Definition: networkaccessmanager.cpp:166
NetworkAccessManager(const FilePath &cache=FilePath()) noexcept
Definition: networkaccessmanager.cpp:44
QSemaphore mThreadStartSemaphore
Definition: networkaccessmanager.h:93
QNetworkAccessManager * mManager
Definition: networkaccessmanager.h:94
std::unique_ptr< QIODevice > readFromCache(const QUrl &url) noexcept
Definition: networkaccessmanager.cpp:98
static NetworkAccessManager * instance() noexcept
Definition: networkaccessmanager.cpp:133
Definition: occmodel.cpp:77