Class SystemObjectInformation

java.lang.Object
de.bsvrz.puk.config.configFile.fileaccess.SystemObjectInformation
All Implemented Interfaces:
SystemObjectInformationInterface
Direct Known Subclasses:
ConfigurationObjectInformation, DynamicObjectInformation

public abstract class SystemObjectInformation
extends java.lang.Object
implements SystemObjectInformationInterface
  • Field Details

    • _saveModifications

      protected boolean _saveModifications
      Speicher ob Modifikationen gespeichert werden sollen. Beim laden darf das Objekt nicht automatisch gespeichert werden.
  • Constructor Details

    • SystemObjectInformation

      public SystemObjectInformation​(long id, java.lang.String pid, long typeId, java.lang.String name, ConfigAreaFile configAreaFile, boolean saveModifications) throws java.lang.IllegalArgumentException
      Parameters:
      id - Id des Objekts
      pid - Pid des Objekts, diese muss ISO-8859-1 konform sein
      typeId - Tye des Objekts, der Type wird über die Id identifiziert
      name - Name des Objekts, null wird als "" interpretiert
      configAreaFile - Objekt, das die Datei verwaltet, in dem dieses Objekt gespeichert ist/wird
      saveModifications - true = Das Objekt wird angelegt und in die Datei des Konfigurationsbereichs später gespeichert, werden Änderungen vorgenommen (Datensätze geändert, usw), so werden die Änderungen gespeichert; false = Das Objekt wird angelegt und nicht gespeichert (beim laden des Objekts aus der Datei wäre dies sinnvoll), auch Modifikationen am Objekt werden nicht gespeichert, damit gespeichert wird muss saveObjectModifications() aufgerufen werden
      Throws:
      java.lang.IllegalArgumentException - Die Pid ist nicht ISO-8859-1 konform
  • Method Details

    • saveObjectModifications

      public void saveObjectModifications()
      Diese Methode wird aufgerufen, wenn ein Objekt aus der Datei eingeladen wurde und im Konstruktor saveModifications == false übergeben wurde. Nach Aufruf dieser Methode, werden alle Änderungen wieder gespeichert. Wurde also saveModifications == false gesetzt, so muss diese Methode aufgerufen werden, damit neue Änderungen gespeichert werden.
    • getID

      public long getID()
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt die ID des Objekts zurück.
      Specified by:
      getID in interface SystemObjectInformationInterface
      Returns:
      s.o.
    • getPid

      public java.lang.String getPid()
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt die Pid des Objekts zurück.
      Specified by:
      getPid in interface SystemObjectInformationInterface
      Returns:
      s.o.
    • getTypeId

      public long getTypeId()
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt den Typ des Objekts als ID zurück.
      Specified by:
      getTypeId in interface SystemObjectInformationInterface
      Returns:
      ID, die den Typ des Objekts wiederspiegelt
    • getName

      public java.lang.String getName()
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt den Namen des Objekts zurück, wurde kein Name festgelegt wird ein leerer String "" zurückgegeben.
      Specified by:
      getName in interface SystemObjectInformationInterface
      Returns:
      s.o.
    • setName

      public void setName​(java.lang.String newName)
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode legt den Namen eines Objekts fest, besitzt das Objekt bereits einen Namen, so wird dieser überschrieben.
      Specified by:
      setName in interface SystemObjectInformationInterface
      Parameters:
      newName - Neuer Name des Objekts
    • getConfigurationsDataAttributeGroupUsageIds

      public long[] getConfigurationsDataAttributeGroupUsageIds()
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt die Attributgruppenverwendungs-IdŽs aller konfigurierenden Datensätze zurück, die an diesem Objekt mit SystemObjectInformationInterface.setConfigurationData(long, byte[]) abgelegt wurden.
      Specified by:
      getConfigurationsDataAttributeGroupUsageIds in interface SystemObjectInformationInterface
      Returns:
      Wenn keine IdŽs zur Verfügung stehen, wird ein leeres Array zurückgegeben
    • getConfigurationData

      public byte[] getConfigurationData​(long attributeGroupUsageId)
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt einen konfigurierenden Datensatz zurück, der am Objekt gespeichert ist. Der Datensatz wird über die ID seiner Attributgruppenverwendung identifiziert.
      Specified by:
      getConfigurationData in interface SystemObjectInformationInterface
      Parameters:
      attributeGroupUsageId - ID der Attributgruppenverwendung des gewünschten konfigurierenden Datensatzes
      Returns:
      konfigurierender Datensatz, der am Objekt gespeichert ist
    • getConfigurationDataOptional

      public byte[] getConfigurationDataOptional​(long attributeGroupUsageId)
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode gibt einen konfigurierenden Datensatz zurück, der am Objekt gespeichert ist. Der Datensatz wird über die ID seiner Attributgruppenverwendung identifiziert.
      Specified by:
      getConfigurationDataOptional in interface SystemObjectInformationInterface
      Parameters:
      attributeGroupUsageId - ID der Attributgruppenverwendung des gewünschten konfigurierenden Datensatzes
      Returns:
      konfigurierender Datensatz, der am Objekt gespeichert ist oder null falls kein Datensatz vorhanden
    • setConfigurationData

      public void setConfigurationData​(long attributeGroupUsageId, byte[] data) throws java.lang.IllegalStateException
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode speichert einen konfigurierenden Datensatz am Objekt. Ist bereits ein Datensatz unter der attributeGroupUsageId gespeichert wird dieser überschrieben.
      Specified by:
      setConfigurationData in interface SystemObjectInformationInterface
      Parameters:
      attributeGroupUsageId - ID der Attributgruppenverwendung zu dem der konfigurierende Datensatz gehört
      data - serialisierter Datensatz, siehe auch ConfigurationAreaFile.getSerializerVersion(). Wenn das byte-Array die Länge 0 hat oder null ist wird der Datensatz gelöscht.
      Throws:
      java.lang.IllegalStateException - Falls objekt bereits gelöscht.
    • removeConfigurationData

      public void removeConfigurationData​(long attributeGroupUsageId)
      Description copied from interface: SystemObjectInformationInterface
      Diese Methode entfernt einen konfigurierenden Datensatz, der mit SystemObjectInformationInterface.setConfigurationData(long, byte[]) hinzugefügt wurde.
      Specified by:
      removeConfigurationData in interface SystemObjectInformationInterface
      Parameters:
      attributeGroupUsageId - Id der Attributgruppenverwendung zu dem der konfigurierende Datensatz gehört, der entfernt werden soll
    • getReference

      public java.lang.Object getReference()
      Gibt ein Objekt zurück, das mit setReference(java.lang.Object) gesetzt wurde. Wurde noch kein Objekt gesetzt, wird null zurückgegeben
      Returns:
      Objektreferenz oder null
    • setReference

      public void setReference​(java.lang.Object newReference)
      Setzt ein Objekt, das mit getReference() angefordert werden kann
      Parameters:
      newReference - s.o.
    • getConfigurationAreaFile

      public ConfigurationAreaFile getConfigurationAreaFile()
      Diese Methode gibt das Objekt zurück, das einen Konfigurationsbereich physisch auf einem Datenträger speichert.
      Returns:
      s.o.
    • equals

      public boolean equals​(java.lang.Object o)
      Overrides:
      equals in class java.lang.Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class java.lang.Object
    • getLastFilePosition

      public abstract FilePointer getLastFilePosition()
    • setLastFilePosition

      public abstract void setLastFilePosition​(FilePointer lastFilePosition)
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object