11#include <QNetworkDiskCache>
12#include <QRecursiveMutex>
36 qint64 CurrentSize_ = -1;
38 mutable QRecursiveMutex InsertRemoveMutex_;
40 QHash<QIODevice*, QUrl> PendingDev2Url_;
41 QHash<QUrl, QList<QIODevice*>> PendingUrl2Devs_;
55 explicit NetworkDiskCache (
const QString& subpath, QObject *parent =
nullptr);
63 QIODevice*
data (
const QUrl& url)
override;
67 void insert (QIODevice *device)
override;
71 QNetworkCacheMetaData
metaData (
const QUrl& url)
override;
75 QIODevice*
prepare (
const QNetworkCacheMetaData&)
override;
79 bool remove (
const QUrl& url)
override;
qint64 cacheSize() const override
Reimplemented from QNetworkDiskCache.
QIODevice * data(const QUrl &url) override
Reimplemented from QNetworkDiskCache.
bool remove(const QUrl &url) override
Reimplemented from QNetworkDiskCache.
void updateMetaData(const QNetworkCacheMetaData &metaData) override
Reimplemented from QNetworkDiskCache.
qint64 expire() override
Reimplemented from QNetworkDiskCache.
NetworkDiskCache(const QString &subpath, QObject *parent=nullptr)
Constructs the new disk cache.
QNetworkCacheMetaData metaData(const QUrl &url) override
Reimplemented from QNetworkDiskCache.
void insert(QIODevice *device) override
Reimplemented from QNetworkDiskCache.
QIODevice * prepare(const QNetworkCacheMetaData &) override
Reimplemented from QNetworkDiskCache.
detail::ScopeGuard< detail::DefaultScopeGuardDeleter > DefaultScopeGuard