de.bsvrz.puk.config.configFile.datamodel
Class ConfigIntegerAttributeType

java.lang.Object
  extended by de.bsvrz.puk.config.configFile.datamodel.AbstractConfigSystemObject
      extended by de.bsvrz.puk.config.configFile.datamodel.ConfigSystemObject
          extended by de.bsvrz.puk.config.configFile.datamodel.ConfigConfigurationObject
              extended by de.bsvrz.puk.config.configFile.datamodel.ConfigAttributeType
                  extended by de.bsvrz.puk.config.configFile.datamodel.ConfigIntegerAttributeType
All Implemented Interfaces:
AttributeType, ConfigurationObject, IntegerAttributeType, SystemObject, UndefinedAttributeValueAccess, Comparable

public class ConfigIntegerAttributeType
extends ConfigAttributeType
implements IntegerAttributeType

Implementierung des Interfaces für Integer-Attribut-Typen.

Author:
Stephan Homeyer (sth), Kappich Systemberatung

Nested Class Summary
private  class ConfigIntegerAttributeType.IntegerAttributeTypeValues
          Diese Klasse liest die Informationen für diesen Attributtypen mit Hilfe des Deserializers direkt aus dem Byte-Array des konfigurierenden Datensatzes aus und verwendet nicht die Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup), da dort Informationen benötigt werden, die hier erst zur Verfügung gestellt werden.
 
Field Summary
private static Debug _debug
          DebugLogger für Debug-Ausgaben
private  List<IntegerValueState> _states
          Speichert die erlaubten diskreten Zustände eines Attributs.
private  Long _undefinedValue
          Enthält entweder den undefiniert Wert, oder null falls der Wert nicht berechenbar war.
private  boolean _undefinedValueRequested
          Der undefiniert Wert muss nur einmal angefordert werden.
private  ConfigIntegerAttributeType.IntegerAttributeTypeValues _values
          Speichert die Eigenschaften dieses AttributTyps.
 
Fields inherited from class de.bsvrz.puk.config.configFile.datamodel.ConfigSystemObject
_systemObjectInfo
 
Fields inherited from interface de.bsvrz.dav.daf.main.config.IntegerAttributeType
BYTE, INT, LONG, SHORT
 
Constructor Summary
ConfigIntegerAttributeType(ConfigurationArea configurationArea, SystemObjectInformationInterface systemObjectInfo)
          Konstruktor für Integer-Attribut-Typen.
 
Method Summary
 int getByteCount()
           
private  ConfigIntegerAttributeType.IntegerAttributeTypeValues getIntegerAttributeTypeValues()
          Gibt das Objekt zurück, welches die Eigenschaften dieses AttributTyps enthält.
 IntegerValueRange getRange()
           
 List<IntegerValueState> getStates()
           
private  Long getUndefinedValue()
          Stellt den undefiniert Wert zur Verfügung.
 short getValueSize()
           
 boolean isDefined(Data data)
           
 void setToUndefined(Data data)
           
 
Methods inherited from class de.bsvrz.puk.config.configFile.datamodel.ConfigAttributeType
getDefaultAttributeValue, loadDefaultAttributeValue
 
Methods inherited from class de.bsvrz.puk.config.configFile.datamodel.ConfigConfigurationObject
addSet, directDuplicate, directModification, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, invalidate, isValid, removeSet, revalidate, simpleRevalidate
 
Methods inherited from class de.bsvrz.puk.config.configFile.datamodel.ConfigSystemObject
checkChangePermit, createConfigurationData, equals, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationDataBytes, getId, getName, getPid, getSerializerVersion, getType, getUsedAttributeGroupUsages, hashCode, removeConfigurationData, setConfigurationData, setConfigurationData, setName, simpleInvalidation
 
Methods inherited from class de.bsvrz.puk.config.configFile.datamodel.AbstractConfigSystemObject
compareTo, getConfigurationArea, getConfigurationData, getDataModel, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, setConfigurationData, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.bsvrz.dav.daf.main.config.AttributeType
getDefaultAttributeValue
 
Methods inherited from interface de.bsvrz.dav.daf.main.config.ConfigurationObject
addSet, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, removeSet, revalidate
 
Methods inherited from interface de.bsvrz.dav.daf.main.config.SystemObject
getConfigurationArea, getConfigurationData, getConfigurationData, getConfigurationData, getDataModel, getId, getInfo, getName, getNameOrPidOrId, getPid, getPidOrId, getPidOrNameOrId, getType, getUsedAttributeGroupUsages, invalidate, isOfType, isOfType, isValid, setConfigurationData, setConfigurationData, setConfigurationData, setName, toString
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Field Detail

_debug

private static final Debug _debug
DebugLogger für Debug-Ausgaben


_states

private List<IntegerValueState> _states
Speichert die erlaubten diskreten Zustände eines Attributs.


_values

private ConfigIntegerAttributeType.IntegerAttributeTypeValues _values
Speichert die Eigenschaften dieses AttributTyps.


_undefinedValueRequested

private boolean _undefinedValueRequested
Der undefiniert Wert muss nur einmal angefordert werden. wird true, sobald der Wert angefordert wurde.


_undefinedValue

private Long _undefinedValue
Enthält entweder den undefiniert Wert, oder null falls der Wert nicht berechenbar war. Der Wert kann nicht im konstruktor berechnet werden, da dort die States nicht zur Verfügung stehen.

Constructor Detail

ConfigIntegerAttributeType

public ConfigIntegerAttributeType(ConfigurationArea configurationArea,
                                  SystemObjectInformationInterface systemObjectInfo)
Konstruktor für Integer-Attribut-Typen.

Parameters:
configurationArea - der Konfigurationsbereich dieses Typs
systemObjectInfo - das korrespondierende Objekt für Dateioperationen dieses Typs
Method Detail

getValueSize

public short getValueSize()
Specified by:
getValueSize in interface IntegerAttributeType

getByteCount

public int getByteCount()
Specified by:
getByteCount in interface IntegerAttributeType

getRange

public IntegerValueRange getRange()
Specified by:
getRange in interface IntegerAttributeType

getStates

public List<IntegerValueState> getStates()
Specified by:
getStates in interface IntegerAttributeType

getIntegerAttributeTypeValues

private ConfigIntegerAttributeType.IntegerAttributeTypeValues getIntegerAttributeTypeValues()
Gibt das Objekt zurück, welches die Eigenschaften dieses AttributTyps enthält. Existiert es noch nicht, so wird es erzeugt und der entsprechende konfigurierende Datensatz ausgelesen.

Returns:
die Eigenschaften dieses AttributTyps

getUndefinedValue

private Long getUndefinedValue()
Stellt den undefiniert Wert zur Verfügung. Ist dieser noch nicht vorhanden, wird er angefordert.

Returns:
undefiniert Wert, null bedeutet, dass es keinen Wert für diesen Attributtyp gibt

setToUndefined

public void setToUndefined(Data data)
Specified by:
setToUndefined in interface UndefinedAttributeValueAccess

isDefined

public boolean isDefined(Data data)
Specified by:
isDefined in interface UndefinedAttributeValueAccess