|
BankAndCustomer
|
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZahl (jeweils unsigned long). Mehr ...
#include <GloObjID.h>
Klassen | |
| struct | HashFunction |
Öffentliche Methoden | |
| ObjID () | |
| ObjID (unsigned long ulClassID, unsigned long ulBaseID, unsigned long ulObjCounter) | |
| ObjID (const std::string &sObjId, const std::string &sSeparator=".") | |
| ObjID (const ObjID &rT) | |
| virtual | ~ObjID () |
| bool | isNULL () const |
| void | setNULL () |
| void | setID (unsigned long ulClassID, unsigned long ulBaseID, unsigned long ulObjCounter) |
| int | setID (const std::string &sObjId, const std::string &sSeparator=".") |
| void | setClassID (unsigned long ulClassID) |
| void | setBaseID (unsigned long ulBaseID) |
| void | setObjCounter (unsigned long ulObjCounter) |
| unsigned long | getClassID () const |
| unsigned long | getBaseID () const |
| unsigned long | getObjCounter () const |
| std::string | getObjCounterAsString () const |
| std::string | toString () const |
| ObjID & | operator= (const ObjID &rT) |
| bool | operator== (const ObjID &rT) const |
| Vergleichsoperator. | |
| bool | operator!= (const ObjID &rT) const |
| Vergleichsoperator. | |
| bool | operator> (const ObjID &rT) const |
| Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen. | |
| bool | operator>= (const ObjID &rT) const |
| Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen. | |
| bool | operator< (const ObjID &rT) const |
| Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen. | |
| bool | operator<= (const ObjID &rT) const |
| Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen. | |
Öffentliche, statische Methoden | |
| static bool | IsValidObjID (const std::string &rsObjID, const std::string &sSeparator=".") |
Private Attribute | |
| unsigned long | m_ulClassID |
| unsigned long | m_ulBaseID |
| unsigned long | m_ulObjCounter |
Freundbeziehungen | |
| std::ostream & | operator<< (std::ostream &rOStream, const ObjID &rObjID) |
| std::istream & | operator>> (std::istream &rIStream, ObjID &rObjID) |
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZahl (jeweils unsigned long).
Jedes persistente Objekt bekommt eine Objekt-ID und ist somit eindeutig in der Datenbank identifizierbar. Eine Objekt-ID wird von GlobalObjects bei der Anmeldung eines persistenten Objekts in der Datenbank vergeben. Eine Objekt-ID ist einmalig und wird, wenn ein persistenten Objekt gelöscht wird, nicht wiederverwendet.
Referenzierungen in der Datenbank werden mittels der Objekt-ID vorgenommen.
| glo::ObjID::ObjID | ( | ) |
Standard-Konstruktor.
| glo::ObjID::ObjID | ( | unsigned long | ulClassID, |
| unsigned long | ulBaseID, | ||
| unsigned long | ulObjCounter ) |
Konstruktor mit Parameterübergabe setzt die Objekt-ID.
| [in] | ulClassID | Die Klassen-ID. |
| [in] | ulBaseID | Die Datenbank-ID. |
| [in] | ulObjCounter | Die Objektzähler. |
| glo::ObjID::ObjID | ( | const std::string & | sObjId, |
| const std::string & | sSeparator = "." ) |
Konstruktor mit Parameterübergabe.
Übernimmt die Klassen-ID, Datenbank-ID und Objektzähler aus einem String.
Wenn dieser z.B. in folgender Form vorliegen: "2.0.123" resultiert daraus:
Führende und folgende Leerzeichen werden nicht beachtet.
| [in] | sObjId | Klassen-ID, Datenbank-ID und Objektzähler in einem String. |
| [in] | sSeparator | Das Trennzeichen (default "."). |
| eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
| glo::ObjID::ObjID | ( | const ObjID & | rT | ) |
Copy-Konstruktor.
| [in] | rT | Von diesem Objekt werden die Daten übernommen. |
|
virtual |
Destruktor.
| unsigned long glo::ObjID::getBaseID | ( | ) | const |
| unsigned long glo::ObjID::getClassID | ( | ) | const |
| unsigned long glo::ObjID::getObjCounter | ( | ) | const |
| std::string glo::ObjID::getObjCounterAsString | ( | ) | const |
| bool glo::ObjID::isNULL | ( | ) | const |
Prüft ob die Klassen-ID eine Wert hat, also gültig ist.
|
static |
Überprüft die übergebene Zeichenkette, ob sie eine gültige Objekt-ID darstellt.
| [in] | rsObjID | Referenz auf die zu prüfende Zeichenkette. |
| [in] | sSeparator | Das Trennzeichen (default "."). |
| bool glo::ObjID::operator!= | ( | const ObjID & | rT | ) | const |
Vergleichsoperator.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
| bool glo::ObjID::operator< | ( | const ObjID & | rT | ) | const |
Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen.
Die ObjID 999.1.1 ist größer als 888.999.999.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
| bool glo::ObjID::operator<= | ( | const ObjID & | rT | ) | const |
Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen.
Die ObjID 999.1.1 ist größer als 888.999.999.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
Zuweisungsoperator.
| [in] | rT | Von diesem Objekt werden die Daten übernommen. |
| bool glo::ObjID::operator== | ( | const ObjID & | rT | ) | const |
Vergleichsoperator.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
| bool glo::ObjID::operator> | ( | const ObjID & | rT | ) | const |
Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen.
Die ObjID 999.1.1 ist größer als 888.999.999.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
| bool glo::ObjID::operator>= | ( | const ObjID & | rT | ) | const |
Der Größenvergleich wird von der m_ulClassID über die m_ulBaseID zur m_ulObjCounter in Reihenfolge vorgeneommen.
Die ObjID 999.1.1 ist größer als 888.999.999.
| [in] | rT | Das mit diesem zu vergleichende Objekt. |
| void glo::ObjID::setBaseID | ( | unsigned long | ulBaseID | ) |
| void glo::ObjID::setClassID | ( | unsigned long | ulClassID | ) |
| int glo::ObjID::setID | ( | const std::string & | sObjId, |
| const std::string & | sSeparator = "." ) |
Übernimmt die Klassen-ID, Datenbank-ID und Objektzähler aus einem String.
Wenn dieser z.B. in folgender Form vorliegen: "2.0.123" resultiert daraus:
Führende und folgende Leerzeichen werden nicht beachtet.
| [in] | sObjId | Klassen-ID, Datenbank-ID und Objektzähler in einem String. |
| [in] | sSeparator | Das Trennzeichen (default "."). |
| void glo::ObjID::setID | ( | unsigned long | ulClassID, |
| unsigned long | ulBaseID, | ||
| unsigned long | ulObjCounter ) |
Setzt die Objekt-ID.
| [in] | ulClassID | Die Klassen-ID. |
| [in] | ulBaseID | Die Datenbank-ID. |
| [in] | ulObjCounter | Die Objektzähler. |
| void glo::ObjID::setNULL | ( | ) |
Setzt alle Attribute auf 0.
| void glo::ObjID::setObjCounter | ( | unsigned long | ulObjCounter | ) |
| std::string glo::ObjID::toString | ( | ) | const |
Liefert die Objekt-ID in einem String. Der Trenner ist der Defaultwert ".".
|
friend |
|
friend |
|
private |
Die Datenbank-ID.
|
private |
Die Klassen-ID.
|
private |
Der Objektzähler.