GlobalObjects
|
In Objekten dieser Klasse sind die Information für GlobalObjects, wie ein persistentes Klassenattribut aufgebaut ist. Mehr ...
#include <GloClassInfoAttribute.h>
Klassen | |
class | Type |
Zusammengefasste Typinformationen für ein ClassInfoAttribute. Mehr ... | |
Öffentliche Methoden | |
ClassInfoAttribute () | |
ClassInfoAttribute (const ClassInfoAttribute &rT) | |
ClassInfoAttribute (const std::string &rsName, const std::string &rsTableName, const std::string &rsFieldName, int iFieldPos, const std::string &rsAttributeType, const std::string &rsInfo) | |
virtual | ~ClassInfoAttribute () |
std::string | _DEBUG_ToString () |
std::string | formatAnIndexString (const std::string &rsStringToBeFormatted, const std::vector< eut::LanguageFunctions::EnLanguageKey > &rLanguageKeys, bool bCaseSensitive, void *pIndexAttributeItem) const |
std::string | formatAnSearchIndexString (const std::string &rsStringToBeFormatted, const std::vector< eut::LanguageFunctions::EnLanguageKey > &rLanguageKeys, bool bCaseSensitive, void *pIndexAttributeItem) const |
AttributeID | getAttributeID () const |
std::string | getClassAttributeName () const |
EnDataType | getDataType () const |
std::string | getDataTypeInfo () const |
std::string | getDataTypeSubType () const |
unsigned long | getDataTypeSubTypeClassID () const |
std::string | getDeveloperAccessControl () const |
std::string | getFieldName () const |
int | getFieldPos () const |
std::string | getFieldPosAsString () const |
EnDataTypeGroup | getInfoType () |
int | getSignificantCharacter () const |
std::string | getTableFieldName () const |
std::string | getTableName () const |
ClassInfoAttribute::Type | getType () const |
std::string | getTypeAsCppString () const |
std::string | getTypeAsString () const |
bool | isCrossreferenceType () const |
bool | isCrossreferenceType (std::string &rsCrossRefFileName) const |
bool | isCrossreferenceType (unsigned long &rulBaseID) const |
bool | isNum () const |
ClassInfoAttribute & | operator= (const ClassInfoAttribute &rT) |
void | setDataType (EnDataType eType) |
void | setDataTypeInfo (const std::string &rsInfo) |
void | setDataTypeSubType (const std::string &rsSubType) |
void | setDataTypeSubTypeClassID (unsigned long ulSubTypeClassID) |
void | setDeveloperAccessControl (const std::string &rsAccessControl) |
void | setFieldName (const std::string &rsName) |
void | setFieldPos (int iFieldPos) |
void | setTableName (const std::string &rsName) |
bool | operator== (const ClassInfoAttribute &rT) const |
Vergleichsoperator, es werden alle Attribute verglichen. | |
bool | operator!= (const ClassInfoAttribute &rT) const |
Vergleichsoperator, es werden alle Attribute verglichen. | |
Öffentliche Methoden geerbt von glo::ClassInfoItem | |
ClassInfoItem () | |
ClassInfoItem (const ClassInfoItem &rT) | |
ClassInfoItem (const std::string &rsName) | |
virtual | ~ClassInfoItem () |
unsigned long | getClassID () const |
std::string | getClassName () const |
std::string | getDeveloperDescription () const |
std::string | getName () const |
ClassInfo * | getParent () |
ClassInfoItem & | operator= (const ClassInfoItem &rT) |
void | setDeveloperDescription (const std::string &rsDeveloperDescription) |
void | setMyClassInfo (ClassInfo *pMyClassInfo) |
void | setName (const std::string &rsName) |
bool | operator== (const ClassInfoItem &rT) const |
Vergleichsoperator, es werden alle Attribute verglichen. | |
bool | operator!= (const ClassInfoItem &rT) const |
Vergleichsoperator, es werden alle Attribute verglichen. | |
Öffentliche, statische Methoden | |
static unsigned int | getDataTypesCount () |
static EnDataTypeGroup | getInfoType (EnDataType eType) |
static int | getRecordAttributeLimits (const ClassInfoAttribute::Type &rDataType, std::string &rsMin, std::string &rsMax, std::string &rsDataFieldSize) |
static int | getSignificantCharacter (EnDataType eDataType) |
static std::string | getTypeAsCppString (EnDataType eType, const std::string &rsSubType) |
static std::string | getTypeAsString (EnDataType eType, bool bSimple=true) |
static EnDataType | getTypeFromString (const std::string &rsType) |
static bool | isNum (EnDataType eDataType) |
Private Methoden | |
void | convertAttributeType (const std::string &rsType, const std::string &rsTypeInfo) |
std::string | formatAnyIndexString (const std::string &rsStringToBeFormatted, const std::vector< eut::LanguageFunctions::EnLanguageKey > &rLanguageKeys, bool bCaseSensitive, bool bIsSearchString, void *pIndexAttributeItem) const |
Private Attribute | |
int | m_iFieldPos |
std::string | m_sDeveloperAccessControl |
std::string | m_sFieldName |
std::string | m_sTableName |
ClassInfoAttribute::Type | m_Type |
Freundbeziehungen | |
class | ClassInfo |
class | SchemaInterface |
In Objekten dieser Klasse sind die Information für GlobalObjects, wie ein persistentes Klassenattribut aufgebaut ist.
Um aus Tabellen Objekte und aus Objekten Tabellen bauen zu können, brauchen wir Klasseninformations-Attribute.
glo::ClassInfoAttribute::ClassInfoAttribute | ( | ) |
Standard-Konstruktor.
glo::ClassInfoAttribute::ClassInfoAttribute | ( | const std::string & | rsName, |
const std::string & | rsTableName, | ||
const std::string & | rsFieldName, | ||
int | iFieldPos, | ||
const std::string & | rsAttributeType, | ||
const std::string & | rsInfo ) |
Konstruktor mit Parameterübergabe.
[in] | rsName | Die Attributbezeichnung. |
[in] | rsTableName | Die Tabellenbezeichnung in der Attribute dieses Klasseninformations-Attributs abgelegt werden. |
[in] | rsFieldName | Die Tabellenfeldbezeichnung in der Attribute dieses Klasseninformations-Attribute abgelegt werden. |
[in] | iFieldPos | Die SpaltenPosition in der Tabelle. |
[in] | rsAttributeType | Der Attributtyp als String (siehe auch SchemaTypeString). |
[in] | rsInfo | Die Info wie z.B. eine Zahl für eine Stringlänge oder ein Ausdruck wie dependent etc. (siehe auch EnDataTypeGroup). |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
glo::ClassInfoAttribute::ClassInfoAttribute | ( | const ClassInfoAttribute & | rT | ) |
Copy-Konstruktor.
[in] | rT | Von diesem Objekt werden die Daten übernommen. |
|
virtual |
Destruktor.
std::string glo::ClassInfoAttribute::_DEBUG_ToString | ( | ) |
|
private |
Setzt aus übergebenen Parametern den eigenen Typ.
[in] | rsType | Der Attributtyp als String (siehe auch SchemaTypeString). |
[in] | rsTypeInfo | Die Info wie z.B. eine Zahl für eine Stringlänge oder ein Ausdruck wie dependent etc. |
eut::ErrorNException | Bei einem Fehler wird eine Exception geworfen. |
std::string glo::ClassInfoAttribute::formatAnIndexString | ( | const std::string & | rsStringToBeFormatted, |
const std::vector< eut::LanguageFunctions::EnLanguageKey > & | rLanguageKeys, | ||
bool | bCaseSensitive, | ||
void * | pIndexAttributeItem ) const |
Liefert einen formatierten Indexstring.
[in] | rsStringToBeFormatted | Der zu formatierende String. |
[in] | rLanguageKeys | Die Sprachschlüssel in einem Vector. |
[in] | bCaseSensitive | Wenn false, werden alle Zeichen im rsStringToBeFormatted in Großbuchstaben umgewandelt. |
[in] | pIndexAttributeItem | Die Information, welcher Index gemeint ist. Wird in ClassInfoIndex::IndexAttributeItem gecastet. |
std::string glo::ClassInfoAttribute::formatAnSearchIndexString | ( | const std::string & | rsStringToBeFormatted, |
const std::vector< eut::LanguageFunctions::EnLanguageKey > & | rLanguageKeys, | ||
bool | bCaseSensitive, | ||
void * | pIndexAttributeItem ) const |
Liefert einen formatierten Such-Indexstring. Der Unterschied zur Methode ClassInfoAttribute::formatAnIndexString (...) ist der, dass in dieser Methode der Suchstring, wenn ggf. zu lang durch Platzhalter '*', nicht gekürzt wird.
[in] | rsStringToBeFormatted | Der zu formatierende String. |
[in] | rLanguageKeys | Die Sprachschlüssel in einem Vector. |
[in] | bCaseSensitive | Wenn false, werden alle Zeichen im rsStringToBeFormatted in Großbuchstaben umgewandelt. |
[in] | pIndexAttributeItem | Die Information, welcher Index gemeint ist. Wird in ClassInfoIndex::IndexAttributeItem gecastet. |
|
private |
Liefert einen formatierten Such-Indexstring.
[in] | rsStringToBeFormatted | Der zu formatierende String. |
[in] | rLanguageKeys | Die Sprachschlüssel in einem Vector. |
[in] | bCaseSensitive | Wenn false, werden alle Zeichen im rsStringToBeFormatted in Großbuchstaben umgewandelt. |
[in] | bIsSearchString | Wenn gesetzt,ist der Unterschied der, dass der Suchstring, wenn ggf. zu lang durch Platzhalter '*', nicht gekürzt wird. |
[in] | pIndexAttributeItem | Die Information, welcher Index gemeint ist. Wird in ClassInfoIndex::IndexAttributeItem gecastet. |
AttributeID glo::ClassInfoAttribute::getAttributeID | ( | ) | const |
std::string glo::ClassInfoAttribute::getClassAttributeName | ( | ) | const |
Liefert die Attributbezeichnung mit Klassenbezeichnung getrennt durch einen Punkt. Z.B. "MyClass.m_MyAttribute".
EnDataType glo::ClassInfoAttribute::getDataType | ( | ) | const |
std::string glo::ClassInfoAttribute::getDataTypeInfo | ( | ) | const |
|
static |
Liefert Anzahl der unterstützten Attributtypen. Kann genutzt werden, um alle Datentypen als String anzuzeigen indem Werte einzeln an ClassInfoAttribute::getTypeAsString(EnDataType, bool) übergeben werden.
std::string glo::ClassInfoAttribute::getDataTypeSubType | ( | ) | const |
unsigned long glo::ClassInfoAttribute::getDataTypeSubTypeClassID | ( | ) | const |
std::string glo::ClassInfoAttribute::getDeveloperAccessControl | ( | ) | const |
std::string glo::ClassInfoAttribute::getFieldName | ( | ) | const |
int glo::ClassInfoAttribute::getFieldPos | ( | ) | const |
std::string glo::ClassInfoAttribute::getFieldPosAsString | ( | ) | const |
EnDataTypeGroup glo::ClassInfoAttribute::getInfoType | ( | ) |
|
static |
Liefert den Gruppentyp des übergebenen Attributtyps.
[in] | eType | Der Attributtyp |
|
static |
Liefert die Limits des übergebenen Klasseninformations-Attributtyps.
[in] | rDataType | Der RecordAttributeTyp. |
[in,out] | rsMin | Minimaler Wert des Attributes vom übergebenen Typs. |
[in,out] | rsMax | Maximaler Wert des Attributes vom übergebenen Typs. |
[in,out] | rsDataFieldSize | Länge des Datenfeldes . |
int glo::ClassInfoAttribute::getSignificantCharacter | ( | ) | const |
|
static |
Liefert die voreingestellte Länge des übergebenen Attributtyps.
[in] | eDataType | Der zu prüfende Attributtyp. |
std::string glo::ClassInfoAttribute::getTableFieldName | ( | ) | const |
Liefert die Tabellen- und Tabellenfeldbezeichnung getrennt durch einen Punkt. Z.B. "TableName.FieldName".
std::string glo::ClassInfoAttribute::getTableName | ( | ) | const |
ClassInfoAttribute::Type glo::ClassInfoAttribute::getType | ( | ) | const |
std::string glo::ClassInfoAttribute::getTypeAsCppString | ( | ) | const |
|
static |
Liefert den übergebenen Arttributtyp in Verbindung mit dem SubString, wie er in der Header- und Source-Datei steht.
[in] | eType | Der Attributtyp |
[in] | rsSubType | Der SubTyp. |
std::string glo::ClassInfoAttribute::getTypeAsString | ( | ) | const |
Liefert den von GlobalObjects unterstützten Arttributtyp, wie er im Schema steht.
|
static |
Liefert den übergebenen Attributtyp als String wie er im Schema steht.
[in] | eType | Der Attributtyp |
[in] | bSimple | Wenn true, werden 'unsigned' Zahlen ohne "unsigned" geliefert. |
|
static |
Liefert den übergebenen Attributtyp.
[in] | rsType | Der Attributtyp in einem String (GLORA_SCHEMATYPESTRING). |
bool glo::ClassInfoAttribute::isCrossreferenceType | ( | ) | const |
Liefert true, wenn dass Attribut eine Referenz ist, die in einer anderen Datenbank zu finden ist.
bool glo::ClassInfoAttribute::isCrossreferenceType | ( | std::string & | rsCrossRefFileName | ) | const |
Liefert true, wenn dass Attribut eine Referenz ist, die in einer anderen Datenbank zu finden ist und den entsprechenden Dateinamen des referenzierten Objekts.
[in,out] | rsCrossRefFileName | Wenn der Returnwert == true, ist hier der entsprechende Dateinamen des referenzierten Objekts zu finden. |
bool glo::ClassInfoAttribute::isCrossreferenceType | ( | unsigned long & | rulBaseID | ) | const |
Liefert true, wenn dass Attribut eine Referenz ist, die in einer anderen Datenbank zu finden ist und die entsprechende Datenbank-ID.
[in,out] | rulBaseID | Wenn der Returnwert == true, ist hier die entsprechende Datenbank-ID zu finden. |
bool glo::ClassInfoAttribute::isNum | ( | ) | const |
|
static |
Prüft ob es sich beim übergebenen Attributtyp um eine Zahl handelt.
[in] | eDataType | Der zu prüfende Attributtyp. |
bool glo::ClassInfoAttribute::operator!= | ( | const ClassInfoAttribute & | rT | ) | const |
Vergleichsoperator, es werden alle Attribute verglichen.
[in] | rT | Das mit diesem zu vergleichende Objekt. |
ClassInfoAttribute & glo::ClassInfoAttribute::operator= | ( | const ClassInfoAttribute & | rT | ) |
Zuweisungsoperator.
[in] | rT | Von diesem Objekt werden die Daten übernommen. |
bool glo::ClassInfoAttribute::operator== | ( | const ClassInfoAttribute & | rT | ) | const |
Vergleichsoperator, es werden alle Attribute verglichen.
[in] | rT | Das mit diesem zu vergleichende Objekt. |
void glo::ClassInfoAttribute::setDataType | ( | EnDataType | eType | ) |
Setzt den eindeutigen unterstützten Attributtyp.
[in] | eType | Die Attributtyp. |
void glo::ClassInfoAttribute::setDataTypeInfo | ( | const std::string & | rsInfo | ) |
Setzt die Info wie z.B. eine Zahl für eine Stringlänge oder ein Ausdruck wie dependent etc. Siehe auch ClassInfoAttribute::Type::setTypeInfo() und EnDataTypeGroup.
[in] | rsInfo | Die Info. |
void glo::ClassInfoAttribute::setDataTypeSubType | ( | const std::string & | rsSubType | ) |
Setzt einen evtl. SubTyp.
[in] | rsSubType | Der SubTyp. |
void glo::ClassInfoAttribute::setDataTypeSubTypeClassID | ( | unsigned long | ulSubTypeClassID | ) |
Setzt eine evtl. SubTyp-Klassen-ID.
[in] | ulSubTypeClassID | Die SubTyp-Klassen-ID. |
void glo::ClassInfoAttribute::setDeveloperAccessControl | ( | const std::string & | rsAccessControl | ) |
Setzt die Zugriffskontrolle für das Attribut.
[in] | rsAccessControl | Die Zugriffskontrolle für das Attribut. |
void glo::ClassInfoAttribute::setFieldName | ( | const std::string & | rsName | ) |
Setzt die Tabellenfeldbezeichnung in der Attribute dieses Klasseninformations-Attribute abgelegt werden.
[in] | rsName | Die Tabellenfeldbezeichnung. |
void glo::ClassInfoAttribute::setFieldPos | ( | int | iFieldPos | ) |
Setzt die SpaltenPosition in der Tabelle.
[in] | iFieldPos | Die SpaltenPosition. |
void glo::ClassInfoAttribute::setTableName | ( | const std::string & | rsName | ) |
Setzt die Tabellenbezeichnung in der Attribute dieses Klasseninformations-Attributs abgelegt werden.
[in] | rsName | Die Tabellenbezeichnung. |
|
friend |
|
friend |
|
private |
Die die Spaltenposition in der Tabelle (Start bei 0) in der der Wert dieses Klasseninformations-Attributs abgelegt wird.
|
private |
Die Zugriffskontrolle, um bei der Erzeugung der Header-Dateien die Attribute 'privat', 'geschützt' oder 'öffentlich' zuzuweisen.
Wird vom SchemaInterface nur gesetzt und ausgewertet, wenn diese im Developer-Mode ist.
|
private |
Die Tabellenfeldbezeichnung in der der Wert dieses Klasseninformations-Attributs abgelegt wird.
|
private |
Die Tabellenbezeichnung in der der Wert dieses Klasseninformations-Attributs abgelegt wird.
|
private |
Die zusammengefasste Typinformationen.