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

DbDataBase Class Reference

Db objects: DbDataBase. More...

#include <DbDataBaseObj.h>

Inheritance diagram for DbDataBase:

DbAccessObj List of all members.

Public Types

typedef IDbDataBase::Link Link
 Link definition. More...

typedef IDbDataBase::Type Type
 Type info definition. More...


Private Types

typedef std::map<std::string,
Link*> 
LinkMap
 Definition of map with link elements. More...

typedef std::vector<Link*> LinkVector
 Definition of array with link elements. More...

typedef std::map<std::string,
Type*> 
TypeMap
 Definition of map with link elements. More...

typedef std::vector<Type*> TypeVector
 Definition of array with link elements. More...


Private Methods

 DbDataBase (const dbHandle<DbFederation>& fed, const std::string& name, DbAccessMode mode=DbOOMs::READ)
 Standard constructor of a database obejct. More...

virtual ~DbDataBase ()
 Standard Destructor. More...

dbHandle<DbFederation>& federation ()
 Access to federation handle. More...

const dbHandle<DbFederation>& federation () const
 Access to federation handle (CONST). More...

IDbDataBaseinfo () const
 Access to technology dependent implementation. More...

IOODataBasedb ()
 Allow access to the database implementation. More...

IMessageSvc* msgSvc ()
 Allow access to the message service. More...

DbResult closeContainers () const
 Close all opened containers. More...

DbResult open () const
 Open database object. More...

DbResult close () const
 close database object. More...

long numAssocEntries () const
 Retrieve the number of all contained object types. More...

DbResult assocEntry (long count, dbHandle<DbLink>& link, std::string& db, std::string& cnt, std::string& obj) const
 Retrieve association link from link container identified by its sequence number. More...

DbResult assocEntry (const dbHandle<DbLink>& which, std::string& db, std::string& cnt, std::string& obj) const
 Retrieve association link from link container. More...

DbResult addAssocEntry (const std::string& db, const std::string& cnt, const std::string& obj, dbHandle<DbLink>& to)
 Add association link to link container. More...

long numObjTypes () const
 Retrieve the number of all contained object types. More...

const DbTypeInfoobjType (long which) const
 Retrieve persistent type information by number. More...

const DbTypeInfoobjType (const std::string& name) const
 Retrieve persistent type information by name. More...

DbResult addType (const std::string& cntName, const DbTypeInfo& pType)
 Add persistent type to the database. More...


Private Attributes

friend IDbDataBase
 Friends with full object access. More...

friend DbFederation
friend DbDataBaseImpl
friend dbHandle<DbDataBase>
dbHandle<DbFederationm_fed
 Handle to federation. More...

dbHandle<DbContainerm_links
 Handle to link container. More...

dbHandle<DbContainerm_types
 Handle to containertype container. More...

IOODataBasem_dbOOMs
 Pointer to specific DbOOMs implementation. More...

IMessageSvc* m_msgSvc
 Pointer to the message service to be used. More...

IDbDataBasem_info
 Technology dependent implementation block. More...

LinkMap m_linkMap
 Map containing all links. More...

LinkVector m_linkVector
 Random access array containing all links. More...

TypeMap m_typeMap
 Map containing all links. More...

TypeVector m_typeVector
 Random access array containing all links. More...


Detailed Description

Db objects: DbDataBase.

Description: Implementation independent part of a database object objects.

Dependencies:

History :

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

Definition at line 51 of file DbDataBaseObj.h.


Member Typedef Documentation

typedef IDbDataBase::Link DbDataBase::Link
 

Link definition.

Definition at line 59 of file DbDataBaseObj.h.

Referenced by addAssocEntry().

typedef std::map<std::string, Link*> DbDataBase::LinkMap [private]
 

Definition of map with link elements.

Definition at line 64 of file DbDataBaseObj.h.

typedef std::vector<Link*> DbDataBase::LinkVector [private]
 

Definition of array with link elements.

Definition at line 66 of file DbDataBaseObj.h.

typedef IDbDataBase::Type DbDataBase::Type
 

Type info definition.

Definition at line 61 of file DbDataBaseObj.h.

Referenced by addType().

typedef std::map<std::string, Type*> DbDataBase::TypeMap [private]
 

Definition of map with link elements.

Definition at line 68 of file DbDataBaseObj.h.

typedef std::vector<Type*> DbDataBase::TypeVector [private]
 

Definition of array with link elements.

Definition at line 70 of file DbDataBaseObj.h.


Constructor & Destructor Documentation

DbDataBase::DbDataBase ( const dbHandle< DbFederation >& fed,
const std::string & name,
DbAccessMode mode = DbOOMs::READ ) [private]
 

Standard constructor of a database obejct.

Definition at line 32 of file DbDataBaseObj.cpp.

DbDataBase::~DbDataBase ( ) [private, virtual]
 

Standard Destructor.

Definition at line 75 of file DbDataBaseObj.cpp.


Member Function Documentation

DbResult DbDataBase::addAssocEntry ( const std::string & db,
const std::string & cnt,
const std::string & obj,
dbHandle< DbLink >& to ) [private]
 

Add association link to link container.

Definition at line 108 of file DbDataBaseObj.cpp.

DbResult DbDataBase::addType ( const std::string & cntName,
const DbTypeInfo & pType ) [private]
 

Add persistent type to the database.

Definition at line 172 of file DbDataBaseObj.cpp.

DbResult DbDataBase::assocEntry ( const dbHandle< DbLink >& which,
std::string & db,
std::string & cnt,
std::string & obj ) const [private]
 

Retrieve association link from link container.

Definition at line 313 of file DbDataBaseObj.cpp.

DbResult DbDataBase::assocEntry ( long count,
dbHandle< DbLink >& link,
std::string & db,
std::string & cnt,
std::string & obj ) const [private]
 

Retrieve association link from link container identified by its sequence number.

Definition at line 299 of file DbDataBaseObj.cpp.

DbResult DbDataBase::close ( ) const [private]
 

close database object.

Definition at line 284 of file DbDataBaseObj.cpp.

DbResult DbDataBase::closeContainers ( ) const [private]
 

Close all opened containers.

Definition at line 268 of file DbDataBaseObj.cpp.

IOODataBase * DbDataBase::db ( ) [inline, private]
 

Allow access to the database implementation.

Definition at line 133 of file DbDataBaseObj.h.

const dbHandle< DbFederation >& DbDataBase::federation ( ) const [inline, private]
 

Access to federation handle (CONST).

Definition at line 149 of file DbDataBaseObj.h.

dbHandle< DbFederation >& DbDataBase::federation ( ) [inline, private]
 

Access to federation handle.

Definition at line 145 of file DbDataBaseObj.h.

IDbDataBase * DbDataBase::info ( ) const [inline, private]
 

Access to technology dependent implementation.

Definition at line 137 of file DbDataBaseObj.h.

IMessageSvc * DbDataBase::msgSvc ( ) [inline, private]
 

Allow access to the message service.

Definition at line 141 of file DbDataBaseObj.h.

long DbDataBase::numAssocEntries ( ) const [private]
 

Retrieve the number of all contained object types.

Definition at line 294 of file DbDataBaseObj.cpp.

long DbDataBase::numObjTypes ( ) const [private]
 

Retrieve the number of all contained object types.

Definition at line 144 of file DbDataBaseObj.cpp.

const DbTypeInfo * DbDataBase::objType ( const std::string & name ) const [private]
 

Retrieve persistent type information by name.

Definition at line 157 of file DbDataBaseObj.cpp.

const DbTypeInfo * DbDataBase::objType ( long which ) const [private]
 

Retrieve persistent type information by number.

Definition at line 149 of file DbDataBaseObj.cpp.

DbResult DbDataBase::open ( ) const [private]
 

Open database object.

Definition at line 212 of file DbDataBaseObj.cpp.


Member Data Documentation

DbDataBaseImpl [private]
 

Definition at line 55 of file DbDataBaseObj.h.

DbFederation [private]
 

Definition at line 54 of file DbDataBaseObj.h.

IDbDataBase [private]
 

Friends with full object access.

Definition at line 53 of file DbDataBaseObj.h.

friend DbDataBase::dbHandle<DbDataBase> [private]
 

Definition at line 56 of file DbDataBaseObj.h.

IOODataBase * DbDataBase::m_dbOOMs [private]
 

Pointer to specific DbOOMs implementation.

Definition at line 78 of file DbDataBaseObj.h.

dbHandle< DbFederation > DbDataBase::m_fed [mutable, private]
 

Handle to federation.

Definition at line 72 of file DbDataBaseObj.h.

IDbDataBase * DbDataBase::m_info [mutable, private]
 

Technology dependent implementation block.

Definition at line 82 of file DbDataBaseObj.h.

LinkMap DbDataBase::m_linkMap [mutable, private]
 

Map containing all links.

Definition at line 84 of file DbDataBaseObj.h.

LinkVector DbDataBase::m_linkVector [mutable, private]
 

Random access array containing all links.

Definition at line 86 of file DbDataBaseObj.h.

dbHandle< DbContainer > DbDataBase::m_links [mutable, private]
 

Handle to link container.

Definition at line 74 of file DbDataBaseObj.h.

IMessageSvc * DbDataBase::m_msgSvc [private]
 

Pointer to the message service to be used.

Definition at line 80 of file DbDataBaseObj.h.

TypeMap DbDataBase::m_typeMap [mutable, private]
 

Map containing all links.

Definition at line 88 of file DbDataBaseObj.h.

TypeVector DbDataBase::m_typeVector [mutable, private]
 

Random access array containing all links.

Definition at line 90 of file DbDataBaseObj.h.

dbHandle< DbContainer > DbDataBase::m_types [mutable, private]
 

Handle to containertype container.

Definition at line 76 of file DbDataBaseObj.h.


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