Класс QAbstractNetworkCache
Класс QAbstractNetworkCache предоставляет интерфейс для реализации кэшей. Подробнее...
| Заголовок: | #include <QAbstractNetworkCache> |
| CMake: | find_package(Qt6 COMPONENTS Network REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Network) |
| qmake: | QT += network |
| Наследует: | QObject |
| Наследуется: |
Открытые функции
| virtual | ~QAbstractNetworkCache() |
| virtual qint64 | cacheSize() const = 0 |
| virtual QIODevice * | data(const QUrl &url) = 0 |
| virtual void | insert(QIODevice *device) = 0 |
| virtual QNetworkCacheMetaData | metaData(const QUrl &url) = 0 |
| virtual QIODevice * | prepare(const QNetworkCacheMetaData &metaData) = 0 |
| virtual bool | remove(const QUrl &url) = 0 |
| virtual void | updateMetaData(const QNetworkCacheMetaData &metaData) = 0 |
Открытые слоты
| virtual void | clear() = 0 |
Защищенные функции
| QAbstractNetworkCache(QObject *parent = nullptr) |
Подробное описание
QAbstractNetworkCache — базовый класс для всех стандартных кэшей, используемых QNetworkAccessManager. QAbstractNetworkCache — абстрактный класс и не может быть инстанцирован.
См. также QNetworkDiskCache.
Документация по функциям-членам
[protected] QAbstractNetworkCache::QAbstractNetworkCache(QObject *parent = nullptr)
Конструктор абстрактного кэша сети с заданным parent.
[pure virtual slot] void QAbstractNetworkCache::clear()
Удаляет все элементы из кэша. Если при очистке кэша не возникли ошибки, cacheSize() должен вернуть 0 после вызова clear.
В базовом классе это чисто виртуальная функция.
См. также cacheSize() и remove().
[virtual] QAbstractNetworkCache::~QAbstractNetworkCache()
Уничтожает кэш.
Любые операции, которые не были вставлены, отбрасываются.
См. также insert().
[pure virtual] qint64 QAbstractNetworkCache::cacheSize() const
Возвращает текущий размер, занимаемый кэшем. В зависимости от реализации кэша, это может быть размер на диске или в памяти.
В базовом классе это чисто виртуальная функция.
См. также clear().
[pure virtual] QIODevice *QAbstractNetworkCache::data(const QUrl &url)
Возвращает данные, связанные с url.
Приложение, запрашивающее данные, само должно удалить QIODevice, когда с ним закончит работу.
Если для url нет кэша, url недействителен или произошла внутренняя ошибка кэша, возвращается nullptr.
В базовом классе это чисто виртуальная функция.
См. также metaData() и prepare().
[pure virtual] void QAbstractNetworkCache::insert(QIODevice *device)
Вставляет данные из device и подготовленные метаданные в кэш. После вызова этой функции данные и метаданные должны быть доступны с помощью data() и metaData().
Для отмены подготовки вставки используйте remove() на url метаданных.
В базовом классе это чисто виртуальная функция.
См. также prepare() и remove().
[pure virtual] QNetworkCacheMetaData QAbstractNetworkCache::metaData(const QUrl &url)
Возвращает метаданные для url url.
Если url действителен и кэш содержит данные для url, возвращаются корректные метаданные QNetworkCacheMetaData.
В базовом классе это чисто виртуальная функция.
См. также updateMetaData() и data().
[pure virtual] QIODevice *QAbstractNetworkCache::prepare(const QNetworkCacheMetaData &metaData)
Возвращает устройство, которое должно быть заполнено данными для элемента кэша metaData. Когда все данные будут записаны, должен быть вызван insert(). Если metaData некорректно или url в метаданных некорректен, возвращается nullptr.
Кэш владеет устройством и позаботится об его удалении при вставке или удалении.
Для отмены подготовки вставки используйте remove() на url метаданных.
В базовом классе это чисто виртуальная функция.
См. также remove(), updateMetaData(), и insert().
[pure virtual] bool QAbstractNetworkCache::remove(const QUrl &url)
Удаляет запись кэша для url, возвращая true, если операция успешна, иначе false.
В базовом классе это чисто виртуальная функция.
См. также clear() и prepare().
[pure virtual] void QAbstractNetworkCache::updateMetaData(const QNetworkCacheMetaData &metaData)
Обновляет метаданные кэша для url метаданных на metaData
Если в кэше нет элемента для url, никаких действий не выполняется.
В базовом классе это чисто виртуальная функция.
См. также metaData() и prepare().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qabstractnetworkcache.html