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

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.ConfigSystemObjectType
All Implemented Interfaces:
ConfigurationObject, SystemObject, SystemObjectCollection, SystemObjectType, Comparable
Direct Known Subclasses:
ConfigConfigurationObjectType, ConfigDynamicObjectType

public class ConfigSystemObjectType
extends ConfigConfigurationObject
implements SystemObjectType

Implementierung der Typen von System-Objekten auf Seiten der Konfiguration.

Author:
Kappich Systemberatung

Field Summary
private  List<SystemObject> _allElements
          Enthält alle aktuellen System-Objekte, die von diesem Objekt-Typ sind.
private  List<AttributeGroup> _attributeGroups
          Alle Attributgruppen dieses Objekt-Typs.
private  List<AttributeGroup> _directAttributeGroups
          Speichert die Attributgruppen, die an diesem Objekt-Typ definiert wurden.
private  List<ObjectSetUse> _directObjectSetUses
          Die Mengenverwendungen, die an diesem Objekt-Typ definiert wurden.
private  Object _lockObject
          Objekt für den synchronisierten Zugriff auf die Elemente dieses Objekt-Typs.
private  List<ObjectSetUse> _objectSetUses
          Alle Mengenverwendungen dieses Objekt-Typs.
private  List<SystemObjectType> _subTypes
          Speichert die Sub-Typen dieses Objekt-Typs.
private  List<SystemObjectType> _superTypes
          Speichert die Super-Typen dieses Objekt-Typs.
 
Fields inherited from class de.bsvrz.puk.config.configFile.datamodel.ConfigSystemObject
_systemObjectInfo
 
Constructor Summary
ConfigSystemObjectType(ConfigurationArea configurationArea, SystemObjectInformationInterface systemObjectInfo)
          Konstruktor eines System-Objekt-Typs.
 
Method Summary
protected  List<SystemObject> getAllElements()
          Liefert alle aktuellen Elemente des Typs zurück.
 List<AttributeGroup> getAttributeGroups()
           
 List<AttributeGroup> getDirectAttributeGroups()
           
 List<ObjectSetUse> getDirectObjectSetUses()
           
 List<SystemObject> getElements()
           
 List<SystemObject> getElements(long time)
           
 List<SystemObject> getElementsDuringPeriod(long startTime, long endTime)
           
 List<SystemObject> getElementsInPeriod(long startTime, long endTime)
           
 List<SystemObject> getObjects()
           
 List<ObjectSetUse> getObjectSetUses()
           
 List<SystemObjectType> getSubTypes()
           
 List<SystemObjectType> getSuperTypes()
           
 boolean inheritsFrom(SystemObjectType other)
           
 boolean isBaseType()
           
 boolean isConfigurating()
           
 boolean isNameOfObjectsPermanent()
           
 
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.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

_superTypes

private List<SystemObjectType> _superTypes
Speichert die Super-Typen dieses Objekt-Typs.


_subTypes

private List<SystemObjectType> _subTypes
Speichert die Sub-Typen dieses Objekt-Typs.


_directAttributeGroups

private List<AttributeGroup> _directAttributeGroups
Speichert die Attributgruppen, die an diesem Objekt-Typ definiert wurden. Geerbte Attributgruppen werden hier nicht aufgeführt.


_attributeGroups

private List<AttributeGroup> _attributeGroups
Alle Attributgruppen dieses Objekt-Typs.


_directObjectSetUses

private List<ObjectSetUse> _directObjectSetUses
Die Mengenverwendungen, die an diesem Objekt-Typ definiert wurden. Geerbte Mengenverwendungen werden hier nicht gespeichert.


_objectSetUses

private List<ObjectSetUse> _objectSetUses
Alle Mengenverwendungen dieses Objekt-Typs.


_lockObject

private final Object _lockObject
Objekt für den synchronisierten Zugriff auf die Elemente dieses Objekt-Typs.


_allElements

private List<SystemObject> _allElements
Enthält alle aktuellen System-Objekte, die von diesem Objekt-Typ sind.

Constructor Detail

ConfigSystemObjectType

public ConfigSystemObjectType(ConfigurationArea configurationArea,
                              SystemObjectInformationInterface systemObjectInfo)
Konstruktor eines System-Objekt-Typs.

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

getSuperTypes

public List<SystemObjectType> getSuperTypes()
Specified by:
getSuperTypes in interface SystemObjectType

getSubTypes

public List<SystemObjectType> getSubTypes()
Specified by:
getSubTypes in interface SystemObjectType

getDirectAttributeGroups

public List<AttributeGroup> getDirectAttributeGroups()
Specified by:
getDirectAttributeGroups in interface SystemObjectType

getAttributeGroups

public List<AttributeGroup> getAttributeGroups()
Specified by:
getAttributeGroups in interface SystemObjectType

isBaseType

public boolean isBaseType()
Specified by:
isBaseType in interface SystemObjectType

isConfigurating

public boolean isConfigurating()
Specified by:
isConfigurating in interface SystemObjectType

getDirectObjectSetUses

public List<ObjectSetUse> getDirectObjectSetUses()
Specified by:
getDirectObjectSetUses in interface SystemObjectType

getObjectSetUses

public List<ObjectSetUse> getObjectSetUses()
Specified by:
getObjectSetUses in interface SystemObjectType

inheritsFrom

public boolean inheritsFrom(SystemObjectType other)
Specified by:
inheritsFrom in interface SystemObjectType

isNameOfObjectsPermanent

public boolean isNameOfObjectsPermanent()
Specified by:
isNameOfObjectsPermanent in interface SystemObjectType

getObjects

public List<SystemObject> getObjects()
Specified by:
getObjects in interface SystemObjectType

getElements

public List<SystemObject> getElements()
Specified by:
getElements in interface SystemObjectCollection

getAllElements

protected List<SystemObject> getAllElements()
Liefert alle aktuellen Elemente des Typs zurück. Bei dynamischen Typen werden auch die in einer Simulation erzeugten Objekte zurückgeliefert.

Returns:
Alle aktuellen Elemente des Typs unabhängig von der Simulationsvariante.

getElements

public List<SystemObject> getElements(long time)
Specified by:
getElements in interface SystemObjectCollection

getElementsInPeriod

public List<SystemObject> getElementsInPeriod(long startTime,
                                              long endTime)
Specified by:
getElementsInPeriod in interface SystemObjectCollection

getElementsDuringPeriod

public List<SystemObject> getElementsDuringPeriod(long startTime,
                                                  long endTime)
Specified by:
getElementsDuringPeriod in interface SystemObjectCollection