A type-safe set of references to persistent objects in the database (intended as an attribute for persistent objects).
Objects can be inserted only once.
More...
|
| TOndemandSet () |
|
| TOndemandSet (Base &rBase) |
|
virtual | ~TOndemandSet () |
|
virtual int | get (glo::ObjID &rObjID, T *&prRetVal, EnSeekMode eMode) |
|
virtual int | get (std::shared_ptr< T > &rRetVal, const ObjID &rObjID) |
|
virtual int | get (T *&prRetVal, const ObjID &rObjID) |
|
virtual int | get (T *&prRetVal, EnSeekMode eMode) |
|
virtual int | getTypeAsString (std::string &rsTypeName) override |
|
|
virtual int | insert (T *NewObj) |
| Inserts the passed persistent object into the set behind the current position.
|
|
virtual int | insert (std::shared_ptr< T > NewObj) |
| Inserts the passed persistent object into the set behind the current position.
|
|
|
virtual int | remove (T *Object) |
| Removes the passed persistent object from the set.
|
|
virtual int | remove (std::shared_ptr< T > Object) |
| Removes the passed persistent object from the set.
|
|
|
virtual int | get (std::shared_ptr< T > &rRetVal, EnSeekMode eMode) |
| Returns an object from the set in relation to eMode.
|
|
virtual int | get (TOndemand< T > &rRetVal, EnSeekMode eMode) |
| Returns an object from the set in relation to eMode.
|
|
|
virtual int | get (glo::ObjID &rObjID, std::shared_ptr< T > &rRetVal, EnSeekMode eMode) |
| Returns an object ID and if possible a object from the container of the database in relation to eMode.
|
|
virtual int | get (glo::ObjID &rObjID, TOndemand< T > &rRetVal, EnSeekMode eMode) |
| Returns an object ID and if possible a object from the container of the database in relation to eMode.
|
|
Public Member Functions inherited from glo::OndemandSet |
| OndemandSet () |
|
| OndemandSet (Base &rBase) |
|
virtual | ~OndemandSet () |
|
virtual void | clear () |
|
virtual Reference * | getOndemand (EnSeekMode eMode) |
|
virtual int | getPersistent (BasePersistent *&prRetVal, const ObjID &rObjID) |
|
virtual int | insertOndemand (const Reference &rNewOndemand) |
|
virtual int | insertPers (BasePersistent *pNewObj) |
|
virtual int | insertPers (std::shared_ptr< BasePersistent > spNewObj) |
|
virtual int | removeOndemand (const Reference &rOndemand) |
|
virtual int | setCurrentObject (const ObjID &rObjID) |
|
virtual int | setPosition (std::size_t nPosition) |
|
virtual std::size_t | size () const |
|
virtual bool | inLot (const ObjID &object) const |
| See description in superclass.
|
|
virtual bool | inLot (const BasePersistent &object) const |
| See description in superclass.
|
|
virtual bool | inLot (const std::shared_ptr< BasePersistent > object) const |
| See description in superclass.
|
|
virtual bool | inLot (const Reference &object) const |
| See description in superclass.
|
|
Public Member Functions inherited from glo::OndemandLot |
| OndemandLot () |
|
| OndemandLot (Base &rBase) |
|
virtual | ~OndemandLot () |
|
virtual Base * | getBase () const override |
|
virtual int | getObjID (ObjID &rObjID, EnSeekMode eMode) |
|
virtual int | getPers (BasePersistent *&prRetVal, EnSeekMode eMode) |
|
virtual int | getPers (glo::ObjID &rObjID, BasePersistent *&prRetVal, EnSeekMode eMode) |
|
virtual int | getPers (glo::ObjID &rObjID, std::shared_ptr< BasePersistent > &rRetVal, EnSeekMode eMode) |
|
virtual int | getPers (std::shared_ptr< BasePersistent > &rRetVal, EnSeekMode eMode) |
|
std::list< Reference * > & | List () |
|
virtual int | removePers (BasePersistent *pObject) |
|
virtual int | setBase (Base *pBase) override |
|
| BaseLot () |
|
virtual | ~BaseLot () |
|
virtual int | lock (const LockSpecification &rLockSpecification) |
|
virtual int | lock (EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) |
|
virtual int | removePers (std::shared_ptr< BasePersistent > spObject) |
|
virtual int | setWatch (const WatchSpecification &rWatchSpec) |
|
virtual int | setWatch (TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) |
|
virtual int | unlock (const LockSpecification &rLockSpecification) |
|
virtual int | unlock (EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) |
|
virtual int | unsetWatch (const WatchSpecification &rWatchSpec) |
|
virtual int | unsetWatch (TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) |
|
| AbstractBaseLot () |
|
virtual | ~AbstractBaseLot () |
|
virtual int | getPersistent (std::shared_ptr< BasePersistent > &rRetVal, const ObjID &rObjID) |
|
virtual int | setCurrentObject (const BasePersistent &rObject) |
|
| CallBack () |
|
virtual | ~CallBack () |
|
virtual void | notify (NotifyNote &rNote) |
|
CallBack & | operator= (const CallBack &rT) |
|
bool | operator== (const CallBack &rT) const |
| Comparison operator, all attributes are compared.
|
|
bool | operator!= (const CallBack &rT) const |
| Comparison operator, all attributes are compared.
|
|
template<class T>
class glo::TOndemandSet< T >
A type-safe set of references to persistent objects in the database (intended as an attribute for persistent objects).
Objects can be inserted only once.
In contrast to a TPointerSet (where the referenced objects are automatically 'loaded'), the TOndemandSet is a set of references; the referenced objects are not loaded from the database with the referencing object, but can be 'reloaded' if required.
It is always useful if an object is to reference several 'large' objects that do not have to be available.
If objects in one object database are to reference multiple objects in another object database, this is only possible with glo::TOndemandList or glo::TOndemandSet.
- Copyright
- © 2010 Helmut Jakoby
- Author
- Helmut Jakoby