de.bsvrz.puk.config.main.dataview
Class VersionedView

java.lang.Object
  extended by de.bsvrz.puk.config.main.dataview.VersionedView
All Implemented Interfaces:
ObjectLookup

public class VersionedView
extends Object
implements ObjectLookup

Klasse zum Zugriff auf Konfigurationdaten, bei der für jeden Konfigurationsbereich eine bestimmte vorgegebene Version berücksichtigt wird. Beim Erzeugen des Objekts wird dem Konstruktor mitgeteilt, welcher Konfigurationsbereich in welcher Version zu betrachten ist. Alle Abfragemethoden berücksichtigen dann die angegebenen Versionen.

Author:
Roland Schmitz (rs), Kappich Systemberatung

Constructor Summary
VersionedView(DataModel dataModel, Map<ConfigurationArea,Short> configurationAreaVersions)
           
 
Method Summary
 List<ObjectSetUse> getDirectObjectSetUses(SystemObjectType type)
           
 Collection<SystemObject> getElements(ObjectSet set)
          Bestimmt die Elemente der angegebenen Menge
 SystemObject getObject(long id)
          Liefert das System-Objekt mit der angegebenen Objekt-ID zurück.
 SystemObject getObject(String pid)
          Liefert das System-Objekt mit der angegebenen PID zurück.
 List<ObjectSetUse> getObjectSetUses(SystemObjectType type)
           
 Collection<SystemObjectType> getSuperTypes(SystemObjectType type)
          Liefert eine Liste der Typ-Objekte die von dem angegebenen Typ-Objekt erweitert werden.
 short getVersion(SystemObject object)
          Bestimmt die betrachtete Version des Konfigurationsbereichs in dem das angegebene Objekt enthalten ist.
 boolean inheritsFrom(SystemObjectType derivedType, SystemObjectType ancestorType)
          Prüft, ob der angegebene Typ ancestorType in der Typhierarchie oberhalb angegebenen Typs derivedType vorkommt.
 boolean isOfType(SystemObject object, SystemObjectType ancestorType)
          Bestimmt, ob das angegebene System-Objekt ein Element des angegebenen Typs ist.
 boolean isValid(SystemObject object)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VersionedView

public VersionedView(DataModel dataModel,
                     Map<ConfigurationArea,Short> configurationAreaVersions)
Method Detail

isOfType

public boolean isOfType(SystemObject object,
                        SystemObjectType ancestorType)
Bestimmt, ob das angegebene System-Objekt ein Element des angegebenen Typs ist. Ein System-Objekt ist Element des Typs, wenn der Typ des Objekts mit dem angegebenen Typ übereinstimmt oder diesen erweitert.

Parameters:
object - Zu prüfendes Objekt.
ancestorType - Zu prüfender Typ.
Returns:
true, wenn der übergebene Typ mit dem Typ des Objekts oder mit einem der direkten oder indirekten Vorgänger in der Vererbungshierarchie übereinstimmt; sonst false.

inheritsFrom

public boolean inheritsFrom(SystemObjectType derivedType,
                            SystemObjectType ancestorType)
Prüft, ob der angegebene Typ ancestorType in der Typhierarchie oberhalb angegebenen Typs derivedType vorkommt. Dies ist dann der Fall, wenn derivedType direkt oder indirekt ancestorType erweitert und damit dessen Eigenschaften erbt.

Parameters:
derivedType - Zu prüfender abgeleiteter Typ
ancestorType - Zu prüfender übergeordneter Typ
Returns:
true wenn derivedType direkt oder indirekt ancestorType erweitert, sonst false.

getSuperTypes

public Collection<SystemObjectType> getSuperTypes(SystemObjectType type)
Liefert eine Liste der Typ-Objekte die von dem angegebenen Typ-Objekt erweitert werden.

Returns:
Liste von Typ-Objekten

getDirectObjectSetUses

public List<ObjectSetUse> getDirectObjectSetUses(SystemObjectType type)

getObjectSetUses

public List<ObjectSetUse> getObjectSetUses(SystemObjectType type)

getElements

public Collection<SystemObject> getElements(ObjectSet set)
Bestimmt die Elemente der angegebenen Menge

Parameters:
set - Zu betrachtende Menge.
Returns:
Elemente der Menge.

getVersion

public short getVersion(SystemObject object)
Bestimmt die betrachtete Version des Konfigurationsbereichs in dem das angegebene Objekt enthalten ist.

Parameters:
object - Systemobjekt zu dem die Version ermittelt werden soll.
Returns:
Version des Konfigurationsbereichs des angegebenen Systemobjekts

getObject

public SystemObject getObject(String pid)
Liefert das System-Objekt mit der angegebenen PID zurück.

Specified by:
getObject in interface ObjectLookup
Parameters:
pid - Die permanente ID des System-Objekts
Returns:
Das gewünschte System-Objekt oder null, wenn es kein Objekt mit der angegebenen PID gibt.
See Also:
DataModel

isValid

public boolean isValid(SystemObject object)

getObject

public SystemObject getObject(long id)
Liefert das System-Objekt mit der angegebenen Objekt-ID zurück.

Specified by:
getObject in interface ObjectLookup
Parameters:
id - Die Objekt-ID des System-Objekts
Returns:
Das gewünschte System-Objekt oder null, wenn es kein Objekt mit der angegebenen ID gibt.
See Also:
DataModel