de.bsvrz.dav.daf.main.impl.config.request
Class RemoteDynamicObject

java.lang.Object
  extended by de.bsvrz.dav.daf.main.impl.config.request.RemoteDynamicObject
All Implemented Interfaces:
ConfigurationCommunicationInterface, DynamicObject, SystemObject, Comparable

public class RemoteDynamicObject
extends Object
implements DynamicObject

Klasse, die noch zu dokumentieren ist.

Author:
Roland Schmitz (rs), Kappich Systemberatung, Stephan Homeyer (sth), Kappich Systemberatung

Constructor Summary
RemoteDynamicObject(DataModel dataModel, long id, long typeId, String pid, String name, boolean valid, long validSince, long notValidSince, long configAreaId)
           
 
Method Summary
 void addConfigurationCommunicationChangeListener(ConfigurationCommunicationChangeListener listener)
          Meldet einen Beobachter für die Zustandsänderungen der Kommunikation mit der verwaltenden Konfigurationen dieses Objekts an.
 void addListenerForInvalidation(InvalidationListener listener)
          Methode zum Anmelden auf die Invalidierung des dynamischen Objekts.
 int compareTo(Object o)
          Compares this object with the specified object for order.
 ConfigurationArea getConfigurationArea()
          Liefert den Konfigurationsbereich, zu dem dieses Objekt gehört, zurück.
 Data getConfigurationData(AttributeGroup atg)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 Data getConfigurationData(AttributeGroup atg, Aspect asp)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 Data getConfigurationData(AttributeGroupUsage atgUsage)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 DataModel getDataModel()
          Liefert das zu diesem Objekt gehörende Datenmodell zurück.
 long getId()
          Liefert die Objekt-ID des System-Objekts zurück.
 SystemObjectInfo getInfo()
          Liefert ein Objekt mit beschreibenden Informationen zu diesem Objekt zurück.
 String getName()
          Liefert den Namen dieses Objekts zurück.
 String getNameOrPidOrId()
          Liefert eine Bezeichnung für dieses Objekt zurück.
 long getNotValidSince()
          Liefert den Zeitpunkt ab dem dieses dynamische Objekt nicht mehr gültig ist.
protected  String getParamString()
           
 String getPid()
          Liefert die permanente ID (PID) dieses Objekts zurück.
 String getPidOrId()
          Liefert eine Bezeichnug für dieses Objekt zurück.
 String getPidOrNameOrId()
          Liefert eine Bezeichnung für dieses Objekt zurück.
 SystemObjectType getType()
          Liefert den Typ dieses System-Objekts zurück.
protected  String getTypeString()
           
 Collection<AttributeGroupUsage> getUsedAttributeGroupUsages()
          Liefert alle Attributgruppenverwendungen zurück, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.
 long getValidSince()
          Liefert den Zeitpunkt ab dem dieses dynamische Objekt gültig geworden ist.
 void invalidate()
          Löscht das Objekt, indem es ungültig gemacht wird.
 boolean isConfigurationCommunicationActive()
          Gibt an, ob die Kommunikation mit der verwaltenden Konfiguration dieses Objekts aktiv ist.
 boolean isOfType(String typePid)
          Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist.
 boolean isOfType(SystemObjectType type)
          Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist.
 boolean isValid()
          Bestimmt, ob dieses Objekt zum aktuellen Zeitpunkt gültig ist.
 void removeConfigurationCommunicationChangeListener(ConfigurationCommunicationChangeListener listener)
          Meldet einen Beobachter für die Zustandsänderungen dieser Kommunikation wieder ab.
 void removeListenerForInvalidation(InvalidationListener listener)
          Methode zum Abmelden auf die Invalidierung des dynamischen Objekts.
 void setConfigurationData(AttributeGroup atg, Aspect asp, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setConfigurationData(AttributeGroup atg, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setConfigurationData(AttributeGroupUsage atgUsage, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setName(String name)
          Setzt den Namen dieses Objekts.
 void setPid(String pid)
          Setzt die permanente ID (PID) dieses Objekts.
 String toString()
          Liefert eine textuelle Beschreibung dieses Objekts zurück.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RemoteDynamicObject

public RemoteDynamicObject(DataModel dataModel,
                           long id,
                           long typeId,
                           String pid,
                           String name,
                           boolean valid,
                           long validSince,
                           long notValidSince,
                           long configAreaId)
Method Detail

getValidSince

public long getValidSince()
Liefert den Zeitpunkt ab dem dieses dynamische Objekt gültig geworden ist.

Specified by:
getValidSince in interface DynamicObject
Returns:
Zeit in Millisekunden seit 1970.

getNotValidSince

public long getNotValidSince()
Liefert den Zeitpunkt ab dem dieses dynamische Objekt nicht mehr gültig ist.

Specified by:
getNotValidSince in interface DynamicObject
Returns:
Zeit in Millisekunden seit 1970.

addListenerForInvalidation

public void addListenerForInvalidation(InvalidationListener listener)
Methode zum Anmelden auf die Invalidierung des dynamischen Objekts. Sobald das dynamische Objekt auf invalid gesetzt wird, werden alle angemeldeten Listener informiert.

Specified by:
addListenerForInvalidation in interface DynamicObject
Parameters:
listener - Listener, der informiert wird, sobald das dynamische Objekt auf invalid gesetzt wird.

removeListenerForInvalidation

public void removeListenerForInvalidation(InvalidationListener listener)
Methode zum Abmelden auf die Invalidierung des dynamischen Objekts.

Specified by:
removeListenerForInvalidation in interface DynamicObject
Parameters:
listener - Listener, der nicht mehr informiert werden soll, sobald das dynamische Objekt auf invalid gesetzt wird.

getId

public long getId()
Liefert die Objekt-ID des System-Objekts zurück.

Specified by:
getId in interface SystemObject
Returns:
ID dieses System-Objekts oder 0, wenn das Objekt keine ID hat.

getType

public SystemObjectType getType()
                         throws ConfigurationException
Liefert den Typ dieses System-Objekts zurück.

Specified by:
getType in interface SystemObject
Returns:
Typ dieses System-Objekts.
Throws:
ConfigurationException - Wenn bei der Kommunikation mit der Konfiguration Fehler aufgetreten sind.

isOfType

public boolean isOfType(SystemObjectType type)
                 throws ConfigurationException
Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist. Ein System-Objekt ist Element des Objekt-Typs, der von der Methode getType() zurückgeliefert wird. Außerdem ist das Objekt ein Element von den direkten und indirekten Super-Typen des Objekt-Typs.

Specified by:
isOfType in interface SystemObject
Parameters:
type - Zu prüfender Typ.
Returns:
true, wenn der übergebene Typ mit dem Objekt-Typ oder mit einem der direkten oder indirekten Vorgänger in der Vererbungshierarchie übereinstimmt; sonst false.
Throws:
ConfigurationException - Wenn bei der Kommunikation mit der Konfiguration Fehler aufgetreten sind.

isOfType

public boolean isOfType(String typePid)
                 throws ConfigurationException
Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist. Ein System-Objekt ist Element des Objekt-Typs, der von der Methode getType() zurückgeliefert wird. Außerdem ist das Objekt ein Element von den direkten und indirekten Super-Typen des Objekt-Typs.

Specified by:
isOfType in interface SystemObject
Parameters:
typePid - PID des zu prüfenden Typs.
Returns:
true, wenn der übergebene Typ mit dem Objekt-Typ oder mit einem der direkten oder indirekten Vorgänger in der Vererbungshierarchie übereinstimmt; sonst false.
Throws:
ConfigurationException - Wenn bei der Kommunikation mit der Konfiguration Fehler aufgetreten sind.

getPid

public String getPid()
Liefert die permanente ID (PID) dieses Objekts zurück. Wenn das Objekt keine PID hat, wird ein leerer String zurückgegeben.

Specified by:
getPid in interface SystemObject
Returns:
PID des System-Objekts oder einen leeren String, wenn das Objekt keine PID hat.

setPid

public void setPid(String pid)
            throws ConfigurationException
Setzt die permanente ID (PID) dieses Objekts. Zu beachten ist, daß die PID eines Objektes, wenn sie einmal vergeben wurde, nicht mehr geändert werden kann.

Parameters:
pid - Neue PID des Objektes.
Throws:
ConfigurationException - Wenn die PID des Objektes nicht geändert werden konnte.

getName

public String getName()
Liefert den Namen dieses Objekts zurück. Wenn das Objekt keinen Namen hat, wird null zurückgegeben.

Specified by:
getName in interface SystemObject
Returns:
Name des System-Objekts oder null, wenn das Objekt keinen Namen hat.

setName

public void setName(String name)
             throws ConfigurationException
Setzt den Namen dieses Objekts.

Specified by:
setName in interface SystemObject
Parameters:
name - Neuer Name des Objekts.
Throws:
ConfigurationException - Wenn der Name des Objektes nicht geändert werden konnte.
See Also:
SystemObjectType.isNameOfObjectsPermanent()

getNameOrPidOrId

public String getNameOrPidOrId()
Liefert eine Bezeichnung für dieses Objekt zurück. Wenn dieses Objekt einen nicht leeren Namen hat, wird dieser zurückgegeben. Ansonsten wird (falls vorhanden) die PID des Objekts zurückgeben. Wenn die PID auch nicht vorhanden ist, wird die ID des Objekts zurückgegeben.

Specified by:
getNameOrPidOrId in interface SystemObject
Returns:
Text, der den Namen die PID oder die ID des System-Objekts enthält.

getPidOrNameOrId

public String getPidOrNameOrId()
Liefert eine Bezeichnung für dieses Objekt zurück. Wenn dieses Objekt eine nicht leere PID hat, wird diese zurückgegeben. Ansonsten wird (falls vorhanden) der Name des Objekts zurückgegeben. Wenn der Name auch nicht vorhanden ist, wird die ID des Objekts zurückgegeben.

Specified by:
getPidOrNameOrId in interface SystemObject
Returns:
Text, der die PID, den Namen oder die ID des System-Objekts enthält.

getPidOrId

public String getPidOrId()
Liefert eine Bezeichnug für dieses Objekt zurück. Wenn dieses Objekt eine nicht leere PID hat, wird diese zurückgegeben. Ansonsten wird die ID des Objekts zurückgegeben.

Specified by:
getPidOrId in interface SystemObject
Returns:
Text, der die PID oder die ID des System-Objekts enthält.

isValid

public boolean isValid()
                throws ConfigurationException
Bestimmt, ob dieses Objekt zum aktuellen Zeitpunkt gültig ist. Konfigurierende System-Objekte sind nach deren Erzeugung noch nicht gültig, sondern werden erst mit der Aktivierung der nächsten Konfigurationsversion gültig. Nach dem Löschen eines Konfigurationsobjekts bleibt es bis zur Aktivierung der nächsten Konfigurationsversion gültig. Dynamische Objekte werden sofort mit deren Erzeugung gültig und mit dem Löschen ungültig.

Specified by:
isValid in interface SystemObject
Returns:
true, falls das Objekt gültig ist; false, falls das Objekt nicht gültig ist.
Throws:
ConfigurationException - Wenn bei der Kommunikation mit der Konfiguration Fehler aufgetreten sind.

invalidate

public void invalidate()
                throws ConfigurationException
Löscht das Objekt, indem es ungültig gemacht wird. Dynamische System-Objekte werden sofort ungültig. Bereits gültige konfigurierende System-Objekte werden mit Aktivierung der nächsten Konfigurationsversion ungültig. Für historische Anfragen bleiben ungültige Objekte nach wie vor existent. Konfigurierende System-Objekte, die noch nie gültig waren, werden durch diese Methode gelöscht und sind nicht mehr zugreifbar.

Specified by:
invalidate in interface SystemObject
Throws:
ConfigurationException - Wenn das Objekt nicht ungültig gemacht werden konnte.

getDataModel

public DataModel getDataModel()
Liefert das zu diesem Objekt gehörende Datenmodell zurück.

Specified by:
getDataModel in interface SystemObject
Returns:
Datenmodell des Objekts.

getConfigurationData

public Data getConfigurationData(AttributeGroup atg)
                          throws ConfigurationException
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.

Specified by:
getConfigurationData in interface SystemObject
Parameters:
atg - Attributgruppe des gewünschten Datensatzes.
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppe oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.
Throws:
ConfigurationException - Wenn bei der Kommunikation mit der Konfiguration Fehler aufgetreten sind.
See Also:
SystemObject.getConfigurationData(AttributeGroup,Aspect)

getConfigurationData

public Data getConfigurationData(AttributeGroup atg,
                                 Aspect asp)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.

Specified by:
getConfigurationData in interface SystemObject
Parameters:
atg - Attributgruppe des gewünschten Datensatzes.
asp - Aspekt des gewünschten Datensatzes.
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppe oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.

getConfigurationData

public Data getConfigurationData(AttributeGroupUsage atgUsage)
Description copied from interface: SystemObject
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.

Specified by:
getConfigurationData in interface SystemObject
Parameters:
atgUsage - Attributgruppenverwendung des gewünschten Datensatzes
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppenverwendung oder null, wenn das Objekt keinen Datensatz zu der angegebenen Attributgruppenverwendung hat.

setConfigurationData

public void setConfigurationData(AttributeGroup atg,
                                 Data data)
                          throws ConfigurationException
Ändert einen konfigurierenden Datensatz dieses Objekts.

Specified by:
setConfigurationData in interface SystemObject
Parameters:
atg - Attributgruppe des zu ändernden Datensatzes
data - Neuer Datensatz
Throws:
ConfigurationException - Wenn der nicht geändert werden konnte.

setConfigurationData

public void setConfigurationData(AttributeGroup atg,
                                 Aspect asp,
                                 Data data)
                          throws ConfigurationChangeException
Description copied from interface: SystemObject
Ändert einen konfigurierenden Datensatz dieses Objekts.

Specified by:
setConfigurationData in interface SystemObject
Parameters:
atg - Attributgruppe des zu ändernden Datensatzes
asp - Aspekt des zu ändernden Datensatzes
data - Der neue Datensatz. Wird null angegeben, wird der Datensatz am Objekt gelöscht.
Throws:
ConfigurationChangeException - Wenn der Datensatz nicht geändert werden konnte.

setConfigurationData

public void setConfigurationData(AttributeGroupUsage atgUsage,
                                 Data data)
                          throws ConfigurationChangeException
Description copied from interface: SystemObject
Ändert einen konfigurierenden Datensatz dieses Objekts.

Specified by:
setConfigurationData in interface SystemObject
Parameters:
atgUsage - Attributgruppenverwendung des zu ändernden Datensatzes
data - Der neue Datensatz. Wird null angegeben, wird der Datensatz am Objekt gelöscht.
Throws:
ConfigurationChangeException - Wenn der Datensatz nicht geändert werden konnte.

getUsedAttributeGroupUsages

public Collection<AttributeGroupUsage> getUsedAttributeGroupUsages()
Description copied from interface: SystemObject
Liefert alle Attributgruppenverwendungen zurück, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.

Specified by:
getUsedAttributeGroupUsages in interface SystemObject
Returns:
Alle Attributgruppenverwendungen, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.

getInfo

public SystemObjectInfo getInfo()
Liefert ein Objekt mit beschreibenden Informationen zu diesem Objekt zurück.

Specified by:
getInfo in interface SystemObject
Returns:
Objekt mit beschreibenden Informationen.

getConfigurationArea

public ConfigurationArea getConfigurationArea()
Liefert den Konfigurationsbereich, zu dem dieses Objekt gehört, zurück.

Specified by:
getConfigurationArea in interface SystemObject
Returns:
Konfigurationsbereich dieses Objekts.

compareTo

public int compareTo(Object o)
Compares this object with the specified object for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.

In the foregoing description, the notation sgn(expression) designates the mathematical signum function, which is defined to return one of -1, 0, or 1 according to whether the value of expression is negative, zero or positive.

The implementor must ensure sgn(x.compareTo(y)) == -sgn(y.compareTo(x)) for all x and y. (This implies that x.compareTo(y) must throw an exception iff y.compareTo(x) throws an exception.)

The implementor must also ensure that the relation is transitive: (x.compareTo(y)>0 && y.compareTo(z)>0) implies x.compareTo(z)>0.

Finally, the implementer must ensure that x.compareTo(y)==0 implies that sgn(x.compareTo(z)) == sgn(y.compareTo(z)), for all z.

It is strongly recommended, but not strictly required that (x.compareTo(y)==0) == (x.equals(y)). Generally speaking, any class that implements the Comparable interface and violates this condition should clearly indicate this fact. The recommended language is "Note: this class has a natural ordering that is inconsistent with equals."

Specified by:
compareTo in interface Comparable
Parameters:
o - the Object to be compared.
Returns:
a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.
Throws:
ClassCastException - if the specified object's type prevents it from being compared to this Object.

toString

public String toString()
Description copied from interface: SystemObject
Liefert eine textuelle Beschreibung dieses Objekts zurück. Das genaue Format ist nicht festgelegt und kann sich ändern.

Specified by:
toString in interface SystemObject
Overrides:
toString in class Object
Returns:
Beschreibung dieses Objekts.

getParamString

protected String getParamString()

getTypeString

protected String getTypeString()

addConfigurationCommunicationChangeListener

public void addConfigurationCommunicationChangeListener(ConfigurationCommunicationChangeListener listener)
Description copied from interface: ConfigurationCommunicationInterface
Meldet einen Beobachter für die Zustandsänderungen der Kommunikation mit der verwaltenden Konfigurationen dieses Objekts an. Bei Änderungen wird die Methode ConfigurationCommunicationChangeListener.configurationCommunicationChange(ConfigurationCommunicationInterface, boolean) des angegebenen Beobachters aufgerufen.

Specified by:
addConfigurationCommunicationChangeListener in interface ConfigurationCommunicationInterface
Parameters:
listener - Beobachter für Zustandsänderungen der Kommunikation.

removeConfigurationCommunicationChangeListener

public void removeConfigurationCommunicationChangeListener(ConfigurationCommunicationChangeListener listener)
Description copied from interface: ConfigurationCommunicationInterface
Meldet einen Beobachter für die Zustandsänderungen dieser Kommunikation wieder ab.

Specified by:
removeConfigurationCommunicationChangeListener in interface ConfigurationCommunicationInterface
Parameters:
listener - Ein bisher für Zustandsänderungen der Kommunikation angemeldeter Beobachter.

isConfigurationCommunicationActive

public boolean isConfigurationCommunicationActive()
Description copied from interface: ConfigurationCommunicationInterface
Gibt an, ob die Kommunikation mit der verwaltenden Konfiguration dieses Objekts aktiv ist.

Specified by:
isConfigurationCommunicationActive in interface ConfigurationCommunicationInterface
Returns:
true bedeutet, dass die Kommunikation aktiv ist und false zeigt an, dass die Kommunikation unterbrochen ist