Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

OPimAccessTemplate< T > Class Template Reference

#include </home/clem/local/src/opie/noncore/unsupported/libopie/pim/opimaccesstemplate.h>

Inheritance diagram for OPimAccessTemplate< T >:

Inheritance graph
[legend]
Collaboration diagram for OPimAccessTemplate< T >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ORecordList< T > List
typedef OPimAccessBackend< T > BackEnd
typedef OPimCache< T > Cache
enum  Access { Random = 0, SortedAccess }

Public Member Functions

 OPimAccessTemplate (BackEnd *end)
virtual ~OPimAccessTemplate ()
bool load ()
virtual bool reload ()
bool save ()
bool wasChangedExternally () const
virtual List allRecords () const
virtual List matchRegexp (const QRegExp &r) const
virtual List queryByExample (const T &t, int querySettings, const QDateTime &d=QDateTime())
virtual T find (int uid) const
virtual T find (int uid, const QArray< int > &, uint current, typename OTemplateBase< T >::CacheDirection dir=OTemplateBase< T >::Forward) const
void clear ()
virtual bool add (const T &t)
bool add (const OPimRecord &)
virtual bool remove (const T &t)
bool remove (int uid)
bool remove (const OPimRecord &)
virtual bool replace (const T &t)
void setReadAhead (uint count)
void cache (const T &) const
void setSaneCacheSize (int)
QArray< int > records () const

Protected Member Functions

void invalidateCache ()
void setBackEnd (BackEnd *end)
BackEndbackEnd ()

Protected Attributes

BackEndm_backEnd
Cache m_cache

Private Attributes

OPimAccessTemplatePrivate * d

Detailed Description

template<class T = OPimRecord>
class OPimAccessTemplate< T >

Thats the frontend to our OPIE PIM Library. Either you want to use it's interface or you want to implement your own Access lib Just create a OPimRecord and inherit from the plugins

Definition at line 24 of file opimaccesstemplate.h.


Member Typedef Documentation

template<class T = OPimRecord>
typedef OPimAccessBackend<T> OPimAccessTemplate< T >::BackEnd
 

Definition at line 31 of file opimaccesstemplate.h.

template<class T = OPimRecord>
typedef OPimCache<T> OPimAccessTemplate< T >::Cache
 

Definition at line 32 of file opimaccesstemplate.h.

template<class T = OPimRecord>
typedef ORecordList<T> OPimAccessTemplate< T >::List
 

Definition at line 30 of file opimaccesstemplate.h.


Member Enumeration Documentation

template<class T = OPimRecord>
enum OPimAccessTemplate::Access
 

Enumeration values:
Random 
SortedAccess 

Definition at line 26 of file opimaccesstemplate.h.


Constructor & Destructor Documentation

template<class T>
OPimAccessTemplate< T >::OPimAccessTemplate BackEnd end  ) 
 

c'tor BackEnd enum Access a small hint on how to handle the backend

Definition at line 162 of file opimaccesstemplate.h.

References OPimAccessBackend< T >::setFrontend().

template<class T>
OPimAccessTemplate< T >::~OPimAccessTemplate  )  [virtual]
 

Definition at line 169 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and qWarning().


Member Function Documentation

template<class T>
bool OPimAccessTemplate< T >::add const OPimRecord  )  [virtual]
 

Implements OPimBase.

Definition at line 245 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::add(), and t.

template<class T>
bool OPimAccessTemplate< T >::add const T &  t  )  [virtual]
 

add T to the backend

Parameters:
t The item to add.
Returns:
true if added successfully.

Definition at line 240 of file opimaccesstemplate.h.

References OPimAccessBackend< T >::add(), OPimAccessTemplate< T >::cache(), and OPimAccessTemplate< T >::m_backEnd.

Referenced by OPimAccessTemplate< T >::add(), and Datebook::BookManager::add().

template<class T>
OPimAccessTemplate< T >::List OPimAccessTemplate< T >::allRecords  )  const [virtual]
 

return a List of records you can iterate over them

Definition at line 188 of file opimaccesstemplate.h.

References OPimAccessBackend< T >::allRecords(), and OPimAccessTemplate< T >::m_backEnd.

template<class T>
OPimAccessTemplate< T >::BackEnd * OPimAccessTemplate< T >::backEnd  )  [protected]
 

returns the backend

Definition at line 276 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd.

template<class T>
void OPimAccessTemplate< T >::cache const T &   )  const [virtual]
 

For internal use only.

Implements OTemplateBase< T >.

Definition at line 290 of file opimaccesstemplate.h.

Referenced by OPimAccessTemplate< T >::add(), and OPimAccessTemplate< T >::find().

template<class T>
void OPimAccessTemplate< T >::clear  )  [virtual]
 

clears the backend and invalidates the backend

Implements OPimBase.

Definition at line 235 of file opimaccesstemplate.h.

References OPimAccessBackend< T >::clear(), OPimAccessTemplate< T >::invalidateCache(), and OPimAccessTemplate< T >::m_backEnd.

template<class T>
T OPimAccessTemplate< T >::find int  uid,
const QArray< int > &  ,
uint  current,
typename OTemplateBase< T >::CacheDirection  dir = OTemplateBase< T >::Forward
const [virtual]
 

read ahead cache find method ;)

Definition at line 218 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::cache(), OPimCache< T >::contains(), OPimAccessBackend< T >::find(), OPimCache< T >::find(), OPimAccessTemplate< T >::m_backEnd, OPimAccessTemplate< T >::m_cache, and t.

template<class T>
T OPimAccessTemplate< T >::find int  uid  )  const [virtual]
 

find the OPimRecord uid

Implements OTemplateBase< T >.

Definition at line 212 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::cache(), OPimAccessBackend< T >::find(), OPimAccessTemplate< T >::m_backEnd, and t.

Referenced by Datebook::BookManager::event().

template<class T>
void OPimAccessTemplate< T >::invalidateCache  )  [protected]
 

invalidate the cache

Definition at line 272 of file opimaccesstemplate.h.

References OPimCache< T >::invalidate(), and OPimAccessTemplate< T >::m_cache.

Referenced by OPimAccessTemplate< T >::clear(), OPimAccessTemplate< T >::load(), and OPimAccessTemplate< T >::reload().

template<class T>
bool OPimAccessTemplate< T >::load  )  [virtual]
 

load from the backend

Implements OPimBase.

Definition at line 174 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::invalidateCache(), OPimAccessBackend< T >::load(), and OPimAccessTemplate< T >::m_backEnd.

Referenced by Datebook::BookManager::load().

template<class T>
OPimAccessTemplate< T >::List OPimAccessTemplate< T >::matchRegexp const QRegExp r  )  const [virtual]
 

return a List of records that match the regex

Definition at line 194 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::matchRegexp().

template<class T>
OPimAccessTemplate< T >::List OPimAccessTemplate< T >::queryByExample const T &  t,
int  querySettings,
const QDateTime d = QDateTime()
[virtual]
 

queryByExample.

See also:
otodoaccess, ocontactaccess

Definition at line 205 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::queryByExample().

template<class T>
QArray< int > OPimAccessTemplate< T >::records  )  const [virtual]
 

Implements OPimBase.

Definition at line 200 of file opimaccesstemplate.h.

References OPimAccessBackend< T >::allRecords(), and OPimAccessTemplate< T >::m_backEnd.

template<class T>
bool OPimAccessTemplate< T >::reload  )  [virtual]
 

Reload database. You should execute this function if the external database was changed. This function will load the external database and afterwards rejoin the local changes. Therefore the local database will be set consistent.

Definition at line 179 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::invalidateCache(), OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::reload().

Referenced by Datebook::BookManager::reload().

template<class T>
bool OPimAccessTemplate< T >::remove const OPimRecord  )  [virtual]
 

Implements OPimBase.

Definition at line 263 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::remove().

template<class T>
bool OPimAccessTemplate< T >::remove int  uid  )  [virtual]
 

remove the OPimRecord with uid

Parameters:
uid The ID of the item to remove
Returns:
true if successful.

Implements OPimBase.

Definition at line 258 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, OPimAccessTemplate< T >::m_cache, OPimAccessBackend< T >::remove(), and OPimCache< T >::remove().

template<class T>
bool OPimAccessTemplate< T >::remove const T &  t  )  [virtual]
 

remove T from the backend

Parameters:
t The item to remove
Returns:
true if successful.

Definition at line 254 of file opimaccesstemplate.h.

Referenced by OPimAccessTemplate< T >::remove(), and Datebook::BookManager::remove().

template<class T>
bool OPimAccessTemplate< T >::replace const T &  t  )  [virtual]
 

replace T from backend

Parameters:
t The item to replace
Returns:
true if successful.

Definition at line 267 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, OPimAccessTemplate< T >::m_cache, OPimAccessBackend< T >::replace(), and OPimCache< T >::replace().

Referenced by Datebook::BookManager::update().

template<class T>
bool OPimAccessTemplate< T >::save  )  [virtual]
 

Save contacts database. Save is more a "commit". After calling this function, all changes are public available.

Returns:
true if successful

Implements OPimBase.

Reimplemented in OContactAccess.

Definition at line 184 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::save().

Referenced by OContactAccess::save(), Opie::OPimContactAccess::save(), and Datebook::BookManager::save().

template<class T>
void OPimAccessTemplate< T >::setBackEnd BackEnd end  )  [protected]
 

Definition at line 284 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::setFrontend().

Referenced by OContactAccess::OContactAccess(), and Opie::OPimContactAccess::OPimContactAccess().

template<class T>
void OPimAccessTemplate< T >::setReadAhead uint  count  ) 
 

Definition at line 299 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_backEnd, and OPimAccessBackend< T >::setReadAhead().

template<class T>
void OPimAccessTemplate< T >::setSaneCacheSize int   )  [virtual]
 

Implements OTemplateBase< T >.

Definition at line 295 of file opimaccesstemplate.h.

References OPimAccessTemplate< T >::m_cache, and OPimCache< T >::setSize().

template<class T>
bool OPimAccessTemplate< T >::wasChangedExternally  )  const
 

if the resource was changed externally You should use the signal handling instead of polling possible changes ! zecke: Do you implement a signal for otodoaccess ?

Reimplemented in OContactAccess.

Definition at line 280 of file opimaccesstemplate.h.


Member Data Documentation

template<class T = OPimRecord>
OPimAccessTemplatePrivate* OPimAccessTemplate< T >::d [private]
 

Reimplemented from OTemplateBase< T >.

Reimplemented in OContactAccess, ODateBookAccess, and OTodoAccess.

Definition at line 157 of file opimaccesstemplate.h.

template<class T = OPimRecord>
BackEnd* OPimAccessTemplate< T >::m_backEnd [protected]
 

Reimplemented in OContactAccess, and ODateBookAccess.

Definition at line 153 of file opimaccesstemplate.h.

Referenced by OPimAccessTemplate< T >::add(), OPimAccessTemplate< T >::allRecords(), OPimAccessTemplate< T >::backEnd(), OPimAccessTemplate< T >::clear(), OPimAccessTemplate< T >::find(), OPimAccessTemplate< T >::load(), OPimAccessTemplate< T >::matchRegexp(), OPimAccessTemplate< T >::queryByExample(), OPimAccessTemplate< T >::records(), OPimAccessTemplate< T >::reload(), OPimAccessTemplate< T >::remove(), OPimAccessTemplate< T >::replace(), OPimAccessTemplate< T >::save(), OPimAccessTemplate< T >::setBackEnd(), OPimAccessTemplate< T >::setReadAhead(), and OPimAccessTemplate< T >::~OPimAccessTemplate().

template<class T = OPimRecord>
Cache OPimAccessTemplate< T >::m_cache [protected]
 

Definition at line 154 of file opimaccesstemplate.h.

Referenced by OPimAccessTemplate< T >::find(), OPimAccessTemplate< T >::invalidateCache(), OPimAccessTemplate< T >::remove(), OPimAccessTemplate< T >::replace(), and OPimAccessTemplate< T >::setSaneCacheSize().


The documentation for this class was generated from the following file:
Generated on Sat Nov 5 17:43:06 2005 for OPIE by  doxygen 1.4.2