GlobalObjects
Lade ...
Suche ...
Keine Treffer
glo::GenericAllSet Klassenreferenz

AllSet, welcher generische Objekte liefert. Mehr ...

#include <GloGenericAllSet.h>

Klassendiagramm für glo::GenericAllSet:

Öffentliche Methoden

 GenericAllSet ()
 
 GenericAllSet (Base &rBase)
 
 GenericAllSet (Base &rBase, unsigned long ulClassID, bool bWithSubClasses=true)
 
 GenericAllSet (Base &rBase, unsigned long ulClassID, const std::string &rsFullIndexName)
 
virtual ~GenericAllSet ()
 
int get (GenericPersistent *&prRetVal, EnSeekMode eMode)
 
int get (ObjID &rObjID, GenericPersistent *&prRetVal, EnSeekMode eMode)
 
int get (ObjID &rObjID, std::shared_ptr< GenericPersistent > &rRetVal, EnSeekMode eMode)
 
int get (std::shared_ptr< GenericPersistent > &rRetVal, const ObjID &rObjID)
 
int get (std::shared_ptr< GenericPersistent > &rRetVal, EnSeekMode eMode)
 
virtual void setClassID (unsigned long ulClassID)
 
virtual int setWatch (TdWatchNotifyMode ulWatchMode, CallBack *pCallBack=0)
 
virtual int unsetWatch (TdWatchNotifyMode ulWatchMode, CallBack *pCallBack=0)
 
virtual int getPersistent (BasePersistent *&prRetVal, const ObjID &rObjID)
 Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener
 
int get (GenericPersistent *&prRetVal, const ObjID &rObjID)
 Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener
 
- Öffentliche Methoden geerbt von glo::BaseAllSet
 BaseAllSet ()
 
 BaseAllSet (Base &rBase)
 
 BaseAllSet (Base &rBase, unsigned long ulClassID, bool bWithSubClasses=true)
 
 BaseAllSet (Base &rBase, unsigned long ulClassID, const std::string &rsFullIndexName)
 
virtual ~BaseAllSet ()
 
int close ()
 
std::vector< AllSetIndexInfogetAvailableIndices ()
 
std::size_t getAvailableIndicesSize ()
 
virtual BasegetBase () const override
 
unsigned long getClassID () const
 
std::string getFullIndexName () const
 
unsigned long getIndexClassID () const
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsFullIndexName, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsFullIndexName, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsFullIndexName, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::vector< glo::ObjID > &rObjIDContainer, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
std::string getIndexName () const
 
int getObjID (glo::ObjID &rObjID, EnSeekMode eMode)
 
virtual int getTypeAsString (std::string &rsTypeName) override
 
virtual bool inLot (const glo::ObjID &rObjID) const override
 
virtual bool inSet (const glo::ObjID &rObjID) const
 
bool isIndexAvailable (const BaseAllSet::IndexNameClassIdTuple &rIndexNameClassIdTuple)
 
bool isIndexAvailable (const std::string &rsFullIndexName)
 
bool isIndexAvailable (unsigned long ulClassID, const std::string &rsIndexName)
 
int open ()
 
bool readWithSubClasses () const
 
int removeIndexFilter ()
 
virtual int setBase (Base &rBase)
 
virtual int setBase (Base *pBase) override
 
virtual int setCurrentObject (const glo::ObjID &rObjID) override
 
int setFullIndexName (const std::string &rsFullIndexName)
 
int setIndex (const BaseAllSet::IndexNameClassIdTuple &rIndexNameClassIdTuple)
 
int setIndexFilter (const std::string &rsIndexFilter)
 
int setIndexFilter (const std::string &rsIndexFilter, EnComparisionOp eComparisionOp)
 
int setIndexFilter (const std::string &rsRangeStartIndexFilter, const std::string &rsRangeEndIndexFilter)
 
virtual int setPosition (std::size_t nPosition) override
 
void setReadWithSubClasses (bool bWithSubClasses)
 
virtual std::size_t size () const override
 
- Öffentliche Methoden geerbt von glo::AbstractBaseLot
 AbstractBaseLot ()
 
virtual ~AbstractBaseLot ()
 
virtual int getPersistent (std::shared_ptr< BasePersistent > &rRetVal, const ObjID &rObjID)
 
virtual int setCurrentObject (const BasePersistent &rObject)
 
- Öffentliche Methoden geerbt von glo::CallBack
 CallBack ()
 
virtual ~CallBack ()
 
virtual void notify (NotifyNote &rNote)
 
CallBackoperator= (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.
 

Private Methoden

 GenericAllSet (const GenericAllSet &)
 
GenericAllSetoperator= (const GenericAllSet &)
 

Weitere Geerbte Elemente

- Öffentliche Attribute geerbt von glo::CallBack
std::string m_strDebugInfo
 
- Geschützte Methoden geerbt von glo::BaseAllSet
void setAllSetOpen (bool bOpen)
 
int setAvailableIndices ()
 
void setClassIDFromTemplate (unsigned long ulClassID)
 
- Geschützte Methoden geerbt von glo::CallBack
 CallBack (const CallBack &rT)
 
void deinit ()
 
void init ()
 

Ausführliche Beschreibung

AllSet, welcher generische Objekte liefert.

Im AllSets sind alle Instanzen eines Objekttyps in der Datenbank.

Wenn ein Objekt dieser Klasse instanziiert und geöffnet wird (geht nur mit gültiger Datenbank), wird vom Manager ein Iterator angelegt, mittels dem durch den internen AllSet iteriert werden kann. Im Destruktor wird der Manager benachrichtigt, welcher den Iterator wieder zerstört.

Achtung
Das bedeutet, dass ein GenericAllSet immer vor der Base aus dem Speicher entfernt werden muss.
Autor
Helmut Jakoby

Beschreibung der Konstruktoren und Destruktoren

◆ GenericAllSet() [1/5]

glo::GenericAllSet::GenericAllSet ( )

Standard-Konstruktor.

◆ GenericAllSet() [2/5]

glo::GenericAllSet::GenericAllSet ( Base & rBase)

Konstruktor mit Parameterübergabe.

Parameter
[in]rBaseEs wird die maßgebliche Datenbank mitgegeben.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.

◆ GenericAllSet() [3/5]

glo::GenericAllSet::GenericAllSet ( Base & rBase,
unsigned long ulClassID,
bool bWithSubClasses = true )

Konstruktor mit Parameterübergabe.

Parameter
[in]rBaseEs wird die maßgebliche Datenbank mitgegeben.
[in]ulClassIDEin generischer AllSet muss wissen, um welchen Objekttyps es sich handelt. Dieses wird durch die Klassen-ID aus dem Schema gewährleistet.
[in]bWithSubClassesWenn false, werden nur Objekte mit der Klassen-ID aus m_ulClassID ohne Unterklassen berücksichtigt.
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.

◆ GenericAllSet() [4/5]

glo::GenericAllSet::GenericAllSet ( Base & rBase,
unsigned long ulClassID,
const std::string & rsFullIndexName )

Konstruktor mit Parameterübergabe.

Parameter
[in]rBaseEs wird die maßgebliche Datenbank mitgegeben.
[in]ulClassIDDie Klassen-ID.
[in]rsFullIndexNameEin AllSet kann nach einem Index sortiert sein. Der Index Name muss mit vorangestellter vollständigen Klassennamen übergeben werden (z.B. "mynamespace::MyClassName.IndexName").
Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.

◆ ~GenericAllSet()

virtual glo::GenericAllSet::~GenericAllSet ( )
virtual

Destruktor.

◆ GenericAllSet() [5/5]

glo::GenericAllSet::GenericAllSet ( const GenericAllSet & )
private

Der Copy-Konstruktor steht nicht zur Verfügung.

Dokumentation der Elementfunktionen

◆ get() [1/6]

int glo::GenericAllSet::get ( GenericPersistent *& prRetVal,
const ObjID & rObjID )

Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener

Parameter
[in,out]prRetValBei keinem Fehler das geholte Objekt.
[in]rObjIDDie Objekt-ID.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz mittels GenericPersistent::forget() aus dem Speicher entfernt werden.
Zu beachten
Es wird empfohlen, wenn möglich, die Verwendung von std::shared_ptr in Betracht zu ziehen und die Methode get(std::shared_ptr<GenericPersistent>&, const ObjID&) bzw. zu nutzen.

◆ get() [2/6]

int glo::GenericAllSet::get ( GenericPersistent *& prRetVal,
EnSeekMode eMode )

Liefert ein generisches Objekt aus dem AllSet der referenzierten Datenbank in Bezug auf eMode.

Parameter
[in,out]prRetValDas Objekt, wenn gefunden.
[in]eModeDer Suchmodus.

Parameterbeispiele:

Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == ERR_RANGE zeigt das Ende des AllSets an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz mittels GenericPersistent::forget() aus dem Speicher entfernt werden.
Zu beachten
Es wird empfohlen, wenn möglich, die Verwendung von std::shared_ptr in Betracht zu ziehen und die Methode get(std::shared_ptr<GenericPersistent>&, EnSeekMode) zu nutzen.

◆ get() [3/6]

int glo::GenericAllSet::get ( ObjID & rObjID,
GenericPersistent *& prRetVal,
EnSeekMode eMode )

Liefert eine Objekt-ID und wenn möglich ein generisches Objekt aus dem AllSet der Datenbank in Bezug auf eMode. Damit kann auch über lesegesperrte Objekt iteriert werden (es wird dann nur die Objekt-ID geliefert).

Parameter
[in,out]rObjIDDie Objekt-ID.
[in,out]prRetValDas Objekt, wenn gefunden.
[in]eModeDer Suchmodus.

Parameterbeispiele:

Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == ERR_RANGE zeigt das Ende des AllSets an. Bei einer Rückgabe == ERR_OBJECT_LOCKED wird zwar kein Objekt geliefert, aber die Objekt-ID des gesperrten Objekts.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz mittels GenericPersistent::forget() aus dem Speicher entfernt werden.
Zu beachten
Es wird empfohlen, wenn möglich, die Verwendung von std::shared_ptr in Betracht zu ziehen und die Methode get(ObjID&, std::shared_ptr<GenericPersistent>&, EnSeekMode) zu nutzen.

◆ get() [4/6]

int glo::GenericAllSet::get ( ObjID & rObjID,
std::shared_ptr< GenericPersistent > & rRetVal,
EnSeekMode eMode )

Liefert eine Objekt-ID und wenn möglich ein generisches Objekt in einem std::shared_ptr aus dem AllSet der Datenbank in Bezug auf eMode. Damit kann auch über lesegesperrte Objekt iteriert werden (es wird dann nur die Objekt-ID geliefert).

Parameter
[in,out]rObjIDDie Objekt-ID.
[in,out]rRetValDas Objekt im std::shared_ptr, wenn gefunden.
[in]eModeDer Suchmodus.

Parameterbeispiele:

Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == ERR_RANGE zeigt das Ende des AllSets an. Bei einer Rückgabe == ERR_OBJECT_LOCKED wird zwar kein Objekt geliefert, aber die Objekt-ID des gesperrten Objekts.

◆ get() [5/6]

int glo::GenericAllSet::get ( std::shared_ptr< GenericPersistent > & rRetVal,
const ObjID & rObjID )

Liefert ein generisches Objekt in einem std::shared_ptr aus dem AllSet der Datenbank mit übergebener Objekt-ID.

Parameter
[in,out]rRetValBei keinem Fehler ist das geholte Objekt im std::shared_ptr.
[in]rObjIDDie Objekt-ID.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.

◆ get() [6/6]

int glo::GenericAllSet::get ( std::shared_ptr< GenericPersistent > & rRetVal,
EnSeekMode eMode )

Liefert ein generisches Objekt in einem std::shared_ptr aus dem AllSet der referenzierten Datenbank in Bezug auf eMode.

Parameter
[in,out]rRetValDas Objekt im std::shared_ptr, wenn gefunden.
[in]eModeDer Suchmodus.

Parameterbeispiele:

Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == ERR_RANGE zeigt das Ende des AllSets an.

◆ getPersistent()

virtual int glo::GenericAllSet::getPersistent ( BasePersistent *& prRetVal,
const ObjID & rObjID )
virtual

Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener

Parameter
[in,out]prRetValBei keinem Fehler das geholte Objekt.
[in]rObjIDDie Objekt-ID.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz mittels GenericPersistent::forget() aus dem Speicher entfernt werden.
Zu beachten
Es wird empfohlen, wenn möglich, die Verwendung von std::shared_ptr in Betracht zu ziehen und die Methode get(std::shared_ptr<GenericPersistent>&, const ObjID&) bzw. zu nutzen.

Implementiert glo::AbstractBaseLot.

◆ operator=()

GenericAllSet & glo::GenericAllSet::operator= ( const GenericAllSet & )
private

Der Zuweisungsoperator steht nicht zur Verfügung.

◆ setClassID()

virtual void glo::GenericAllSet::setClassID ( unsigned long ulClassID)
virtual

Setzt die Klassen-ID. Wenn es schon eine andere Klassen-ID gibt, wird der AllSet der letzten Klassen-ID geschlossen.

Ausnahmebehandlung
eut::ErrorNExceptionBei einem Fehler wird eine Exception geworfen.

Erneute Implementation von glo::BaseAllSet.

◆ setWatch()

virtual int glo::GenericAllSet::setWatch ( TdWatchNotifyMode ulWatchMode,
CallBack * pCallBack = 0 )
virtual

Der AllSet wird in der Datenbank überwacht.

Parameter
[in]ulWatchModeDer Überwachungsmodus.
Erlaubte Überwachungsmodi:
[in]pCallBackDas CallBack-Objekt, welches über seine Methode CallBack::notify(NotifyNote&) benachrichtigt wird. Wenn kein CallBack übergeben, wird notify(NotifyNote&) von this genommen; in diesem Fall sollte die Methode notify(NotifyNote&) in der jeweiligen abgeleiteten Klasse überschrieben sein.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Um die Überwachung aufzuheben muss die korrespondierende Methode unsetWatch(TdWatchNotifyMode, CallBack*) mit gleichen Parameterwerten genutzt werden.
Achtung
Grundsätzlich darf pCallBack nicht zerstört werden, bevor die Überwachung aufgehoben wurde!

Implementiert glo::BaseAllSet.

◆ unsetWatch()

virtual int glo::GenericAllSet::unsetWatch ( TdWatchNotifyMode ulWatchMode,
CallBack * pCallBack = 0 )
virtual

Die Überwachung des AllSets in der referenzierten Datenbank wird aufgehoben.

Parameter
[in]ulWatchModeDer Überwachungsmodus.
Erlaubte Überwachungsmodi:
[in]pCallBackDas CallBack-Objekt, welches über seine Methode CallBack::notify(NotifyNote&) benachrichtigt werden sollte.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.

Implementiert glo::BaseAllSet.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: