QAbstractNetworkCache Class

The QAbstractNetworkCache class provides the interface for cache implementations. 更多...

头文件: #include <QAbstractNetworkCache>
qmake: QT += network
开始支持版本: Qt 4.5
基类: QObject
派生类:

QNetworkDiskCache

公有函数

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
  • 32 个公有函数继承自 QObject

公有槽函数

virtual void clear() = 0
  • 1 个公有槽函数继承自 QObject

受保护的函数

QAbstractNetworkCache(QObject *parent = Q_NULLPTR)
  • 9 个受保护的函数继承自 QObject

其他继承的成员

  • 1 个属性继承自 QObject
  • 2 个信号继承自 QObject
  • 1 个公有变量继承自 QObject
  • 10 个静态公有成员继承自 QObject
  • 2 个受保护的变量继承自 QObject

详细描述

The QAbstractNetworkCache class provides the interface for cache implementations.

QAbstractNetworkCache is the base class for every standard cache that is used by QNetworkAccessManager. QAbstractNetworkCache is an abstract class and cannot be instantiated.

参见 QNetworkDiskCache.

成员函数

[protected] QAbstractNetworkCache::QAbstractNetworkCache(QObject *parent = Q_NULLPTR)

Constructs an abstract network cache with the given parent.

[virtual] QAbstractNetworkCache::~QAbstractNetworkCache()

Destroys the cache.

Any operations that have not been inserted are discarded.

参见 insert().

[pure virtual] qint64 QAbstractNetworkCache::cacheSize() const

Returns the current size taken up by the cache. Depending upon the cache implementation this might be disk or memory size.

In the base class this is a pure virtual function.

参见 clear().

[pure virtual slot] void QAbstractNetworkCache::clear()

Removes all items from the cache. Unless there was failures clearing the cache cacheSize() should return 0 after a call to clear.

In the base class this is a pure virtual function.

参见 cacheSize() and remove().

[pure virtual] QIODevice *QAbstractNetworkCache::data(const QUrl &url)

Returns the data associated with url.

It is up to the application that requests the data to delete the QIODevice when done with it.

If there is no cache for url, the url is invalid, or if there is an internal cache error 0 is returned.

In the base class this is a pure virtual function.

参见 metaData() and prepare().

[pure virtual] void QAbstractNetworkCache::insert(QIODevice *device)

Inserts the data in device and the prepared meta data into the cache. After this function is called the data and meta data should be retrievable using data() and metaData().

To cancel a prepared inserted call remove() on the metadata's url.

In the base class this is a pure virtual function.

参见 prepare() and remove().

[pure virtual] QNetworkCacheMetaData QAbstractNetworkCache::metaData(const QUrl &url)

Returns the meta data for the url url.

If the url is valid and the cache contains the data for url, a valid QNetworkCacheMetaData is returned.

In the base class this is a pure virtual function.

参见 updateMetaData() and data().

[pure virtual] QIODevice *QAbstractNetworkCache::prepare(const QNetworkCacheMetaData &metaData)

Returns the device that should be populated with the data for the cache item metaData. When all of the data has been written insert() should be called. If metaData is invalid or the url in the metadata is invalid 0 is returned.

The cache owns the device and will take care of deleting it when it is inserted or removed.

To cancel a prepared inserted call remove() on the metadata's url.

In the base class this is a pure virtual function.

参见 remove(), updateMetaData(), and insert().

[pure virtual] bool QAbstractNetworkCache::remove(const QUrl &url)

Removes the cache entry for url, returning true if success otherwise false.

In the base class this is a pure virtual function.

参见 clear() and prepare().

[pure virtual] void QAbstractNetworkCache::updateMetaData(const QNetworkCacheMetaData &metaData)

Updates the cache meta date for the metaData's url to metaData

If the cache does not contains a cache item for the url then no action is taken.

In the base class this is a pure virtual function.

参见 metaData() and prepare().