Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

DbAccessObj Class Template Reference

Db objects: DbAccessObj. More...

#include <DbAccessObj.h>

Inheritance diagram for DbAccessObj:

DbContainer DbDataBase DbFederation DbSession List of all members.

Public Types

typedef std::vector<TYPE*> Data
 Type definitions. More...

typedef std::vector<KEY> Keys
typedef Data::iterator iterator
typedef Data::const_iterator const_iterator

Public Methods

 DbAccessObj ()
 Standard constructor. More...

virtual ~DbAccessObj ()
 Standard destructor. More...

const std::string& name () const
 Access the instance name. More...

DbAccessMode mode () const
 Access mode. More...

unsigned char type () const
long addRef () const
 Add reference count. More...

long release () const
 Remove reference count. More...

void clearEntries ()
 Object cleanup: remove all entries. More...

const TYPE* find (const KEY& key) const
 Find object by key (CONST). More...

TYPE* find (const KEY& key)
 Find object by key. More...

bool add (const KEY& key, TYPE* val)
 Add entry to container. More...

bool remove (TYPE* val)
 Remove entry from container. More...

iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const

Protected Attributes

long m_refCount
 Reference counter. More...

std::string m_name
 Name of the instance. More...

DbAccessMode m_mode
 Access mode. More...

unsigned char m_type
 Database type. More...

Data m_data
 Data buffer. More...

Keys m_keys
 Key entry buffer. More...


Private Methods

template<classTHEKEY> bool isEqual<THEKEY> (const THEKEY& a, const THEKEY& b) const
template<> bool isEqual (const std::string& a, const std::string& b) const
long findKey (const KEY& key)

Detailed Description

template<class KEY, class TYPE> template class DbAccessObj

Db objects: DbAccessObj.

Description: Templated base class for "abstarct" container objects. These abstarct containers are: DnSessions, DbFederations, DbDataBases and DbContainers.

Dependencies:

History :

    +---------+----------------------------------------------+--------+
    |    Date |                 Comment                      | Who    |
    +---------+----------------------------------------------+--------+
    | 21/09/99| Initial version.                             | MF     |
    +---------+----------------------------------------------+--------+
    
Author: M.Frank Version: 1.0

Definition at line 47 of file DbAccessObj.h.


Member Typedef Documentation

template<classKEY, classTYPE>
typedef std::vector<TYPE*> DbAccessObj<KEY, TYPE>::Data
 

Type definitions.

Definition at line 50 of file DbAccessObj.h.

template<classKEY, classTYPE>
typedef std::vector<KEY> DbAccessObj<KEY, TYPE>::Keys
 

Definition at line 51 of file DbAccessObj.h.

template<classKEY, classTYPE>
typedef Data::const_iterator DbAccessObj<KEY, TYPE>::const_iterator
 

Definition at line 53 of file DbAccessObj.h.

template<classKEY, classTYPE>
typedef Data::iterator DbAccessObj<KEY, TYPE>::iterator
 

Definition at line 52 of file DbAccessObj.h.


Constructor & Destructor Documentation

template<classKEY, classTYPE>
DbAccessObj<KEY, TYPE>::DbAccessObj<KEY, TYPE> ( ) [inline]
 

Standard constructor.

Definition at line 93 of file DbAccessObj.h.

template<classKEY, classTYPE>
DbAccessObj<KEY, TYPE>::~DbAccessObj<KEY, TYPE> ( ) [inline, virtual]
 

Standard destructor.

Definition at line 96 of file DbAccessObj.h.


Member Function Documentation

template<classKEY, classTYPE>
bool DbAccessObj<KEY, TYPE>::add ( const KEY & key,
TYPE * val ) [inline]
 

Add entry to container.

Definition at line 160 of file DbAccessObj.h.

template<classKEY, classTYPE>
long DbAccessObj<KEY, TYPE>::addRef ( ) const [inline]
 

Add reference count.

Reimplemented in DbSession.

Definition at line 111 of file DbAccessObj.h.

template<classKEY, classTYPE>
const_iterator DbAccessObj<KEY, TYPE>::begin ( ) const [inline]
 

Definition at line 186 of file DbAccessObj.h.

template<classKEY, classTYPE>
iterator DbAccessObj<KEY, TYPE>::begin ( ) [inline]
 

Definition at line 183 of file DbAccessObj.h.

Referenced by DbDataBase::closeContainers(), and DbFederation::closeDataBases().

template<classKEY, classTYPE>
void DbAccessObj<KEY, TYPE>::clearEntries ( ) [inline]
 

Object cleanup: remove all entries.

Definition at line 129 of file DbAccessObj.h.

Referenced by DbContainer::~DbContainer(), DbDataBase::~DbDataBase(), DbFederation::~DbFederation(), and DbSession::~DbSession().

template<classKEY, classTYPE>
const_iterator DbAccessObj<KEY, TYPE>::end ( ) const [inline]
 

Definition at line 192 of file DbAccessObj.h.

template<classKEY, classTYPE>
iterator DbAccessObj<KEY, TYPE>::end ( ) [inline]
 

Definition at line 189 of file DbAccessObj.h.

Referenced by DbDataBase::closeContainers(), and DbFederation::closeDataBases().

template<classKEY, classTYPE>
TYPE * DbAccessObj<KEY, TYPE>::find ( const KEY & key ) [inline]
 

Find object by key.

Definition at line 149 of file DbAccessObj.h.

template<classKEY, classTYPE>
const TYPE * DbAccessObj<KEY, TYPE>::find ( const KEY & key ) const [inline]
 

Find object by key (CONST).

Definition at line 138 of file DbAccessObj.h.

template<classKEY, classTYPE>
long DbAccessObj<KEY, TYPE>::findKey ( const KEY & key ) [inline, private]
 

Definition at line 68 of file DbAccessObj.h.

Referenced by add().

template<classKEY, classTYPE>
template<>
bool DbAccessObj<KEY, TYPE>::isEqual ( const std::string & a,
const std::string & b ) const [inline, private]
 

Definition at line 65 of file DbAccessObj.h.

template<classKEY, classTYPE>
template<classTHEKEY>
bool DbAccessObj<KEY, TYPE>::isEqual ( const THEKEY & a,
const THEKEY & b ) const [inline, private]
 

Definition at line 55 of file DbAccessObj.h.

Referenced by find(), findKey(), and remove().

template<classKEY, classTYPE>
DbAccessMode DbAccessObj<KEY, TYPE>::mode ( ) const [inline]
 

Access mode.

Definition at line 103 of file DbAccessObj.h.

Referenced by dbHandle< DbFederation >::dbHandle().

template<classKEY, classTYPE>
const std::string & DbAccessObj<KEY, TYPE>::name ( ) const [inline]
 

Access the instance name.

Definition at line 99 of file DbAccessObj.h.

Referenced by dbHandle< DbFederation >::dbHandle(), and DbContainer::~DbContainer().

template<classKEY, classTYPE>
long DbAccessObj<KEY, TYPE>::release ( ) const [inline]
 

Remove reference count.

Reimplemented in DbSession.

Definition at line 118 of file DbAccessObj.h.

template<classKEY, classTYPE>
bool DbAccessObj<KEY, TYPE>::remove ( TYPE * val ) [inline]
 

Remove entry from container.

Definition at line 170 of file DbAccessObj.h.

template<classKEY, classTYPE>
unsigned char DbAccessObj<KEY, TYPE>::type ( ) const [inline]
 

Definition at line 107 of file DbAccessObj.h.

Referenced by DbContainer::addEntry(), dbHandle< DbFederation >::dbHandle(), and DbContainer::updateEntry().


Member Data Documentation

template<classKEY, classTYPE>
Data DbAccessObj<KEY, TYPE>::m_data [protected]
 

Data buffer.

Definition at line 87 of file DbAccessObj.h.

template<classKEY, classTYPE>
Keys DbAccessObj<KEY, TYPE>::m_keys [protected]
 

Key entry buffer.

Definition at line 89 of file DbAccessObj.h.

template<classKEY, classTYPE>
DbAccessMode DbAccessObj<KEY, TYPE>::m_mode [protected]
 

Access mode.

Definition at line 83 of file DbAccessObj.h.

template<classKEY, classTYPE>
std::string DbAccessObj<KEY, TYPE>::m_name [protected]
 

Name of the instance.

Definition at line 81 of file DbAccessObj.h.

template<classKEY, classTYPE>
long DbAccessObj<KEY, TYPE>::m_refCount [mutable, protected]
 

Reference counter.

Definition at line 79 of file DbAccessObj.h.

template<classKEY, classTYPE>
unsigned char DbAccessObj<KEY, TYPE>::m_type [protected]
 

Database type.

Definition at line 85 of file DbAccessObj.h.


The documentation for this class was generated from the following file:
Generated at Wed Nov 21 12:22:21 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000