Ein typsicherer Set von Referenzen auf persistente Objekte in der Datenbank (gedacht als Attribut für persistente Objekte).
Objekte können nur einmalig eingefügt werden.
Mehr ...
|
| 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) |
| Fügt das übergebene persistentes Objekt im Set hinter der aktuellen Position ein.
|
|
virtual int | insert (std::shared_ptr< T > NewObj) |
| Fügt das übergebene persistentes Objekt im Set hinter der aktuellen Position ein.
|
|
|
virtual int | remove (T *Object) |
| Entfernt das übergebene persistentes Objekt aus dem Set.
|
|
virtual int | remove (std::shared_ptr< T > Object) |
| Entfernt das übergebene persistentes Objekt aus dem Set.
|
|
|
virtual int | get (std::shared_ptr< T > &rRetVal, EnSeekMode eMode) |
| Liefert ein Objekt aus dem Set in Bezug auf eMode.
|
|
virtual int | get (TOndemand< T > &rRetVal, EnSeekMode eMode) |
| Liefert ein Objekt aus dem Set in Bezug auf eMode.
|
|
|
virtual int | get (glo::ObjID &rObjID, std::shared_ptr< T > &rRetVal, EnSeekMode eMode) |
| Liefert eine Objekt-ID und wenn möglich ein Objekt aus dem Container in Bezug auf eMode.
|
|
virtual int | get (glo::ObjID &rObjID, TOndemand< T > &rRetVal, EnSeekMode eMode) |
| Liefert eine Objekt-ID und wenn möglich ein Objekt aus dem Container in Bezug auf eMode.
|
|
Öffentliche Methoden geerbt von 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 |
| Siehe Beschreibung in Oberklasse.
|
|
virtual bool | inLot (const BasePersistent &object) const |
| Siehe Beschreibung in Oberklasse.
|
|
virtual bool | inLot (const std::shared_ptr< BasePersistent > object) const |
| Siehe Beschreibung in Oberklasse.
|
|
virtual bool | inLot (const Reference &object) const |
| Siehe Beschreibung in Oberklasse.
|
|
Öffentliche Methoden geerbt von 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 |
| Vergleichsoperator, es werden alle Attribute verglichen.
|
|
bool | operator!= (const CallBack &rT) const |
| Vergleichsoperator, es werden alle Attribute verglichen.
|
|
template<class T>
class glo::TOndemandSet< T >
Ein typsicherer Set von Referenzen auf persistente Objekte in der Datenbank (gedacht als Attribut für persistente Objekte).
Objekte können nur einmalig eingefügt werden.
Im Gegensatz zu einem TPointerSet (bei dem die referenzierten Objekte automatisch 'mitgeladen' werden), ist der TOndemandSet ein Set von Referenzen; es werden die referenzierten Objekte also nicht mit dem referenzierenden Objekt aus der Datenbank geladen, sondern können bei Bedarf 'nachgeladen' werden
Sinnvoller Einsatz ist immer dann gegeben, wenn ein Objekt mehrere, nicht im jeden Fall notwendig im Speicher verfügbare, 'große' Objekte referenzieren soll.
Wenn Objekte einer Objektdatenbank mehrere Objekte in einer anderen Objektdatenbank referenzieren sollen, ist dieses nur mit glo::TOndemandList bzw. glo::TOndemandSet möglich .
- Copyright
- © 2010 Helmut Jakoby
- Autor
- Helmut Jakoby