GlobalObjects
GloTAllSet< T > Template-Klassenreferenz

AllSet, welcher Objekte aus der Datenbank liefert. Im AllSets sind alle Instanzen eines Objekttyps in der Datenbank. Mehr ...

#include <GloTAllSet.h>

Klassendiagramm für GloTAllSet< T >:

Öffentliche Methoden

 GloTAllSet ()
 
 GloTAllSet (const std::string &rsIndexName)
 
 GloTAllSet (const std::string &rsIndexName, GloBase &rBase)
 
 GloTAllSet (GloBase &rBase)
 
 GloTAllSet (GloBase &rBase, bool bWithSubClasses)
 
virtual ~GloTAllSet ()
 
int get (GloObjID &rObjID, std::shared_ptr< T > &rRetVal, GloEnSeekMode eMode)
 
int get (GloObjID &rObjID, T *&prRetVal, GloEnSeekMode eMode)
 
int get (std::shared_ptr< T > &rRetVal, const GloObjID &rObjID)
 
int get (std::shared_ptr< T > &rRetVal, GloEnSeekMode eMode)
 
int get (T *&prRetVal, const GloObjID &rObjID)
 
int get (T *&prRetVal, GloEnSeekMode eMode)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedOndemands (std::vector< GloTOndemand< T > > &rOndemandVector, const std::string &rsRangeStartIndex, const std::string &rsRangeEndIndex)
 
int getOndemand (GloTOndemand< T > &rRetVal, GloEnSeekMode eMode)
 
int getOndemand (GloTOndemand< T > *&prRetVal, GloEnSeekMode eMode)
 
int getOndemand (std::shared_ptr< GloTOndemand< T > > *&prRetVal, GloEnSeekMode eMode)
 
virtual int setWatch (GloTdWatchNotifyMode iWatchMode, GloCallBack *pCallBack=0)
 
virtual int unsetWatch (GloTdWatchNotifyMode iWatchMode, GloCallBack *pCallBack=0)
 
- Öffentliche Methoden geerbt von GloBaseAllSet
 GloBaseAllSet ()
 
 GloBaseAllSet (const std::string &rsIndexName)
 
 GloBaseAllSet (const std::string &rsIndexName, GloBase &rBase)
 
 GloBaseAllSet (const std::string &rsIndexName, GloBase &rBase, unsigned long ulClassID)
 
 GloBaseAllSet (const std::string &rsIndexName, unsigned long ulClassID)
 
 GloBaseAllSet (GloBase &rBase)
 
 GloBaseAllSet (GloBase &rBase, bool bWithSubClasses)
 
 GloBaseAllSet (GloBase &rBase, unsigned long ulClassID)
 
 GloBaseAllSet (GloBase &rBase, unsigned long ulClassID, bool bWithSubClasses)
 
 GloBaseAllSet (unsigned long ulClassID)
 
virtual ~GloBaseAllSet ()
 
int close ()
 
std::vector< GloAllSetIndexInfogetAvailableIndices () const
 
unsigned long getClassID () const
 
unsigned long getIndexClassID () const
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsIndexSearchValue, GloEnComparisionOp eComparisionOp)
 
int getIndexedObjIds (std::list< GloObjID > &rObjIDList, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
 
std::string getIndexName () const
 
std::vector< GloAllSetIndexInfogetInheritedIndices () const
 
int getObjID (GloObjID &rObjID, GloEnSeekMode eMode)
 
int getRecord (GloObjID &rObjID, GloRecord *&prRetVal, unsigned long ulClassID, GloEnSeekMode eMode)
 
int getRecord (GloObjID &rObjID, std::shared_ptr< GloRecord > &rRetVal, unsigned long ulClassID, GloEnSeekMode eMode)
 
int getRecord (GloRecord *&prRetVal, const GloObjID &rObjID, unsigned long ulClassID)
 
int getRecord (GloRecord *&prRetVal, unsigned long ulClassID, GloEnSeekMode eMode)
 
int getRecord (std::shared_ptr< GloRecord > &rRetVal, const GloObjID &rObjID, unsigned long ulClassID)
 
int getRecord (std::shared_ptr< GloRecord > &rRetVal, unsigned long ulClassID, GloEnSeekMode eMode)
 
virtual int getTypeAsString (std::string &rsTypeName)
 
virtual bool inLot (const GloObjID &rObjID)
 
virtual bool inSet (const GloObjID &rObjID)
 
unsigned long isIndexAvailable (const std::string &rsIndexName) const
 
unsigned long isInheritedIndexAvailable (const std::string &rsIndexName) const
 
int open ()
 
bool readWithSubClasses () const
 
int removeIndexFilter ()
 
void setBase (GloBase &rBase)
 
virtual int setCurrentObject (const GloObjID &rObjID)
 
int setIndexFilter (const std::string &rsIndexFilter)
 
int setIndexFilter (const std::string &rsIndexFilter, GloEnComparisionOp eComparisionOp)
 
int setIndexFilter (const std::string &rsRangeStartIndexFilter, const std::string &rsRangeEndIndexFilter)
 
int setIndexName (const std::string &rsIndexName)
 
virtual int setPosition (std::size_t nPosition)
 
void setReadWithSubClasses (bool bWithSubClasses)
 
virtual std::size_t size ()
 
- Öffentliche Methoden geerbt von GloAbstractBaseLot
 GloAbstractBaseLot ()
 
virtual ~GloAbstractBaseLot ()
 
virtual int setCurrentObject (const GloBasePersistent &rObject)
 
- Öffentliche Methoden geerbt von GloCallBack
 GloCallBack ()
 
 GloCallBack (GloBase &rBase)
 
virtual ~GloCallBack ()
 
GloBasegetBase () const
 
virtual void notify (GloNotifyNote &rNote)
 

Private Methoden

 GloTAllSet (const GloTAllSet &)
 
GloTAllSet< T > & operator= (const GloTAllSet &)
 
void transferObjIListIntoOndemandVector (const std::list< GloObjID > &rSourceList, std::vector< GloTOndemand< T > > &rTargetVevtor)
 

Weitere Geerbte Elemente

- Geschützte Methoden geerbt von GloBaseAllSet
void setAllSetOpen (bool bOpen)
 
void setAvailableIndices ()
 
virtual void setClassID (unsigned long ulClassID)
 
void setClassIDFromTemplate (unsigned long ulClassID)
 
- Geschützte Methoden geerbt von GloCallBack
 GloCallBack (const GloCallBack &rT)
 
bool operator!= (const GloCallBack &rT) const
 
GloCallBackoperator= (const GloCallBack &rT)
 
bool operator== (const GloCallBack &rT) const
 
void setBase (GloBase *pBase)
 

Ausführliche Beschreibung

template<class T>
class GloTAllSet< T >

AllSet, welcher Objekte aus der Datenbank 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 GloManager ein Iterator angelegt, mittels dem durch den internen AllSet iteriert werden kann (sortiert nach der GloObjID). Im Destruktor wird der GloManager benachrichtigt, welcher den Iterator wieder zerstört.

int main( int argc, char* argv[] )
{
int t_iErr = 0;
FirstGloBaseObjCreator t_ObjCreator; // FirstGloBaseObjCreator abgeleitet von GloObjCreator
GloBase t_Base( "LOCAL", "WindowsWatcher", t_ObjCreator );
t_iErr = t_Base.openBase();
if ( ! t_iErr )
{
std::shared_ptr<FirstClass> t_spShowPersObject;
GloTAllSet<FirstClass> t_AllSet( t_Base );
// Alle Objekte des Typs 'FirstClass' in Base anzeigen indem durch den AllSet iteriert wird.
t_iErr = t_AllSet.get( t_spShowPersObject, GloSTART );
if ( ! t_iErr )
{
do
{
std::cout << "From AllSet ObjId: "
<< t_spShowPersObject->getObjID().toString()
<< "\n" ;
t_iErr = t_AllSet.get( t_spShowPersObject, GloNEXT );
} while ( ! t_iErr );
}
t_iErr = ( t_iErr == GloERR_RANGE ? 0 : t_iErr );
t_Base.closeBase();
}
return t_iErr;
}

Indexe
Es kann ein AllSet auch mit einem Index instantiiert bzw. es kann ein Index gesetzt werden (siehe GloBaseAllSet::setIndexName (...) ), wenn ein Index im Schema definiert ist (siehe auch Definition im Datenbankschema). Es wird beim Iterieren durch die Objekte dann die Sortierung des gewählten Indexes genutzt.

Wenn ein Index gesetzt ist, ist es möglich beim Iterieren, die Ausgabe zu filtern (siehe setIndexFilter( const std::string & rsIndexFilter ), setIndexFilter( const std::string & rsIndexFilter, GloEnComparisionOp eComparisionOp )
und
setIndexFilter( const std::string & rsRangeStartIndexFilter, const std::string & rsRangeEndIndexFilter ).

Ein AllSet kann auch Ergebnismengen liefern, welch wie beim Filtern eingeschränkt sein können (siehe
getIndexedObjIds( std::list< GloObjID > & rObjIDList, const std::string & rsIndexSearchValue, EnQueryType eQuerryType ),
getIndexedObjIds( std::list< GloObjID > & rObjIDList, const std::string & rsIndexSearchValue, GloEnComparisionOp eComparisionOp ),
getIndexedObjIds( std::list< GloObjID > & rObjIDList, const std::string & rsRangeStartIndexSearchValue, const std::string & rsRangeEndIndexSearchValue ),
getIndexedOndemands( std::vector< GloTOndemand<T> > & rOndemandVector, const std::string & rsIndex, EnQueryType eQuerryType ),
getIndexedOndemands( std::vector< GloTOndemand<T> > & rOndemandVector, const std::string & rsIndex, GloEnComparisionOp eComparisionOp )
und
getIndexedOndemands( std::vector< GloTOndemand<T> > & rOndemandVector, const std::string & rsRangeStartIndex, const std::string & rsRangeEndIndex ).

Beobachten und benachrichtigen
Ein AllSet kann mit seinen Objekten beobachtet, und entsprechende Beobachter benachrichtigt werden (siehe auch GloTAllSet< T >::setWatch (...) und GloTAllSet< T >::unsetWatch (...).

Achtung
Ein GloTAllSet muss immer vor der GloBase aus dem Speicher entfernt werden.
Autor
Helmut Jakoby

Beschreibung der Konstruktoren und Destruktoren

◆ GloTAllSet() [1/6]

template<class T >
GloTAllSet< T >::GloTAllSet

Standard-Konstruktor.

◆ GloTAllSet() [2/6]

template<class T >
GloTAllSet< T >::GloTAllSet ( const std::string &  rsIndexName)

Konstruktor mit Parameterübergabe.

Parameter
[in]rsIndexNameEin AllSet kann nach einem Index sortiert sein. Wenn nichts übergeben, ist der AllSet nach der GloObjID sortiert.

◆ GloTAllSet() [3/6]

template<class T >
GloTAllSet< T >::GloTAllSet ( GloBase rBase)

Konstruktor mit Parameterübergabe.

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

◆ GloTAllSet() [4/6]

template<class T >
GloTAllSet< T >::GloTAllSet ( const std::string &  rsIndexName,
GloBase rBase 
)

Konstruktor mit Parameterübergabe.

Parameter
[in]rsIndexNameEin AllSet kann nach einem Index sortiert sein. Wenn nichts übergeben, ist der AllSet nach der GloObjID sortiert.
[in]rBaseEs wird die maßgebliche Datenbank mitgegeben.
Ausnahmebehandlung
EuErrorBei einem Fehler wird eine Exception geworfen.

◆ GloTAllSet() [5/6]

template<class T >
GloTAllSet< T >::GloTAllSet ( GloBase rBase,
bool  bWithSubClasses 
)

Konstruktor mit Parameterübergabe.

Parameter
[in]rBaseEs wird die maßgebliche Datenbank mitgegeben.
[in]bWithSubClassesWenn false, werden nur Objekte des Template-Typs ohne Unterklassen berücksichtigt
Ausnahmebehandlung
EuErrorBei einem Fehler wird eine Exception geworfen.

◆ ~GloTAllSet()

template<class T >
GloTAllSet< T >::~GloTAllSet
virtual

Destruktor.

◆ GloTAllSet() [6/6]

template<class T >
GloTAllSet< T >::GloTAllSet ( const GloTAllSet< T > &  )
private

Copy-Konstruktor steht nicht zur Verfügung.

Dokumentation der Elementfunktionen

◆ get() [1/6]

template<class T >
int GloTAllSet< T >::get ( GloObjID rObjID,
std::shared_ptr< T > &  rRetVal,
GloEnSeekMode  eMode 
)

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

Parameter
[in,out]rObjIDDie Objekt-ID.
[in,out]rRetValBei keinem Fehler das geholte Objekt.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an. Bei einer Rückgabe == GloERR_OBJECT_LOCKED wird zwar kein Objekt geliefert, aber die Objekt-ID des gesperrten Objekts.

◆ get() [2/6]

template<class T >
int GloTAllSet< T >::get ( GloObjID rObjID,
T *&  prRetVal,
GloEnSeekMode  eMode 
)

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

Parameter
[in,out]rObjIDDie Objekt-ID.
[in,out]prRetValBei keinem Fehler das geholte Objekt.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an. Bei einer Rückgabe == GloERR_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 aus dem Speicher entfernt werden.

◆ get() [3/6]

template<class T >
int GloTAllSet< T >::get ( std::shared_ptr< T > &  rRetVal,
const GloObjID rObjID 
)

Liefert ein 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() [4/6]

template<class T >
int GloTAllSet< T >::get ( std::shared_ptr< T > &  rRetVal,
GloEnSeekMode  eMode 
)

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

Parameter
[in,out]rRetValBei keinem Fehler ist das geholte Objekt im std::shared_ptr.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an.

◆ get() [5/6]

template<class T >
int GloTAllSet< T >::get ( T *&  prRetVal,
const GloObjID rObjID 
)

Liefert ein Objekt aus dem AllSet der Datenbank mit übergebener Objekt-ID.

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 aus dem Speicher entfernt werden.

◆ get() [6/6]

template<class T >
int GloTAllSet< T >::get ( T *&  prRetVal,
GloEnSeekMode  eMode 
)

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

Parameter
[in,out]prRetValBei keinem Fehler das geholte Objekt.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz aus dem Speicher entfernt werden.

◆ getIndexedOndemands() [1/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
const std::string &  rsIndexSearchValue,
EnQueryType  eQuerryType 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebenen Parameter.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]rsIndexSearchValueDer Indexausdruck kann die Platzhalter '*' und '?' enthalten, welche bei der Auswertung berücksichtigt werden oder wenn Parameter eQueryType == eOQL, wird der String als OQL-Ausdruck interpretiert.
[in]eQuerryTypeDer Abfragetyp.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [2/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
const std::string &  rsIndexSearchValue,
GloEnComparisionOp  eComparisionOp 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittels des Parameters eComparisionOp definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]rsIndexSearchValueDer Indexwert.
[in]eComparisionOpDer Vergleichsoperator. Wenn z.B. rsIndex den Wert "123" und eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es werden ggf. vorhandene Platzhalter '*' und '?' im Parameter rsIndexSearchValue NICHT berücksichtigt.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [3/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
const std::string &  rsRangeStartIndexSearchValue,
const std::string &  rsRangeEndIndexSearchValue 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittesl Bereichsangabe definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter sRangeEndIndex den Wert "155" hat, werden alle Objekte mit dem Index grösser/gleich 123 und kleiner/gleich 155 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]rsRangeStartIndexSearchValueDer Start-Indexwert.
[in]rsRangeEndIndexSearchValueDer End-Indexwert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es werden ggf. vorhandene Platzhalter '*' und '?' im Parameter rsIndexSearchValue NICHT berücksichtigt.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [4/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
unsigned long  ulIndexClassID,
const std::string &  rsIndexSearchValue,
EnQueryType  eQuerryType 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebenen Parameter.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]ulIndexClassIDDie ID der Klasse, welche mit dem 'rsIndexName' indiziert ist. Damit ist es möglich, den Index einer Oberklasse zu nutzen.
[in]rsIndexSearchValueDer Indexausdruck kann die Platzhalter '*' und '?' enthalten, welche bei der Auswertung berücksichtigt werden oder wenn Parameter eQueryType == eOQL, wird der String als OQL-Ausdruck interpretiert.
[in]eQuerryTypeDer Abfragetyp.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [5/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
unsigned long  ulIndexClassID,
const std::string &  rsIndexSearchValue,
GloEnComparisionOp  eComparisionOp 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittels des Parameters eComparisionOp definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]ulIndexClassIDDie ID der Klasse, welche mit dem 'rsIndexName' indiziert ist. Damit ist es möglich, den Index einer Oberklasse zu nutzen.
[in]rsIndexSearchValueDer Indexwert.
[in]eComparisionOpDer Vergleichsoperator. Wenn z.B. rsIndex den Wert "123" und eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es werden ggf. vorhandene Platzhalter '*' und '?' im Parameter rsIndexSearchValue NICHT berücksichtigt.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [6/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexName,
unsigned long  ulIndexClassID,
const std::string &  rsRangeStartIndexSearchValue,
const std::string &  rsRangeEndIndexSearchValue 
)

Liefert eine Liste von Objekt-IDs aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittesl Bereichsangabe definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter sRangeEndIndex den Wert "155" hat, werden alle Objekte mit dem Index grösser/gleich 123 und kleiner/gleich 155 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexNameDie Indexbezeichnung des zu durchsuchenden Index.
[in]ulIndexClassIDDie ID der Klasse, welche mit dem 'rsIndexName' indiziert ist. Damit ist es möglich, den Index einer Oberklasse zu nutzen.
[in]rsRangeStartIndexSearchValueDer Start-Indexwert.
[in]rsRangeEndIndexSearchValueDer End-Indexwert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es werden ggf. vorhandene Platzhalter '*' und '?' im Parameter rsIndexSearchValue NICHT berücksichtigt.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.

◆ getIndexedOndemands() [7/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexSearchValue,
EnQueryType  eQuerryType 
)

Liefert einen Vector von GloTOndemand's aus dem AllSet in Bezug auf die übergebene Parameter.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexSearchValueDer Indexausdruck kann die Platzhalter '*' und '?' enthalten, welche bei der Auswertung berücksichtigt werden oder wenn Parameter eQueryType == eOQL, wird der String als OQL-Ausdruck interpretiert. Zu beachten; OQL ist noch nicht implementiert!
[in]eQuerryTypeDer Abfragetyp.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es muss im AllSet der IndexName gesetzt sein.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.
Siehe auch
setIndexName( const std::string & rsIndexName )

◆ getIndexedOndemands() [8/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsIndexSearchValue,
GloEnComparisionOp  eComparisionOp 
)

Liefert einen Vector von GloTOndemand's aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittels des Parameters eComparisionOp definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsIndexSearchValueDer Indexwert.
[in]eComparisionOpDer Vergleichsoperator. Wenn z.B. rsIndex den Wert "123" und eComparisionOp den Wert GloLESS hat, werden alle Objekte mit dem Index kleiner 123 geliefert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es werden ggf. vorhandene Platzhalter '*' und '?' im Parameter rsIndexSearchValue NICHT berücksichtigt.
Es muss im AllSet der IndexName gesetzt sein.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.
Siehe auch
setIndexName( const std::string & rsIndexName )

◆ getIndexedOndemands() [9/9]

template<class T >
int GloTAllSet< T >::getIndexedOndemands ( std::vector< GloTOndemand< T > > &  rOndemandVector,
const std::string &  rsRangeStartIndex,
const std::string &  rsRangeEndIndex 
)

Liefert einen Vector von GloTOndemand's aus dem AllSet in Bezug auf die übergebene Parameter. Es können Ergebnisse mittesl Bereichsangabe definiert werden. Wenn z.B. Parameter sIndex den Wert "123" und Parameter sRangeEndIndex den Wert "155" hat, werden alle Objekte mit dem Index grösser/gleich 123 und kleiner/gleich 155 geliefert.

Parameter
[in,out]rOndemandVectorIn diesem Vector werden die gefundenen GloTOndemand's geliefert.
[in]rsRangeStartIndexDer Start-Indexwert.
[in]rsRangeEndIndexDer End-Indexwert.
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.
Zu beachten
Es muss im AllSet der IndexName gesetzt sein.
Indexe werden erst nach dem Öffnen des AllSets ermittelt.
Siehe auch
setIndexName( const std::string & rsIndexName )

◆ getOndemand() [1/3]

template<class T >
int GloTAllSet< T >::getOndemand ( GloTOndemand< T > &  rRetVal,
GloEnSeekMode  eMode 
)

Liefert ein Objekt im übergebenen GloTOndemand aus dem AllSet der Datenbank in Bezug auf eMode.

Parameter
[in,out]rRetValBei keinem Fehler das geholte Objekt in einer GloTOndemand.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an.

◆ getOndemand() [2/3]

template<class T >
int GloTAllSet< T >::getOndemand ( GloTOndemand< T > *&  prRetVal,
GloEnSeekMode  eMode 
)

Liefert ein neues GloTOndemand-Objekt aus dem AllSet der Datenbank in Bezug auf eMode.

Parameter
[in,out]prRetValBei keinem Fehler das geholte Objekt in einer neuen GloTOndemand.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz aus dem Speicher entfernt werden.

◆ getOndemand() [3/3]

template<class T >
int GloTAllSet< T >::getOndemand ( std::shared_ptr< GloTOndemand< T > > *&  prRetVal,
GloEnSeekMode  eMode 
)

Liefert ein neues GloTOndemand-Objekt in einem std::shared_ptr aus dem AllSet der Datenbank in Bezug auf eMode.

Parameter
[in,out]prRetValBei keinem Fehler das geholte Objekt in einer neuen GloTOndemand.
[in]eModeDer Seekmode.

Parameterbeispiele:

  • GloSTART = liefert erstes Element
  • GloEND = liefert letztes Element
  • GloCURRENT = liefert aktuelles Element
  • GloNEXT = liefert nächstes Element
  • GloPREVIOUS = liefert vorheriges Element
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an. Eine Rückgabe == GloERR_RANGE zeigt das Ende des AllSets an.
Achtung
Wenn prRetVal gültig, muss dieses Objekt von der aufrufenden Instanz aus dem Speicher entfernt werden.

◆ operator=()

template<class T >
GloTAllSet< T >& GloTAllSet< T >::operator= ( const GloTAllSet< T > &  )
private

Zuweisungsoperator ist nicht verfügbar.

◆ setWatch()

template<class T >
int GloTAllSet< T >::setWatch ( GloTdWatchNotifyMode  iWatchMode,
GloCallBack pCallBack = 0 
)
virtual

Der AllSet wird in der Datenbank beobachtet.

Parameter
[in]iWatchModeDer Beobachtungsmodus.
Erlaubte WatchMode:
[in]pCallBackDas CallBack-Objekt, welches über seine Methode. GloCallBack::notify() benachrichtigt wird. Wenn kein GloCallBack übergeben, wird this genommen; in diesem Fall sollte die Methode GloCallBack::notify() in der jeweiligen abgeleiteten Klasse überschrieben sein.
Zu beachten
Um die Beobachtung aufzuheben muss die korrespondierende Methode GloTAllSet::unsetWatch( GloTdWatchNotifyMode iWatchMode, GloCallBack * pCallBack ) mit gleichen Parameterwerten genutzt werden.
Achtung
Grundsätzlich darf pCallBack nicht zerstört werden, bevor der bzw. die Beobachtungen zurückgenommen wurden!
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.

Implementiert GloBaseAllSet.

◆ transferObjIListIntoOndemandVector()

template<class T >
void GloTAllSet< T >::transferObjIListIntoOndemandVector ( const std::list< GloObjID > &  rSourceList,
std::vector< GloTOndemand< T > > &  rTargetVevtor 
)
private

Überträgt die Objekt_IDs aus der übergebenen rSourceList als GloTOndemand's in den übergebenen rTargetVevtor.

Parameter
[in]rSourceListDie Liste mite den Objekt-IDs
[in,out]rTargetVevtorDer resultierende Vector von GloTOndemand's.

◆ unsetWatch()

template<class T >
int GloTAllSet< T >::unsetWatch ( GloTdWatchNotifyMode  iWatchMode,
GloCallBack pCallBack = 0 
)
virtual

Die Beobachtung des referenzierten AllSets in der Datenbank wird abgebrochen.

Parameter
[in]iWatchModeDer Beobachtungsmodus.
Erlaubte WatchMode:
[in]pCallBackDas CallBack-Objekt, welches über seine Methode. GloCallBack::notify() benachrichtigt werden sollte. Wenn kein GloCallBack übergeben, sollte this genommen worden sein (ist ja selbst auch von GloCallBack abgeleitet).
Rückgabe
Eine Rückgabe < 0 zeigt einen Fehler an.

Implementiert GloBaseAllSet.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
GloNEXT
@ GloNEXT
Definition: GloTypes.h:219
GloTAllSet
AllSet, welcher Objekte aus der Datenbank liefert. Im AllSets sind alle Instanzen eines Objekttyps in...
Definition: GloTAllSet.h:132
GloBase
Diese Klasse ist die Schnittstelle für den Client zu den persistenten Objekten. Hier können "Objekte"...
Definition: GloBase.h:136
GloSTART
@ GloSTART
Definition: GloTypes.h:189
GloERR_RANGE
@ GloERR_RANGE
Definition: GloErrors.h:341