Class DafObjectSet
- java.lang.Object
-
- de.bsvrz.dav.daf.main.impl.config.DafSystemObject
-
- de.bsvrz.dav.daf.main.impl.config.DafConfigurationObject
-
- de.bsvrz.dav.daf.main.impl.config.DafObjectSet
-
- All Implemented Interfaces:
ConfigurationObject
,ObjectSet
,SystemObject
,SystemObjectCollection
,java.lang.Comparable
- Direct Known Subclasses:
DafMutableSet
,DafNonMutableSet
public abstract class DafObjectSet extends DafConfigurationObject implements ObjectSet
-
-
Field Summary
Fields Modifier and Type Field Description protected long[]
_setElementIds
Die Ids der Elemente dieser Mengeprotected java.util.List<SystemObject>
_setElements
Die Elemente dieser Menge-
Fields inherited from class de.bsvrz.dav.daf.main.impl.config.DafSystemObject
_configurationAreaId, _dataModel, _internType, ASPECT, ATTRIBUTE, ATTRIBUTE_GROUP, ATTRIBUTE_GROUP_USAGE, ATTRIBUTE_LIST_TYPE, CLIENT_APPLICATION, CONFIGURATION_APPLICATION, CONFIGURATION_AREA, CONFIGURATION_AUTHORITY, CONFIGURATION_OBJECT, CONFIGURATION_OBJECT_TYPE, DAV_APPLICATION, DYNAMIC_OBJECT, DYNAMIC_OBJECT_TYPE, FLOATING_POINT_NUMBER_ATTRIBUTE_TYPE, INTEGER_ATTRIBUTE_TYPE, INTEGER_VALUE_RANGE, INTEGER_VALUE_STATE, MUTABLE_SET, NON_MUTABLE_SET, NULL_OBJECT, OBJECT_DELETED, OBJECT_EXISTS, OBJECT_INVALID, OBJECT_SET_TYPE, OBJECT_SET_USE, REFERENCE_ATTRIBUTE_TYPE, STRING_ATTRIBUTE_TYPE, SYSTEM_OBJECT_TYPE, TIME_ATTRIBUTE_TYPE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DafObjectSet(long id, java.lang.String pid, java.lang.String name, long typId, byte state, java.lang.String error, DafDataModel dataModel, short validFromVersionNumber, short validToVersionNumber, long responsibleObjectId, long[] setIds, long[] setElementIds)
Erzeugt ein neues Objekt mit den angegebenen Eigenschaftenprotected
DafObjectSet(long id, java.lang.String pid, java.lang.String name, long typId, byte state, java.lang.String error, DafDataModel dataModel, short validFromVersionNumber, short validToVersionNumber, long responsibleObjectId, long[] setIds, java.util.ArrayList<java.lang.Long> setElementIds)
Erzeugt ein neues Objekt mit den angegebenen Eigenschaftenprotected
DafObjectSet(DafDataModel dataModel)
Erzeugt ein neues Objekt dessen Eigenschaften im Anschluss mit der read-Methode eingelesen werden sollten.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
add(SystemObject object)
Erweitert die Menge um ein weiteres Element.void
add(SystemObject[] objects)
Erweitert die Menge um beliebig viele Elemente.abstract java.util.List<SystemObject>
getElements()
Bestimmt die zum aktuellen Zeitpunkt zur Zusammenstellung gehörenden Elemente.java.util.List
getElements(long time)
Bestimmt die zu einem vorgegebenen Zeitpunkt zur Zusammenstellung gehörenden Elemente.java.util.List
getElementsDuringPeriod(long startTime, long endTime)
Bestimmt die Elemente, die während des gesamten angegebenen Zeitbereichs zur Zusammenstellung gehört haben.java.util.List
getElementsInPeriod(long startTime, long endTime)
Bestimmt die Elemente, die an mindestens einem Zeitpunkt des angegebenen Zeitbereichs zur Zusammenstellung gehört haben.ObjectSetType
getObjectSetType()
Bestimmt den Typ dieser Menge.java.lang.String
parseToString()
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke zurück.void
read(Deserializer deserializer)
Deserialisiert dieses Objektvoid
read(java.io.DataInputStream in)
Deserialisiert dieses Objekt über die alte Methode.void
remove(SystemObject object)
Entfernt ein Element der Menge.void
remove(SystemObject[] objects)
Entfernt beliebige Elemente aus der Menge.void
write(java.io.DataOutputStream out)
Serialisiert dieses Objekt.-
Methods inherited from class de.bsvrz.dav.daf.main.impl.config.DafConfigurationObject
addSet, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, isValid, removeSet, revalidate
-
Methods inherited from class de.bsvrz.dav.daf.main.impl.config.DafSystemObject
compareTo, equals, getConfigurationArea, getConfigurationAreaId, getConfigurationData, getConfigurationData, getConfigurationData, getDataModel, getId, getInfo, getInternType, getName, getNameOrPidOrId, getObject, getPid, getPidOrId, getPidOrNameOrId, getState, getType, getUsedAttributeGroupUsages, hashCode, invalidate, isOfType, isOfType, setConfigurationData, setConfigurationData, setConfigurationData, setName, storeName, 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
-
-
-
-
Field Detail
-
_setElementIds
protected long[] _setElementIds
Die Ids der Elemente dieser Menge
-
_setElements
protected java.util.List<SystemObject> _setElements
Die Elemente dieser Menge
-
-
Constructor Detail
-
DafObjectSet
protected DafObjectSet(DafDataModel dataModel)
Erzeugt ein neues Objekt dessen Eigenschaften im Anschluss mit der read-Methode eingelesen werden sollten.- Parameters:
dataModel
- DataModel Implementierung, der das neue Objekt zugeordnet ist.
-
DafObjectSet
protected DafObjectSet(long id, java.lang.String pid, java.lang.String name, long typId, byte state, java.lang.String error, DafDataModel dataModel, short validFromVersionNumber, short validToVersionNumber, long responsibleObjectId, long[] setIds, java.util.ArrayList<java.lang.Long> setElementIds)
Erzeugt ein neues Objekt mit den angegebenen Eigenschaften
-
DafObjectSet
protected DafObjectSet(long id, java.lang.String pid, java.lang.String name, long typId, byte state, java.lang.String error, DafDataModel dataModel, short validFromVersionNumber, short validToVersionNumber, long responsibleObjectId, long[] setIds, long[] setElementIds)
Erzeugt ein neues Objekt mit den angegebenen Eigenschaften
-
-
Method Detail
-
parseToString
public java.lang.String parseToString()
Description copied from class:DafSystemObject
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke zurück.- Overrides:
parseToString
in classDafConfigurationObject
- Returns:
- Beschreibender Text dieses Objekts.
-
write
public void write(java.io.DataOutputStream out) throws java.io.IOException
Description copied from class:DafSystemObject
Serialisiert dieses Objekt.- Overrides:
write
in classDafConfigurationObject
- Parameters:
out
- Stream auf den das Objekt geschrieben werden soll.- Throws:
java.io.IOException
- wenn beim Schreiben auf den Ausgabe-Stream Fehler aufgetreten sind.
-
read
public void read(java.io.DataInputStream in) throws java.io.IOException
Description copied from class:DafSystemObject
Deserialisiert dieses Objekt über die alte Methode.- Overrides:
read
in classDafConfigurationObject
- Parameters:
in
- Stream von dem das Objekt gelesen werden soll.- Throws:
java.io.IOException
- wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.
-
read
public void read(Deserializer deserializer) throws java.io.IOException
Description copied from class:DafSystemObject
Deserialisiert dieses Objekt- Overrides:
read
in classDafConfigurationObject
- Parameters:
deserializer
- Deserialisierer als Datenquelle- Throws:
java.io.IOException
-
getObjectSetType
public final ObjectSetType getObjectSetType()
Description copied from interface:ObjectSet
Bestimmt den Typ dieser Menge. Der Mengentyp enthält Beschränkungen über den Typ und die Anzahl der in einer Menge enthaltenen Objekte und eine Information darüber, ob Elemente online hinzugefügt oder entfernt werden dürfen. Die Methode entspricht mit Ausnahme des Rückgabetyps der MethodeSystemObject.getType()
.- Specified by:
getObjectSetType
in interfaceObjectSet
- Returns:
- Typ der Menge
-
getElements
public abstract java.util.List<SystemObject> getElements()
Description copied from interface:SystemObjectCollection
Bestimmt die zum aktuellen Zeitpunkt zur Zusammenstellung gehörenden Elemente.- Specified by:
getElements
in interfaceSystemObjectCollection
- Returns:
- Liste mit den aktuell zur Zusammenstellung gehörenden System-Objekten.
-
getElements
public java.util.List getElements(long time)
Description copied from interface:SystemObjectCollection
Bestimmt die zu einem vorgegebenen Zeitpunkt zur Zusammenstellung gehörenden Elemente. Nicht dynamische Mengen mit Referenzierungsart Komposition oder Aggregation liefern immer alle Elemente der Menge zurück.- Specified by:
getElements
in interfaceSystemObjectCollection
- Parameters:
time
- Zeitpunkt in Millisekunden seit 1970- Returns:
- Liste mit den zum angegebenen Zeitpunkt zur Zusammenstellung gehörenden System-Objekten.
-
getElementsInPeriod
public java.util.List getElementsInPeriod(long startTime, long endTime)
Description copied from interface:SystemObjectCollection
Bestimmt die Elemente, die an mindestens einem Zeitpunkt des angegebenen Zeitbereichs zur Zusammenstellung gehört haben. Nicht dynamische Mengen mit Referenzierungsart Komposition oder Aggregation liefern immer alle Elemente der Menge zurück.- Specified by:
getElementsInPeriod
in interfaceSystemObjectCollection
- Parameters:
startTime
- Erster Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.endTime
- Letzter Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.- Returns:
- Liste mit den zu mindestens einem Zeitpunkt des Zeitbereichs zur Zusammenstellung gehörenden System-Objekten.
-
getElementsDuringPeriod
public java.util.List getElementsDuringPeriod(long startTime, long endTime)
Description copied from interface:SystemObjectCollection
Bestimmt die Elemente, die während des gesamten angegebenen Zeitbereichs zur Zusammenstellung gehört haben. Nicht dynamische Mengen mit Referenzierungsart Komposition oder Aggregation liefern immer alle Elemente der Menge zurück.- Specified by:
getElementsDuringPeriod
in interfaceSystemObjectCollection
- Parameters:
startTime
- Erster Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.endTime
- Letzter Zeitpunkt des Zeitbereichs in Millisekunden seit 1970.- Returns:
- Liste mit den während des gesamten Zeitbereichs zur Zusammenstellung gehörenden System-Objekten.
-
add
public void add(SystemObject object) throws ConfigurationChangeException
Description copied from interface:ObjectSet
Erweitert die Menge um ein weiteres Element. Wenn das angegebene Element schon in der Menge enthalten ist, dann wird die Menge nicht verändert. Wenn der Typ des angegebenen System-Objekts in der Menge nicht erlaubt ist, wird die Menge nicht verändert und eine Ausnahme generiert. Wenn bei online änderbaren Mengen die maximale Anzahl von Objekten bereits erreicht ist, wird die Menge nicht verändert und eine Ausnahme generiert. Wenn die Menge nicht online änderbar ist, dann wird das neue Element erst mit Aktivierung der nächsten Konfigurationsversion in die Menge aufgenommen.- Specified by:
add
in interfaceObjectSet
- Parameters:
object
- Das System-Objekt, das der Menge hinzugefügt werden soll.- Throws:
ConfigurationChangeException
- Wenn das übergebene Objekt nicht in die Menge aufgenommen werden konnte und noch nicht in der Menge enthalten war.
-
add
public final void add(SystemObject[] objects) throws ConfigurationChangeException
Description copied from interface:ObjectSet
Erweitert die Menge um beliebig viele Elemente. Sind angegebene Elemente bereits in der Menge, so werden sie ignoriert. Ausnahmen werden generiert, u.a. wenn der Typ eines angegebenen System-Objekts in der Menge nicht erlaubt ist und wenn bei online änderbaren Mengen die maximale Anzahl von Objekten überschritten wird. Bei Ausnahmen wird die Menge nicht verändert. Wenn die Menge nicht online änderbar ist, dann werden die neuen Elemente erst mit Aktivierung der nächsten Konfigurationsversion in die Menge aufgenommen.- Specified by:
add
in interfaceObjectSet
- Parameters:
objects
- Die System-Objekte, die der Menge hinzugefügt werden sollen.- Throws:
ConfigurationChangeException
- Wenn eines der übergebenen Objekte nicht in die Menge aufgenommen werden konnte und noch nicht in der Menge enthalten war.
-
remove
public void remove(SystemObject object) throws ConfigurationChangeException
Description copied from interface:ObjectSet
Entfernt ein Element der Menge. Wenn das Element nicht in der Menge enthalten ist, wird eine Ausnahme generiert. Wenn bei online änderbaren Mengen die minimale Anzahl von Objekten bereits erreicht ist, wird das Element nicht aus der Menge entfernt und eine Ausnahme generiert. Bei nicht online änderbaren Mengen wird das gegebene Element erst mit Aktivierung der nächsten Konfigurationsversion aus der Menge entfernt.- Specified by:
remove
in interfaceObjectSet
- Parameters:
object
- Das System-Objekt, das aus der Menge entfernt werden soll.- Throws:
ConfigurationChangeException
- Wenn das übergebene Objekt nicht aus der Menge entfernt werden konnte.
-
remove
public final void remove(SystemObject[] objects) throws ConfigurationChangeException
Description copied from interface:ObjectSet
Entfernt beliebige Elemente aus der Menge. Ausnahmen werden generiert, u.a. wenn ein Element nicht in der Menge enthalten ist und wenn bei online änderbaren Mengen die minimale Anzahl von Objekten bereits erreicht ist. Bei Ausnahmen wird die Menge nicht verändert. Bei nicht online änderbaren Mengen werden die angegebenen Elemente erst mit Aktivierung der nächsten Konfigurationsversion aus der Menge entfernt.- Specified by:
remove
in interfaceObjectSet
- Parameters:
objects
- Die System-Objekte, die aus der Menge entfernt werden sollen.- Throws:
ConfigurationChangeException
- Wenn eines der übergebenen Objekte nicht aus der Menge entfernt werden konnte.
-
-