#include <CdbSQLApi.hh>
Inheritance diagram for CdbSQLApi:

Public Member Functions | |
| virtual | ~CdbSQLApi () |
| The destructor. | |
| virtual CdbStatus | createObject (CdbObjectPtr &theObjectPtr, const CdbConditionPtr &theParentConditionPtr, const BdbTime &theOriginalValidityBeginTime, const BdbTime &theOriginalValidityEndTime, const BdbTime &theVisibleValidityBeginTime, const BdbTime &theVisibleValidityEndTime, const BdbTime &theDurationBeginTime, const BdbTime &theDurationEndTime, const BdbTime &theInsertionTime, const CdbSQLObjectId &theObjectId)=0 |
| Create a metadata object of a right type. | |
| virtual CdbStatus | storeObject (CdbObjectPtr &theObjectPtr, CdbObjectFactoryBase &theObjectFactory, CdbCPtr< CdbSQLCondition > &thePersistentConditionPtr, CdbCPtr< CdbSQLPartition > &thePersistentPartitionPtr, const CdbConditionPtr &theParentConditionPtr, const BdbTime &theOriginalValidityBeginTime, const BdbTime &theOriginalValidityEndTime)=0 |
| Create a persistent object (in the specified context) and store it in a database. | |
Protected Member Functions | |
| CdbSQLApi () | |
| The default constructor. | |
The only reason to have this abtsract class in the hierarchy is that it provides the "::createObject()" meant to deffer an actual object creation sequence by a subclass down the hierarchy. That allows final implementations of the current API class to instantiate objects (those produced by the above mentioned method) of correct types.
A general idea is that we have enough data at the current level to create new objects but we don't know types of that objects.
NOTE: A similar idea would be to define a method delivering a factory interface. This could even work at a higher level of this class's hierarchy (class Cdb).
Definition at line 36 of file CdbSQLApi.hh.
|
|
The default constructor. The c-tor is only availble to subclasses. Definition at line 12 of file CdbSQLApi.cc. |
|
|
The destructor. More details... Definition at line 16 of file CdbSQLApi.cc. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Create a metadata object of a right type. This method is meant to defer the actual operation to a more specialized implementation of the current class. This way we let that (specialized) implementation to decide on an object type. The method is supposed to be implemented by a subclass.
Implemented in CdbRooDb. |
|
||||||||||||||||||||||||||||||||
|
Create a persistent object (in the specified context) and store it in a database. This method is meant to defer the actual operation to a more specialized implementation of the current class. This way we let that (specialized) implementation to decide on an object type. The method is supposed to be implemented by a subclass.
Implemented in CdbRooDb. Referenced by CdbSQLApiCondition::storeObject(). |
1.3-rc3