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);
59 qint64 cacheSize ()
const override;
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;
83 void updateMetaData (
const QNetworkCacheMetaData& metaData)
override;
87 qint64 expire ()
override;