public class UndefinedValueHandler extends Object
Modifier and Type | Method and Description |
---|---|
static UndefinedValueHandler |
getInstance()
Gibt eine Instanz der Klasse zurück.
|
Long |
getUndefinedValueInteger(IntegerAttributeType integerAttributeType)
Gibt eine Zahl zurück, die entweder den größten Wert darstellt, der mit den angegebenen Bytes darzustellen ist oder aber die kleinste Zahl.
|
String |
getUndefinedValueString()
Stellt den String zur Verfügung, der den "undefiniert Wert" eines
StringAttributeType darstellt. |
long |
getUndefinedValueTimeAbselute()
Gibt den "undefiniert Wert" eines TimeAttribute (abeslute Angaben) zurück.
|
boolean |
isDefinedInteger(IntegerAttributeType attributeType,
Data data,
Long undefinedValue)
Prüft ob ein Attribut vom Typ IntegerAttributeType definiert ist und damit verschickt werden kann.
|
boolean |
isDefinedReference(Data data,
ReferenceAttributeType referenceAttributeType)
Prüft ob der Wert eines Attributes vom Typ "ReferenceAttributeType" undefiniert ist und somit nicht verschickt werden kann.
|
boolean |
isDefinedString(Data data)
Prüft ob das übergebene Attribut einen Wert ungleich dem "undefiniert Wert" besitzt.
|
boolean |
isDefinedTimeAbsolute(Data data)
Prüft, ob der Wert eines Attributes definiert ist.
|
boolean |
isDefinedTimeRelative(Data data,
byte accuracy)
Prüft, ob eine relative Zeitangabe definiert ist.
|
void |
setToUndefinedInteger(Data data,
Long undefinedValue,
IntegerAttributeType integerAttributeType) |
void |
setToUndefinedReference(Data data)
Setzt ein Attribut vom Typ ReferenceAttributeType auf den "undefiniert Wert".
|
void |
setToUndefinedString(Data data)
Setzt das Attribut auf den sogenannten "undefiniert Wert".
|
void |
setToUndefinedTimeAbsolute(Data data)
Setzt den Wert des Attributes auf "undefiniert".
|
void |
setToUndefinedTimeRelative(Data data,
byte accuracy)
Setzt den "undefiniert Wert" bei einem Attribut vom Typ TimeAttributeType (relative Zeitangabe).
|
public static final UndefinedValueHandler getInstance()
public void setToUndefinedString(Data data)
data
- Attribut, dessen Wert gesetzt werden sollIllegalArgumentException
- Der Attributtyp ist nicht StringAttributeType
public boolean isDefinedString(Data data)
data
- AttributIllegalArgumentException
- Der Attributtyp ist nicht StringAttributeType
public String getUndefinedValueString()
StringAttributeType
darstellt.public void setToUndefinedReference(Data data)
data
- Attribut, dessen Wert auf "undefiniert" gesetzt werden sollpublic boolean isDefinedReference(Data data, ReferenceAttributeType referenceAttributeType)
data
- Attribut, dessen Wert geprüft werden sollreferenceAttributeType
- Bestimmt, ob die Referenz "0" als undefiniert Wert gilt, oder als normale Referenzpublic Long getUndefinedValueInteger(IntegerAttributeType integerAttributeType)
integerAttributeType
- Enthält den ByteCount, die States und die Min/Maxnull
zurückgegeben.public void setToUndefinedInteger(Data data, Long undefinedValue, IntegerAttributeType integerAttributeType)
data
- Attribut, in das der "undefiniert Wert" eingetragen wirdundefinedValue
- Undefiniert Wert des Attributtyps. null
wird als "es gibt keinen undefiniert Wert" interpretiert.integerAttributeType
- Dient nur dazu, um bei einem Fehler die Pid des fehlehaften Typs anzugebenIllegalStateException
- Es kann kein "undefiniert Wert" ermittelt werden, da alle Byte-Kombinationen gebraucht werden um die angegebenen Werte
darzustellen. Dieser Fall darf eigentlich nicht auftreten, da in diesen Fällen ein default-Wert definiert sein muss.public boolean isDefinedInteger(IntegerAttributeType attributeType, Data data, Long undefinedValue)
attributeType
- Ganzzahl-Attributtypdata
- Attribut, dessen Wert geprüft werden sollundefinedValue
- enthält den undefiniert Wert des Attributtyps. Wird null
übergeben, so wird dies als "kein undefiniert festgelegt"
interpretiert.public void setToUndefinedTimeAbsolute(Data data)
data
- Attribute, das auf den undefinierten Wert gesetzt werden sollpublic boolean isDefinedTimeAbsolute(Data data)
data
- Attributepublic long getUndefinedValueTimeAbselute()
public void setToUndefinedTimeRelative(Data data, byte accuracy)
Long.MIN_VALUE
benutzt, bei Sekunden Integer.MIN_VALUE
.data
- Attributaccuracy
- Sekunden oder Millisekunden TimeAttributeType
public boolean isDefinedTimeRelative(Data data, byte accuracy)
data
- Attribut vom Typ TimeAttributeTypeaccuracy
- Sekunden oder Millisekunden TimeAttributeType