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

DatabaseObject Class Reference

#include <cDatabaseObject.h>

Inheritance diagram for DatabaseObject:

Inheritance graph
[legend]
Collaboration diagram for DatabaseObject:

Collaboration graph
[legend]
List of all members.

Public Methods

 DatabaseObject ()
 DatabaseObject (enum LockingStrategy a_LockingStrategy, enum UpdatingStrategy an_UpdatingStrategy, enum WaitingStrategy a_WaitingStrategy, enum ReadingStrategy a_ReadingStrategy)
 ~DatabaseObject ()
 ABSTRACT_CLASS (DatabaseObject)
virtual bool IsDirty () const
virtual bool MarkAsDirty ()
virtual class RefBase BePersistent (class Connection *DbCon)
 ABSTRACT_CLASS (ImmutableObject)
 ABSTRACT_CLASS (Object)
 PARENTS (NULL)
 FROM ("")
 WHERE ("")
 GROUP_BY ("")
 HAVING ("")
 ORDER_BY ("")
virtual bool IsTransient () const
virtual bool IsPersistent () const
virtual ObjectMemoryLock ()
virtual bool MemoryUnlock ()
virtual unsigned int MemoryLocked () const
virtual bool RemoveAllMemoryLocks ()
virtual class ObjectIsInMemory () const
virtual class ObjectIdentification ObjectID () const
virtual bool PostLoad ()
virtual bool Refresh ()
virtual bool Update ()
virtual bool Free ()
virtual bool Delete ()
virtual class RefBase Address () const
virtual class Connection * Connection () const
virtual class ProtoBasePrototype () const=0
virtual enum UpdatingStrategy CurrentUpdatingStrategy () const
virtual bool SetUpdatingStrategy (enum UpdatingStrategy anUpdateStrategy)
virtual enum WaitingStrategy CurrentWaitingStrategy () const
virtual bool SetWaitingStrategy (enum WaitingStrategy aWaitingStrategy)
virtual enum LockingStrategy CurrentLockingStrategy () const
virtual bool SetLockingStrategy (enum LockingStrategy aLockingStrategy)
virtual enum ReadingStrategy CurrentReadingStrategy () const
virtual bool SetReadingStrategy (enum ReadingStrategy aReadingStrategy)
virtual bool IsAncestor (const ObjRef &descendant) const
Query operator () const
Query operator (const QueRefProto &Q) const

Static Public Methods

const char * BaseClassName ()
const char * RootClassName ()

Public Attributes

MAPKEY_BEGIN MAPKEY_END
MAP_BEGIN MAP_END
Query operator &&const QueRefProto
&Q 
const

Protected Methods

virtual bool _MarkAsClean ()
virtual bool _Free ()
virtual char * _KeyValues () const
virtual bool _Refresh ()
virtual class RefBase _Virtualise (RefBase &DbPtr) const
virtual const char * _SelectKeyValues (const RefBase &DbPtr) const
virtual bool _VersionsMatch ()
long int _PtrToOid (const ObjRef &ref) const
RefBase _OidToPtr (const long int oid, class ProtoBase *prot) const
Object_OidToMemPtr (const long int oid, class ProtoBase *prot) const
virtual char * _Where () const
virtual char * _OrderBy () const
virtual char * _Select () const
virtual char * _From () const

Protected Attributes

bool _DirtyFlag
unsigned int _MemoryLocks
bool _FreeWasDone
bool _ForUpdate
unsigned short _Strategies
Connection_Connection

Constructor & Destructor Documentation

DatabaseObject::DatabaseObject  
 

Definition at line 37 of file cDatabaseObject.cpp.

References _DirtyFlag, and ImmutableObject::_MemoryLocks.

DatabaseObject::DatabaseObject enum LockingStrategy    a_LockingStrategy,
enum UpdatingStrategy    an_UpdatingStrategy,
enum WaitingStrategy    a_WaitingStrategy,
enum ReadingStrategy    a_ReadingStrategy
 

Definition at line 61 of file cDatabaseObject.cpp.

References _DirtyFlag, ImmutableObject::_MemoryLocks, LockingStrategy, ReadingStrategy, ObjRef::SetLockingStrategy(), ObjRef::SetUpdatingStrategy(), ObjRef::SetWaitingStrategy(), UpdatingStrategy, and WaitingStrategy.

DatabaseObject::~DatabaseObject  
 

Definition at line 91 of file cDatabaseObject.cpp.


Member Function Documentation

bool Object::_Free   [protected, virtual, inherited]
 

Implements ObjRef.

Definition at line 83 of file cObject.cpp.

Referenced by RefBase::_Free(), Object::~Object(), and PersistentObject::~PersistentObject().

virtual char* QueRefProto::_From   const [inline, protected, virtual, inherited]
 

Reimplemented in ComplexQuery.

Definition at line 51 of file cQueRefProto.h.

Referenced by ProtoBase::_StmtSelectPtr().

virtual char* Object::_KeyValues   const [inline, protected, virtual, inherited]
 

Implements ObjRef.

Definition at line 126 of file cObject.h.

References ProtoBase::_KeyValues(), and ObjRef::Prototype().

Referenced by Object::Address(), and Object::ObjectID().

virtual bool DatabaseObject::_MarkAsClean   [inline, protected, virtual]
 

Reimplemented from Object.

Definition at line 70 of file cDatabaseObject.h.

class Object* ObjRef::_OidToMemPtr const long int    oid,
class ProtoBase   prot
const [protected, inherited]
 

class RefBase ObjRef::_OidToPtr const long int    oid,
class ProtoBase   prot
const [protected, inherited]
 

virtual char* ObjRef::_OrderBy   const [inline, protected, virtual, inherited]
 

Implements QueRefProto.

Definition at line 212 of file cObjRef.h.

long int ObjRef::_PtrToOid const ObjRef   ref const [protected, inherited]
 

bool Object::_Refresh   [protected, virtual, inherited]
 

Definition at line 191 of file cObject.cpp.

References ProtoBase::_ExportKeyAttributes(), Object::_ForUpdate, Object::_VersionsMatch(), ObjRef::CurrentLockingStrategy(), ObjRef::CurrentReadingStrategy(), ProtoBase::IsObject(), Object::IsTransient(), LS_Exclusive, ObjRef::Prototype(), RS_Database, and RS_Timestamp.

virtual char* QueRefProto::_Select   const [inline, protected, virtual, inherited]
 

Reimplemented in ComplexQuery.

Definition at line 49 of file cQueRefProto.h.

Referenced by ProtoBase::_StmtSelectPtr().

virtual const char* Object::_SelectKeyValues const RefBase   DbPtr const [inline, protected, virtual, inherited]
 

Definition at line 224 of file cObject.h.

References RefBase::_ObjectIdentification, and ObjectIdentification::_SelectKeyValues.

virtual bool Object::_VersionsMatch   [inline, protected, virtual, inherited]
 

Reimplemented in PersistentObject.

Definition at line 234 of file cObject.h.

Referenced by Object::_Refresh().

virtual class RefBase Object::_Virtualise RefBase   DbPtr const [inline, protected, virtual, inherited]
 

Definition at line 217 of file cObject.h.

References RefBase::_Virtualise().

char * ObjRef::_Where   const [protected, virtual, inherited]
 

Implements QueRefProto.

Definition at line 62 of file cObjRef.cpp.

References StrCat(), StrCpy(), StrDecode(), StrFree(), and StrSplit().

Object::ABSTRACT_CLASS Object    [inherited]
 

ImmutableObject::ABSTRACT_CLASS ImmutableObject    [inherited]
 

DatabaseObject::ABSTRACT_CLASS DatabaseObject   
 

RefBase Object::Address   const [virtual, inherited]
 

Definition at line 258 of file cObject.cpp.

References Object::_KeyValues(), ObjRef::_Strategies, ObjRef::Connection(), Object::IsPersistent(), ObjRef::Prototype(), and Object::RefBase.

const char* DatabaseObject::BaseClassName   [inline, static]
 

Reimplemented from ImmutableObject.

Reimplemented in PersistentObject.

Definition at line 43 of file cDatabaseObject.h.

class RefBase DatabaseObject::BePersistent class Connection   DbCon [virtual]
 

Reimplemented from Object.

Reimplemented in PersistentObject.

Definition at line 114 of file cDatabaseObject.cpp.

References ObjRef::_Connection, ProtoBase::_InsertAll(), RefBase::_MarkAsClean(), ObjRef::IsTransient(), and RefBase::Prototype().

Referenced by PersistentObject::BePersistent().

virtual class Connection* ObjRef::Connection   const [inline, virtual, inherited]
 

Definition at line 80 of file cObjRef.h.

Referenced by RefBase::_Virtualise(), Object::Address(), RefBase::IsInMemory(), and PersistentObject::Update().

virtual enum LockingStrategy ObjRef::CurrentLockingStrategy   const [inline, virtual, inherited]
 

Definition at line 199 of file cObjRef.h.

References LockingStrategy, and LS_MASK.

Referenced by Object::_Refresh().

virtual enum ReadingStrategy ObjRef::CurrentReadingStrategy   const [inline, virtual, inherited]
 

Definition at line 204 of file cObjRef.h.

References ReadingStrategy, and RS_MASK.

Referenced by Object::_Refresh().

virtual enum UpdatingStrategy ObjRef::CurrentUpdatingStrategy   const [inline, virtual, inherited]
 

Definition at line 188 of file cObjRef.h.

References UpdatingStrategy, and US_MASK.

virtual enum WaitingStrategy ObjRef::CurrentWaitingStrategy   const [inline, virtual, inherited]
 

Definition at line 194 of file cObjRef.h.

References WaitingStrategy, and WS_MASK.

bool Object::Delete   [virtual, inherited]
 

Implements ObjRef.

Definition at line 106 of file cObject.cpp.

References ProtoBase::_DeleteAll(), ProtoBase::_ExportKeyAttributes(), Object::_MarkAsClean(), Object::Free(), Object::IsPersistent(), Object::MemoryLocked(), and ObjRef::Prototype().

bool Object::Free   [virtual, inherited]
 

Implements ObjRef.

Definition at line 73 of file cObject.cpp.

Referenced by Object::Delete(), and RefBase::Free().

ImmutableObject::FROM ""    [inherited]
 

Reimplemented from Object.

ImmutableObject::GROUP_BY ""    [inherited]
 

Reimplemented from Object.

ImmutableObject::HAVING ""    [inherited]
 

Reimplemented from Object.

bool ObjRef::IsAncestor const ObjRef   descendant const [virtual, inherited]
 

Definition at line 86 of file cObjRef.cpp.

virtual bool DatabaseObject::IsDirty   const [inline, virtual]
 

Reimplemented from Object.

Definition at line 55 of file cDatabaseObject.h.

Referenced by PersistentObject::Update().

virtual class Object* Object::IsInMemory   const [inline, virtual, inherited]
 

Implements ObjRef.

Definition at line 85 of file cObject.h.

virtual bool ImmutableObject::IsPersistent   const [inline, virtual, inherited]
 

Reimplemented from Object.

Definition at line 66 of file cImmutableObject.h.

Referenced by PersistentObject::Update().

virtual bool ImmutableObject::IsTransient   const [inline, virtual, inherited]
 

Reimplemented from Object.

Definition at line 59 of file cImmutableObject.h.

Referenced by PersistentObject::_VersionsMatch(), ImmutableObject::MemoryLock(), and ImmutableObject::MemoryUnlock().

virtual bool DatabaseObject::MarkAsDirty   [inline, virtual]
 

Reimplemented from Object.

Definition at line 62 of file cDatabaseObject.h.

Object * ImmutableObject::MemoryLock   [virtual, inherited]
 

Reimplemented from Object.

Definition at line 42 of file cImmutableObject.cpp.

References ImmutableObject::_MemoryLocks, and ImmutableObject::IsTransient().

unsigned int ImmutableObject::MemoryLocked   const [virtual, inherited]
 

Reimplemented from Object.

Definition at line 101 of file cImmutableObject.cpp.

References ImmutableObject::_MemoryLocks.

bool ImmutableObject::MemoryUnlock   [virtual, inherited]
 

Reimplemented from Object.

Definition at line 71 of file cImmutableObject.cpp.

References ImmutableObject::_MemoryLocks, and ImmutableObject::IsTransient().

ObjectIdentification Object::ObjectID   const [virtual, inherited]
 

Implements ObjRef.

Definition at line 242 of file cObject.cpp.

References Object::_KeyValues(), Object::IsTransient(), and ObjRef::Prototype().

class Query QueRefProto::operator const QueRefProto   Q const [inherited]
 

class Query QueRefProto::operator   const [inherited]
 

ImmutableObject::ORDER_BY ""    [inherited]
 

Reimplemented from Object.

ImmutableObject::PARENTS NULL    [inherited]
 

Reimplemented from Object.

virtual bool Object::PostLoad   [inline, virtual, inherited]
 

Definition at line 104 of file cObject.h.

virtual class ProtoBase* ObjRef::Prototype   const [pure virtual, inherited]
 

Implemented in RefBase.

Referenced by Object::_KeyValues(), Object::_Refresh(), Object::Address(), Object::Delete(), Object::ObjectID(), Object::Refresh(), and Object::Update().

bool Object::Refresh   [virtual, inherited]
 

Implements ObjRef.

Definition at line 160 of file cObject.cpp.

References ProtoBase::_ExportKeyAttributes(), Object::IsTransient(), and ObjRef::Prototype().

Referenced by RefBase::Refresh().

bool ImmutableObject::RemoveAllMemoryLocks   [virtual, inherited]
 

Reimplemented from ObjRef.

Definition at line 110 of file cImmutableObject.cpp.

const char* ImmutableObject::RootClassName   [inline, static, inherited]
 

Reimplemented from Object.

Reimplemented in PersistentObject.

Definition at line 35 of file cImmutableObject.h.

bool ObjRef::SetLockingStrategy enum LockingStrategy    aLockingStrategy [virtual, inherited]
 

Definition at line 195 of file cObjRef.cpp.

References ObjRef::_Connection, ObjRef::_Strategies, Connection::CurrentLockingStrategy(), DEFAULT_LOCKING_STRATEGY, LockingStrategy, LS_Current, LS_Default, LS_Inherited, and LS_MASK.

Referenced by DatabaseObject().

bool ObjRef::SetReadingStrategy enum ReadingStrategy    aReadingStrategy [virtual, inherited]
 

Definition at line 218 of file cObjRef.cpp.

References ObjRef::_Connection, ObjRef::_Strategies, Connection::CurrentReadingStrategy(), DEFAULT_READING_STRATEGY, ReadingStrategy, RS_Current, RS_Default, RS_Inherited, and RS_MASK.

bool ObjRef::SetUpdatingStrategy enum UpdatingStrategy    anUpdateStrategy [virtual, inherited]
 

Definition at line 149 of file cObjRef.cpp.

References ObjRef::_Connection, ObjRef::_Strategies, Connection::CurrentUpdatingStrategy(), DEFAULT_UPDATING_STRATEGY, UpdatingStrategy, US_Current, US_Default, US_Inherited, and US_MASK.

Referenced by DatabaseObject().

bool ObjRef::SetWaitingStrategy enum WaitingStrategy    aWaitingStrategy [virtual, inherited]
 

Definition at line 172 of file cObjRef.cpp.

References ObjRef::_Connection, ObjRef::_Strategies, Connection::CurrentWaitingStrategy(), DEFAULT_WAITING_STRATEGY, WaitingStrategy, WS_Current, WS_Default, WS_Inherited, and WS_MASK.

Referenced by DatabaseObject().

bool Object::Update   [virtual, inherited]
 

Implements ObjRef.

Reimplemented in PersistentObject.

Definition at line 132 of file cObject.cpp.

References ProtoBase::_UpdateAll(), Object::IsDirty(), Object::IsPersistent(), and ObjRef::Prototype().

Referenced by ObjectBuffer::_GarbageCollector(), ObjectBuffer::RemoveConnection(), RefBase::Update(), PersistentObject::Update(), and ObjectBuffer::UpdateConnection().

ImmutableObject::WHERE ""    [inherited]
 

Reimplemented from Object.


Member Data Documentation

class Connection* ObjRef::_Connection [protected, inherited]
 

Definition at line 54 of file cObjRef.h.

Referenced by PersistentObject::_VersionsMatch(), BePersistent(), RefBase::Init(), ResultBase::Next(), ObjRef::ObjRef(), ResultBase::operator!=(), RefBase::operator!=(), ResultBase::operator==(), RefBase::operator==(), RefBase::RefBase(), ObjRef::SetLockingStrategy(), ObjRef::SetReadingStrategy(), ObjRef::SetUpdatingStrategy(), and ObjRef::SetWaitingStrategy().

bool DatabaseObject::_DirtyFlag [protected]
 

Definition at line 28 of file cDatabaseObject.h.

Referenced by DatabaseObject().

bool Object::_ForUpdate [protected, inherited]
 

Definition at line 47 of file cObject.h.

Referenced by Object::_Refresh(), Object::Object(), and ObjectBuffer::UpdateConnection().

bool Object::_FreeWasDone [protected, inherited]
 

Definition at line 45 of file cObject.h.

Referenced by ObjectBuffer::_GarbageCollector(), ObjectBuffer::_RemoveConnection(), Object::Object(), and ObjectBuffer::RemoveConnection().

unsigned int ImmutableObject::_MemoryLocks [protected, inherited]
 

Definition at line 28 of file cImmutableObject.h.

Referenced by DatabaseObject(), ImmutableObject::MemoryLock(), ImmutableObject::MemoryLocked(), and ImmutableObject::MemoryUnlock().

unsigned short ObjRef::_Strategies [protected, inherited]
 

Definition at line 52 of file cObjRef.h.

Referenced by Object::Address(), ObjRef::ObjRef(), RefBase::RefBase(), ObjRef::SetLockingStrategy(), ObjRef::SetReadingStrategy(), ObjRef::SetUpdatingStrategy(), and ObjRef::SetWaitingStrategy().

class Query operator&& const QueRefProto& Q QueRefProto::const [inherited]
 

Definition at line 44 of file cQueRefProto.h.

MAP_BEGIN ImmutableObject::MAP_END [inherited]
 

Reimplemented from Object.

Definition at line 56 of file cImmutableObject.h.

MAPKEY_BEGIN ImmutableObject::MAPKEY_END [inherited]
 

Reimplemented from Object.

Definition at line 54 of file cImmutableObject.h.


The documentation for this class was generated from the following files:
Generated on Sun Jul 14 20:53:01 2002 for POLiTe by doxygen1.2.16