• Skip to content
  • Skip to link menu
KDE 4.6 API Reference
  • KDE API Reference
  • KDE-PIM Libraries
  • KDE Home
  • Contact Us
 

akonadi

  • Akonadi
  • EntityCache
Public Member Functions
Akonadi::EntityCache< T, FetchJob, FetchScope > Class Template Reference

#include <entitycache_p.h>

Inheritance diagram for Akonadi::EntityCache< T, FetchJob, FetchScope >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 EntityCache (int maxCapacity, Session *session=0, QObject *parent=0)
bool ensureCached (typename T::Id id, const FetchScope &scope)
void invalidate (typename T::Id id)
bool isCached (typename T::Id id) const
bool isRequested (typename T::Id id) const
void request (typename T::Id id, const FetchScope &scope)
T retrieve (typename T::Id id) const
void update (typename T::Id id, const FetchScope &scope)

Detailed Description

template<typename T, typename FetchJob, typename FetchScope>
class Akonadi::EntityCache< T, FetchJob, FetchScope >

A in-memory FIFO cache for a small amount of Entity objects.

Definition at line 79 of file entitycache_p.h.


Member Function Documentation

template<typename T, typename FetchJob, typename FetchScope>
bool Akonadi::EntityCache< T, FetchJob, FetchScope >::ensureCached ( typename T::Id  id,
const FetchScope &  scope 
) [inline]

Requests the object to be cached if it is not yet in the cache.

Returns:
true if it was in the cache already.

Definition at line 135 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
void Akonadi::EntityCache< T, FetchJob, FetchScope >::invalidate ( typename T::Id  id) [inline]

Marks the cache entry as invalid, use in case the object has been deleted on the server.

Definition at line 115 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
bool Akonadi::EntityCache< T, FetchJob, FetchScope >::isCached ( typename T::Id  id) const [inline]

Object is available in the cache and can be retrieved.

Definition at line 93 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
bool Akonadi::EntityCache< T, FetchJob, FetchScope >::isRequested ( typename T::Id  id) const [inline]

Object has been requested but is not yet loaded into the cache or is already available.

Definition at line 100 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
void Akonadi::EntityCache< T, FetchJob, FetchScope >::request ( typename T::Id  id,
const FetchScope &  scope 
) [inline]

Asks the cache to retrieve id.

request is used as a token to indicate which request has been finished in the dataAvailable() signal.

Definition at line 150 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
T Akonadi::EntityCache< T, FetchJob, FetchScope >::retrieve ( typename T::Id  id) const [inline]

Returns the cached object if available, an empty instance otherwise.

Definition at line 106 of file entitycache_p.h.

template<typename T, typename FetchJob, typename FetchScope>
void Akonadi::EntityCache< T, FetchJob, FetchScope >::update ( typename T::Id  id,
const FetchScope &  scope 
) [inline]

Triggers a re-fetching of a cache entry, use if it has changed on the server.

Definition at line 123 of file entitycache_p.h.


The documentation for this class was generated from the following file:
  • entitycache_p.h

akonadi

Skip menu "akonadi"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

KDE-PIM Libraries

Skip menu "KDE-PIM Libraries"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  •   richtextbuilders
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Generated for KDE-PIM Libraries by doxygen 1.7.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal