Klasse um Objekte im IndexPool::ObjectStrIndex zu verwalten. Mehr ...
#include <GloIndexPool.h>
Öffentliche Methoden | |
ObjStrIdTuple () | |
ObjStrIdTuple (const ObjStrIdTuple &rT) | |
ObjStrIdTuple (const std::string &rsIndex, const ObjID &rObjID, NUM_PTR ipReservingComunicatorTrx=0, NUM_PTR ipReservingComunicator=0, NUM_PTR ipReservingComunicatorThreadID=0) | |
virtual | ~ObjStrIdTuple () |
std::string | getIndex () const |
ObjID | getObjID () const |
NUM_PTR | getReservingComunicator () const |
NUM_PTR | getReservingComunicatorThreadID () const |
NUM_PTR | getReservingComunicatorTrx () const |
IndexPool::ObjStrIdTuple & | operator= (const ObjStrIdTuple &rT) |
void | setIndex (const std::string &rsIndex) |
void | setObjID (const ObjID &rObjID) |
void | setReservingComunicatorTrx (NUM_PTR ipReservingComunicatorTrx, NUM_PTR ipReservingComunicator, NUM_PTR ipReservingComunicatorThreadID) |
void | setValues (const std::string &rsIndex, const ObjID &rObjID, NUM_PTR ipReservingComunicatorTrx=0, NUM_PTR ipReservingComunicator=0, NUM_PTR ipReservingComunicatorThreadID=0) |
std::string | toString () const |
bool | operator== (const ObjStrIdTuple &rT) const |
bool | operator!= (const ObjStrIdTuple &rT) const |
bool | operator> (const ObjStrIdTuple &rT) const |
bool | operator>= (const ObjStrIdTuple &rT) const |
bool | operator< (const ObjStrIdTuple &rT) const |
bool | operator<= (const ObjStrIdTuple &rT) const |
Private Attribute | |
NUM_PTR | m_ipReservingComunicator |
NUM_PTR | m_ipReservingComunicatorThreadID |
NUM_PTR | m_ipReservingComunicatorTrx |
ObjID | m_ObjID |
std::string | m_sIndex |
Klasse um Objekte im IndexPool::ObjectStrIndex zu verwalten.
Ein ObjStrIdTuple hat als Attribute den Index als sortierbaren String und die Objekt-ID eines gespeicherten Datensatzes.
Zusätzlich kann der String als in einer Transaktion reserviert gekennzeichnet sein.
Damit bei einem Absturz einer Anwendung alle reservierten unique Indexe des Kommunikators entfernt werden können, wird dessen Adresse und dessen Thread-ID auf NUM_PTR gecastet mit aufgenommen.
glo::IndexPool::ObjStrIdTuple::ObjStrIdTuple | ( | ) |
Standard-Konstruktor.
Wird benutzt von ObjStrIdTuple(), operator!=(), operator<(), operator<=(), operator=(), operator==(), operator>() und operator>=().
glo::IndexPool::ObjStrIdTuple::ObjStrIdTuple | ( | const std::string & | rsIndex, |
const ObjID & | rObjID, | ||
NUM_PTR | ipReservingComunicatorTrx = 0, | ||
NUM_PTR | ipReservingComunicator = 0, | ||
NUM_PTR | ipReservingComunicatorThreadID = 0 ) |
Konstruktor mit Parameterübergabe.
[in] | rsIndex | Der Index eines Objektes. |
[in] | rObjID | Die Objekt-ID des Objektes mit dem Index. |
[in] | ipReservingComunicatorTrx | Die auf NUM_PTR gecastete Adresse des TransactionManager::TransactionStep's, in der der Index reserviert wurde. |
[in] | ipReservingComunicator | Die auf NUM_PTR gecastete Adresse eines Communicator's, in dessen Transaktion der Index ggf. reserviert wurde. Wenn diese gesetzt, ist der Index 'nur' reserviert. |
[in] | ipReservingComunicatorThreadID | Die auf NUM_PTR gecastete Thread-ID des Communicator-Threads, in dem eine Reservierung eines eindeutigen Indexes initiiert wurde. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
glo::IndexPool::ObjStrIdTuple::ObjStrIdTuple | ( | const ObjStrIdTuple & | rT | ) |
Copy-Konstruktor.
[in] | rT | Von diesem Objekt werden die Daten übernommen. |
Benutzt ObjStrIdTuple().
|
virtual |
Destruktor.
std::string glo::IndexPool::ObjStrIdTuple::getIndex | ( | ) | const |
Get-Methode für m_sIndex.
ObjID glo::IndexPool::ObjStrIdTuple::getObjID | ( | ) | const |
Get-Methode für m_ObjID.
NUM_PTR glo::IndexPool::ObjStrIdTuple::getReservingComunicator | ( | ) | const |
Get-Methode für m_ipReservingComunicator.
NUM_PTR glo::IndexPool::ObjStrIdTuple::getReservingComunicatorThreadID | ( | ) | const |
Get-Methode für m_ipReservingComunicatorThreadID.
NUM_PTR glo::IndexPool::ObjStrIdTuple::getReservingComunicatorTrx | ( | ) | const |
Get-Methode für m_ipReservingComunicatorTrx.
bool glo::IndexPool::ObjStrIdTuple::operator!= | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
bool glo::IndexPool::ObjStrIdTuple::operator< | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
bool glo::IndexPool::ObjStrIdTuple::operator<= | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
IndexPool::ObjStrIdTuple & glo::IndexPool::ObjStrIdTuple::operator= | ( | const ObjStrIdTuple & | rT | ) |
Zuweisungsoperator.
[in] | rT | Von diesem Objekt werden die Daten übernommen. |
Benutzt ObjStrIdTuple().
bool glo::IndexPool::ObjStrIdTuple::operator== | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
bool glo::IndexPool::ObjStrIdTuple::operator> | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
bool glo::IndexPool::ObjStrIdTuple::operator>= | ( | const ObjStrIdTuple & | rT | ) | const |
Vergleichsoperator.
[in] | rT | Der zu vergleichende ObjStrIdTuple. |
Benutzt ObjStrIdTuple().
void glo::IndexPool::ObjStrIdTuple::setIndex | ( | const std::string & | rsIndex | ) |
Set-Methode für m_sIndex.
[in] | rsIndex | Der Index eines Objektes. |
void glo::IndexPool::ObjStrIdTuple::setObjID | ( | const ObjID & | rObjID | ) |
Set-Methode für m_ObjID.
[in] | rObjID | Die Objekt-ID des Objektes mit dem Index. |
void glo::IndexPool::ObjStrIdTuple::setReservingComunicatorTrx | ( | NUM_PTR | ipReservingComunicatorTrx, |
NUM_PTR | ipReservingComunicator, | ||
NUM_PTR | ipReservingComunicatorThreadID ) |
Set-Methode für m_ipReservingComunicatorTrx.
[in] | ipReservingComunicatorTrx | Die auf NUM_PTR gecastete Adresse eines Communicator's, in dessen Transaktion der Index ggf. reserviert wurde. Wenn diese gesetzt, ist der Index 'nur' reserviert. |
[in] | ipReservingComunicator | Die auf NUM_PTR gecastete Adresse eines Communicator's, in dessen Transaktion der Index ggf. reserviert wurde. Wenn diese gesetzt, ist der Index 'nur' reserviert. |
[in] | ipReservingComunicatorThreadID | Die auf NUM_PTR gecastete Thread-ID des Communicator-Threads, in dem eine Reservierung eines eindeutigen Indexes initiiert wurde. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
void glo::IndexPool::ObjStrIdTuple::setValues | ( | const std::string & | rsIndex, |
const ObjID & | rObjID, | ||
NUM_PTR | ipReservingComunicatorTrx = 0, | ||
NUM_PTR | ipReservingComunicator = 0, | ||
NUM_PTR | ipReservingComunicatorThreadID = 0 ) |
Setzt seine Werte.
[in] | rsIndex | Der Index eines Objektes. |
[in] | rObjID | Die Objekt-ID des Objektes mit dem Index. |
[in] | ipReservingComunicatorTrx | Die auf NUM_PTR gecastete Adresse eines Communicator's, in dessen Transaktion der Index ggf. reserviert wurde. Wenn diese gesetzt, ist der Index 'nur' reserviert. |
[in] | ipReservingComunicator | Die auf NUM_PTR gecastete Adresse eines Communicator's, in dessen Transaktion der Index ggf. reserviert wurde. Wenn diese gesetzt, ist der Index 'nur' reserviert. |
[in] | ipReservingComunicatorThreadID | Die auf NUM_PTR gecastete Thread-ID des Communicator-Threads, in dem eine Reservierung eines eindeutigen Indexes initiiert wurde. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
std::string glo::IndexPool::ObjStrIdTuple::toString | ( | ) | const |
Liefert sich in der Form 'Index|Objekt-ID|' z.B. "MUELLER KARL-THEOD|7.0.2743|"
|
private |
Die auf NUM_PTR gecastete Adresse des Kommunikators, der den Index reserviert hat.
|
private |
Die Thread-ID des Communicator-Threads, in dem eine Reservierung eines eindeutigen Indexes initiiert wurde.
|
private |
Die auf NUM_PTR gecastete Adresse des TransactionManager::TransactionStep's, in der der Index reserviert wurde.
|
private |
Die Objekt-ID des Objektes mit dem Index.
|
private |
Ein ggf. zusammengesetzter Index (z.B. wenn der Index im Schema: 'Index=Person.m_sName[10]|NaturalPerson.m_sFirstName[7]|' und die Sprache 'de', dann wird aus dem Name "Müller" und dem Vorname "Karl-Theodor" der Index "Mueller Karl-Theod" und wenn nicht 'CaseSensitive' der Index "MUELLER KARL-THEOD".