public class ConfigSystemObjectType extends ConfigConfigurationObject implements SystemObjectType
Implementierung der Typen von System-Objekten
auf Seiten der Konfiguration.
Modifier and Type | Field and Description |
---|---|
private java.util.Collection<SystemObject> |
_allElements
Enthält alle aktuellen System-Objekte, die von diesem Objekt-Typ sind.
|
private java.util.List<AttributeGroup> |
_attributeGroups
Alle Attributgruppen dieses Objekt-Typs.
|
private java.util.Set<AttributeGroup> |
_attributeGroupsRelaxed
Alle Attributgruppen dieses Objekt-Typs, die in aktueller oder in zukünftiger Version gültig sind.
|
private java.util.List<AttributeGroup> |
_directAttributeGroups
Speichert die Attributgruppen, die an diesem Objekt-Typ definiert wurden.
|
private java.util.List<ObjectSetUse> |
_directObjectSetUses
Die Mengenverwendungen, die an diesem Objekt-Typ definiert wurden.
|
private java.util.List<SystemObject> |
_dynamicElementCache
_allElements ist bei dynamischen Typen ein Set, da einige Funktionen eine Liste erwarten, wird hier eine Listenkopie erstellt und gecacht
|
private java.lang.Object |
_lockObject
Objekt für den synchronisierten Zugriff auf die Elemente dieses Objekt-Typs.
|
private java.util.List<ObjectSetUse> |
_objectSetUses
Alle Mengenverwendungen dieses Objekt-Typs.
|
private java.util.List<SystemObjectType> |
_subTypes
Speichert die Sub-Typen dieses Objekt-Typs.
|
private java.util.List<SystemObjectType> |
_superTypes
Speichert die Super-Typen dieses Objekt-Typs.
|
_systemObjectInfo
Constructor and Description |
---|
ConfigSystemObjectType(ConfigurationArea configurationArea,
SystemObjectInformationInterface systemObjectInfo)
Konstruktor eines System-Objekt-Typs.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addElementToCache(DynamicObject createdObject) |
protected java.util.Collection<SystemObject> |
getAllElements()
Liefert alle aktuellen Elemente des Typs zurück.
|
java.util.List<AttributeGroup> |
getAttributeGroups()
Liefert eine Liste aller Attributgruppen, die von System-Objekten dieses Typs verwendet werden können,
zurück.
|
private java.util.Set<AttributeGroup> |
getAttributeGroupsRelaxed()
Liefert eine Liste aller aktuell gültigen und aller zukünftig gültigen Attributgruppen, die von System-Objekten dieses Typs verwendet werden können, zurück.
|
java.util.List<AttributeGroup> |
getDirectAttributeGroups()
Liefert eine Liste aller Attributgruppen, die von System-Objekten dieses Typs verwendet werden können und
nicht von einem Supertyp geerbt wurden, zurück.
|
private java.util.List<AttributeGroup> |
getDirectAttributeGroupsRelaxed()
Liefert eine Liste aller aktuell gültigen und aller zukünftig gültigen Attributgruppen, die von System-Objekten dieses Typs verwendet werden können und nicht von einem Supertyp geerbt wurden, zurück.
|
java.util.List<ObjectSetUse> |
getDirectObjectSetUses()
Liefert eine Liste von Mengen-Verwendungen dieses Typs ohne die Mengen-Verwendungen, die von Supertypen
geerbt werden.
|
java.util.List<SystemObject> |
getElements()
Bestimmt die zum aktuellen Zeitpunkt zur Zusammenstellung gehörenden Elemente.
|
java.util.List<SystemObject> |
getElements(long time)
Bestimmt die zu einem vorgegebenen Zeitpunkt zur Zusammenstellung gehörenden Elemente.
|
java.util.List<SystemObject> |
getElementsDuringPeriod(long startTime,
long endTime)
Bestimmt die Elemente, die während des gesamten angegebenen Zeitbereichs zur Zusammenstellung gehört haben.
|
java.util.List<SystemObject> |
getElementsInPeriod(long startTime,
long endTime)
Bestimmt die Elemente, die an mindestens einem Zeitpunkt des angegebenen Zeitbereichs zur Zusammenstellung gehört haben.
|
java.util.List<SystemObject> |
getObjects()
Liefert die Liste aller System-Objekte dieses Typs zurück.
|
java.util.List<ObjectSetUse> |
getObjectSetUses()
Liefert eine Liste von Mengen-Verwendungen, die Informationen zu den mit diesem Typ verwendbaren Mengen
enthalten.
|
java.util.List<SystemObjectType> |
getSubTypes()
Liefert eine Liste der Typ-Objekte die diesen Typ erweitern, also direkt von diesem Typ abgeleitet sind.
|
java.util.List<SystemObjectType> |
getSuperTypes()
Liefert eine Liste der Typ-Objekte die von diesem Typ-Objekt erweitert werden.
|
private java.util.List<SystemObjectType> |
getSuperTypesRelaxed()
Gibt alle Supertypen in der aktuell gültigen oder in zukünftig gültigen Versionen zurücl
|
boolean |
inheritsFrom(SystemObjectType other)
Prüft, ob der im Parameter angegebene Typ in der Typhierarchie oberhalb dieses Typs vorkommt.
|
(package private) void |
invalidateCache()
Wird aufgerufen, wenn das Objekt verändert wird.
|
boolean |
isBaseType()
Ermittelt, ob dieser Typ ein Basis-Typ ist.
|
boolean |
isConfigurating()
Ermittelt, ob dieser Typ ein konfigurierender Typ ist.
|
boolean |
isNameOfObjectsPermanent()
Bestimmt, ob der Name eines Objekts dieses Typs (nachdem er einmal vergeben wurde) nochmal geändert werden
kann oder nicht.
|
protected void |
removeElementFromCache(DynamicObject invalidatedObject) |
protected void |
validateAttributeGroup(AttributeGroup attributeGroup)
Hilfsmethode.
|
addSet, directDuplicate, directModification, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, invalidate, isValid, removeSet, revalidate, simpleRevalidate
checkChangePermit, createConfigurationData, equals, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationDataBytes, getId, getName, getObjectLookupForData, getPid, getSerializerVersion, getType, getUsedAttributeGroupUsages, hashCode, originalHashCode, removeConfigurationData, setConfigurationData, setConfigurationData, setName, simpleInvalidation
compareTo, getConfigurationArea, getConfigurationData, getDataModel, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, setConfigurationData, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
addSet, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, removeSet, revalidate
getConfigurationArea, getConfigurationData, getConfigurationData, getConfigurationData, getDataModel, getId, getInfo, getName, getNameOrPidOrId, getPid, getPidOrId, getPidOrNameOrId, getType, getUsedAttributeGroupUsages, invalidate, isOfType, isOfType, isValid, setConfigurationData, setConfigurationData, setConfigurationData, setName, toString
private java.util.List<SystemObjectType> _superTypes
Speichert die Super-Typen dieses Objekt-Typs.
private java.util.List<SystemObjectType> _subTypes
Speichert die Sub-Typen dieses Objekt-Typs.
private java.util.List<AttributeGroup> _directAttributeGroups
Speichert die Attributgruppen, die an diesem Objekt-Typ definiert wurden. Geerbte Attributgruppen werden hier nicht aufgeführt.
private java.util.List<AttributeGroup> _attributeGroups
Alle Attributgruppen dieses Objekt-Typs.
private java.util.Set<AttributeGroup> _attributeGroupsRelaxed
Alle Attributgruppen dieses Objekt-Typs, die in aktueller oder in zukünftiger Version gültig sind.
private java.util.List<ObjectSetUse> _directObjectSetUses
Die Mengenverwendungen, die an diesem Objekt-Typ definiert wurden. Geerbte Mengenverwendungen werden hier nicht gespeichert.
private java.util.List<ObjectSetUse> _objectSetUses
Alle Mengenverwendungen dieses Objekt-Typs.
private final java.lang.Object _lockObject
Objekt für den synchronisierten Zugriff auf die Elemente dieses Objekt-Typs.
private java.util.Collection<SystemObject> _allElements
Enthält alle aktuellen System-Objekte, die von diesem Objekt-Typ sind.
private java.util.List<SystemObject> _dynamicElementCache
_allElements ist bei dynamischen Typen ein Set, da einige Funktionen eine Liste erwarten, wird hier eine Listenkopie erstellt und gecacht
public ConfigSystemObjectType(ConfigurationArea configurationArea, SystemObjectInformationInterface systemObjectInfo)
Konstruktor eines System-Objekt-Typs.
configurationArea
- der Konfigurationsbereich dieses ObjektssystemObjectInfo
- das korrespondierende Objekt für die Dateioperationen dieses Objektspublic java.util.List<SystemObjectType> getSuperTypes()
de.bsvrz.dav.daf.main.config.SystemObjectType
getSuperTypes
in interface SystemObjectType
Typ-Objekten
private java.util.List<SystemObjectType> getSuperTypesRelaxed()
Gibt alle Supertypen in der aktuell gültigen oder in zukünftig gültigen Versionen zurücl
public java.util.List<SystemObjectType> getSubTypes()
de.bsvrz.dav.daf.main.config.SystemObjectType
getSubTypes
in interface SystemObjectType
Typ-Objekten
public java.util.List<AttributeGroup> getDirectAttributeGroups()
de.bsvrz.dav.daf.main.config.SystemObjectType
getDirectAttributeGroups
in interface SystemObjectType
Attributgruppen
private java.util.List<AttributeGroup> getDirectAttributeGroupsRelaxed()
Liefert eine Liste aller aktuell gültigen und aller zukünftig gültigen Attributgruppen, die von System-Objekten dieses Typs verwendet werden können und nicht von einem Supertyp geerbt wurden, zurück.
Attributgruppen
public java.util.List<AttributeGroup> getAttributeGroups()
de.bsvrz.dav.daf.main.config.SystemObjectType
getAttributeGroups
in interface SystemObjectType
Attributgruppen
private java.util.Set<AttributeGroup> getAttributeGroupsRelaxed()
Liefert eine Liste aller aktuell gültigen und aller zukünftig gültigen Attributgruppen, die von System-Objekten dieses Typs verwendet werden können, zurück.
Attributgruppen
public boolean isBaseType()
de.bsvrz.dav.daf.main.config.SystemObjectType
isBaseType
in interface SystemObjectType
true
, wenn der Typ ein Basis-Typ ist;false
, wenn der Typ einen
anderen Typ erweitert.public boolean isConfigurating()
de.bsvrz.dav.daf.main.config.SystemObjectType
ConfigurationObjectType
. Bei dynamischen Typen können Objekte online
erzeugt und gelöscht werden. Wenn bei konfigurierenden Typen Objekte erzeugt bzw. gelöscht werden, dann
wird die jeweilige Änderung erst mit Aktivierung der nächsten Konfigurationsversion gültig.isConfigurating
in interface SystemObjectType
true
, wenn Objekte des Typs konfigurierend sind;false
, wenn
Objekte des Typs dynamisch sind.SystemObjectType.isBaseType()
,
SystemObjectType.getSuperTypes()
,
ConfigurationObjectType
,
ConfigurationObject
public java.util.List<ObjectSetUse> getDirectObjectSetUses()
de.bsvrz.dav.daf.main.config.SystemObjectType
getDirectObjectSetUses
in interface SystemObjectType
Mengen-Verwendungen
public java.util.List<ObjectSetUse> getObjectSetUses()
de.bsvrz.dav.daf.main.config.SystemObjectType
getObjectSetUses
in interface SystemObjectType
Mengen-Verwendungen
public boolean inheritsFrom(SystemObjectType other)
de.bsvrz.dav.daf.main.config.SystemObjectType
inheritsFrom
in interface SystemObjectType
other
- Zu prüfender Typtrue
wenn dieser Typ vom angegebenen Typ erbt, sonst false
.public boolean isNameOfObjectsPermanent()
de.bsvrz.dav.daf.main.config.SystemObjectType
isNameOfObjectsPermanent
in interface SystemObjectType
true
, wenn der Name nicht geändert werden kann.false
, wenn der
Name geändert werden kann.public final java.util.List<SystemObject> getObjects()
de.bsvrz.dav.daf.main.config.SystemObjectType
getObjects
in interface SystemObjectType
System-Objekten
public java.util.List<SystemObject> getElements()
de.bsvrz.dav.daf.main.config.SystemObjectCollection
getElements
in interface SystemObjectCollection
protected java.util.Collection<SystemObject> getAllElements()
Liefert alle aktuellen Elemente des Typs zurück. Bei dynamischen Typen werden auch die in einer Simulation erzeugten Objekte zurückgeliefert.
public java.util.List<SystemObject> getElements(long time)
de.bsvrz.dav.daf.main.config.SystemObjectCollection
getElements
in interface SystemObjectCollection
time
- Zeitpunkt in Millisekunden seit 1970public java.util.List<SystemObject> getElementsInPeriod(long startTime, long endTime)
de.bsvrz.dav.daf.main.config.SystemObjectCollection
getElementsInPeriod
in interface SystemObjectCollection
startTime
- Erster Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.endTime
- Letzter Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.public java.util.List<SystemObject> getElementsDuringPeriod(long startTime, long endTime)
de.bsvrz.dav.daf.main.config.SystemObjectCollection
getElementsDuringPeriod
in interface SystemObjectCollection
startTime
- Erster Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.endTime
- Letzter Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.void invalidateCache()
ConfigConfigurationObject
Wird aufgerufen, wenn das Objekt verändert wird. Soll alle zwischengespeicherten Daten neu anfordern bzw. zurücksetzen. Erbende Klassen müssen diese Funktion überschreiben, wenn sie Daten cachen.
invalidateCache
in class ConfigConfigurationObject
protected void addElementToCache(DynamicObject createdObject)
protected void removeElementFromCache(DynamicObject invalidatedObject)
protected void validateAttributeGroup(AttributeGroup attributeGroup) throws ConfigurationChangeException
Hilfsmethode. Wirft eine Exception, wenn die angegebene Attributgruppe nicht an diesem Typ verwendet werden kann.
attributeGroup
- AttributgruppeConfigurationChangeException