KDAV::EtagCache Class
class KDAV::EtagCacheA helper class to cache ETags. More...
Header: | #include <KDAV/EtagCache> |
CMake: | find_package(KF6 REQUIRED COMPONENTS DAV) target_link_libraries(mytarget PRIVATE KF6::DAV) |
Inherits: | QObject |
Public Functions
EtagCache(QObject *parent = nullptr) | |
QStringList | changedRemoteIds() const |
bool | contains(const QString &remoteId) const |
bool | etagChanged(const QString &remoteId, const QString &refEtag) const |
bool | isOutOfDate(const QString &remoteId) const |
void | markAsChanged(const QString &remoteId) |
void | removeEtag(const QString &remoteId) |
void | setEtag(const QString &remoteId, const QString &etag) |
QStringList | urls() const |
Protected Functions
void | setEtagInternal(const QString &remoteId, const QString &etag) |
Detailed Description
The EtagCache caches the remote ids and ETags of all items in a given collection. This cache is needed to find out which items have been changed in the backend and have to be refetched on the next call of Akonadi::ResourceBase::retrieveItems()
Member Function Documentation
[explicit]
EtagCache::EtagCache(QObject *parent = nullptr)
Creates a new ETag cache.
QStringList EtagCache::changedRemoteIds() const
Returns the list of remote ids of items that have been changed in the backend.
bool EtagCache::contains(const QString &remoteId) const
Checks if the given item is in the cache
bool EtagCache::etagChanged(const QString &remoteId, const QString &refEtag) const
Check if the known ETag for the remote ID is equal to refEtag.
bool EtagCache::isOutOfDate(const QString &remoteId) const
Returns true if the remote ID is marked as changed (is contained in the return of changedRemoteIds)
void EtagCache::markAsChanged(const QString &remoteId)
Mark an item as changed in the backend.
void EtagCache::removeEtag(const QString &remoteId)
Removes the entry for item with remote ID remoteId.
void EtagCache::setEtag(const QString &remoteId, const QString &etag)
Sets the ETag for the remote ID. If the remote ID is marked as changed (is contained in the return of changedRemoteIds), remove it from the changed list.
[protected]
void EtagCache::setEtagInternal(const QString &remoteId, const QString &etag)
Sets the ETag for the remote ID.
QStringList EtagCache::urls() const
Returns the list of all items URLs.