Class DafDataModel

    • Field Detail

      • MAX_PROTOCOL_VERSION

        public static final int MAX_PROTOCOL_VERSION
        Maximale Protokollversion (beginnend bei 0)
        See Also:
        Constant Field Values
    • Constructor Detail

      • DafDataModel

        public DafDataModel​(ClientDavInterface connection)
        Erzeugt ein neues Objekt zum Zugriff auf die Konfiguration über eine vorgegebene Datenverteilerverbindung.
        Parameters:
        connection - Verbindung zum Datenverteiler.
    • Method Detail

      • getAcceptedCachedAreas

        public int getAcceptedCachedAreas()
        Returns:
        Liefert die Anzahl von Konfigurationsbereichen, die aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • getIgnoredCachedAreas

        public int getIgnoredCachedAreas()
        Returns:
        Liefert die Anzahl von Konfigurationsbereichen, die nicht aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • getAcceptedCachedSystemObjects

        public int getAcceptedCachedSystemObjects()
        Returns:
        Liefert die Anzahl von Konfigurationsobjekten, die aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • getIgnoredCachedSystemObjects

        public int getIgnoredCachedSystemObjects()
        Returns:
        Liefert die Anzahl von Konfigurationsobjekten, die nicht aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • getAcceptedCachedConfigData

        public int getAcceptedCachedConfigData()
        Returns:
        Liefert die Anzahl von konfigurierenden Datensätzen, die aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • getIgnoredCachedConfigData

        public int getIgnoredCachedConfigData()
        Returns:
        Liefert die Anzahl von konfigurierenden Datensätzen, die nicht aus dem lokal gespeicherten Cache der Konfigurationsobjekte übernommen wurden.
      • init

        public void init​(ConfigurationManager configurationManager,
                         long configurationAuthorityId)
        Initialisiert dieses Objekt nach erfolgreichem Verbindungsaufbau mit dem Datenverteiler
        Parameters:
        configurationManager - Objekt zur Verwaltung der Kommunikation mit der Konfiguration
        configurationAuthorityId - Die Objekt-Id des Konfigurationsverantwortlichen
      • setPublicConnection

        public void setPublicConnection​(ClientDavConnection publicConnection)
        Wird bei der Initialisierung aufgerufen um die öffentliche ClientDavConnection zu setzen.
        Parameters:
        publicConnection - ClientDavConnection
      • getPendingResponses

        public java.util.LinkedList<ConfigTelegram> getPendingResponses()
        Liste mit den noch nicht bearbeiteten Antworten auf Konfigurationsanfragen
      • getProtocolVersion

        public long getProtocolVersion()
      • isConnectionClosed

        public boolean isConnectionClosed()
      • loadLocalConfigurationCache

        public void loadLocalConfigurationCache()
        Liest lokal zwischengespeicherte Konfigurationsobjekte und konfigurierende Datensätze ein, falls in dem entsprechenden Aufrufparameter ein Verzeichnis angegeben wurde und dort eine passende Datei vorhanden ist. Nach der Anzahl der relevanten Konfigurationsbereiche werden für jeden Konfigurationsbereich folgende Informationen in der Datei erwartet
        • die (long-)Id des Konfigurationsbereiches,
        • die (short-)Aktive Version des Konfigurationsbereiches,
        • der (long-) Zeitstempel der letzen Änderung von dynamischen Objekten,
        • der (long-) Zeitsempel der letzten Änderung von konfigurierenden Objekten,
        • der Zeitstempel der letzten Änderung von konfigurierenden Datensätzen
        Diese Informationen werden mit den entsprechenden Werten in der Konfiguration verglichen. Nur wenn alle Werte übereinstimmen, werden Objekte des jeweiligen Bereichs aus der Datei geladen. Ein Konfigurationsobjekt wird seriell wie folgt aus der Datei gelesen:
        1. byte: 1 (die eins kennzeichnet ein Konfigurationsobjekt und zeigt an, dass ein solches folgt)
        2. byte: internType (gint an, um welchen Typ von Konfigurationsobjekt es sich handelt)
        3. Object: object(serielles Objekt)
        Ein konfigurierender Datensatz wird seriell aus der Datei wie folgt gelesen:
        1. byte: 2 (die zwei kennzeichnet einen konfigurierenden Datensatz und zeigt an das ein solcher folgt)
        2. long: Objekt-ID(Die ID des Objektes zu dem der konfiguriende Datensatz gehört)
        3. long: AtgV-ID(Die ID der Atributgruppenverwedung des konfigurienden Datensatzes)
        4. boolean: true→ Datensatz enthält Daten, false→ Datensatz enthält keine Daten
        5. Data: serialisierte Daten des Datensatzes
        Abschließend wird eine byte-0 geschrieben, das anzeigt, dass das Ende der Datei erreicht ist.
      • close

        public final void close()
        Diese Methode sollte beim Terminieren der Datenverteilerverbindung aufgerufen werden. Sie speichert die zwischengespeicherten Objekte falls gewünscht in einer Datei im lokalen Dateisystem.
      • getRequester

        public ConfigurationRequester getRequester()
        Mit dem zurückgegebenen Objekt können Anfragen an eine Konfiguration gestellt werden.
        Returns:
        Objekt für Konfigurationsanfragen
      • getConnection

        public ClientDavInterface getConnection()
        Gibt die aktuelle Verbindung zum Datenverteiler zurück.
        Returns:
        Die Verbindung zum Datenverteiler
      • getTypeTypeObject

        public final SystemObjectType getTypeTypeObject()
        Description copied from interface: DataModel
        Liefert das Systemobjekt, das den Typ von Typobjekten darstellt.
        Specified by:
        getTypeTypeObject in interface DataModel
        Returns:
        Das Typ-Typ-Objekt.
      • getBaseTypes

        public final java.util.List<SystemObjectType> getBaseTypes()
        Description copied from interface: DataModel
        Liefert die Basistypen, also die Typ-Objekte, die keinen anderen Typ erweitern, zurück. Basistypen sind z.B. die Objekte mit den Permanenten IDs "typ.konfigurationsObjekt" und "typ.dynamischesObjekt".
        Specified by:
        getBaseTypes in interface DataModel
        Returns:
        Liste mit Typ-Objekten.
      • getObject

        public final SystemObject getObject​(long id)
        Description copied from interface: DataModel
        Liefert das System-Objekt mit der angegebenen Objekt-ID zurück.
        Specified by:
        getObject in interface DataModel
        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
      • getObject

        public SystemObject getObject​(java.lang.String pid)
        Description copied from interface: DataModel
        Liefert das System-Objekt mit der angegebenen PID zurück.
        Specified by:
        getObject in interface DataModel
        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
      • getObjects

        public java.util.List<SystemObject> getObjects​(long... ids)
        Description copied from interface: DataModel
        Liefert eine Liste zurück, die zu den angegebenen IDs die zugehörigen System-Objekte enthält. Die Reihenfolge der Objekte der Liste entspricht der Reihenfolge der übergebenen IDs. Wurde ein Objekt nicht gefunden, enthält die Liste an der entsprechenden Position null.

        Diese Methode kann bei der Anfrage nach mehreren IDs schneller sein, als mehrmals DataModel.getObject(long) aufzurufen.

        Specified by:
        getObjects in interface DataModel
        Parameters:
        ids - Array mit IDs
        Returns:
        zugehörige System-Objekte
        See Also:
        DataModel.getObject(long)
      • getObjects

        public java.util.List<SystemObject> getObjects​(java.lang.String... pids)
        Description copied from interface: DataModel
        Liefert eine Liste zurück, die zu den angegebenen PIDs die zugehörigen System-Objekte enthält. Die Reihenfolge der Objekte der Liste entspricht der Reihenfolge der übergebenen PIDs. Wurde ein Objekt nicht gefunden, enthält die Liste an der entsprechenden Position null.

        Diese Methode kann bei der Anfrage nach mehreren PIDs schneller sein, als mehrmals DataModel.getObject(java.lang.String) aufzurufen.

        Specified by:
        getObjects in interface DataModel
        Parameters:
        pids - Array mit PIDs
        Returns:
        zugehörige System-Objekte
        See Also:
        DataModel.getObject(java.lang.String)
      • getObjectsById

        public java.util.List<SystemObject> getObjectsById​(java.util.Collection<java.lang.Long> ids)
        Description copied from interface: DataModel
        Liefert eine Liste zurück, die zu den angegebenen IDs die zugehörigen System-Objekte enthält. Die Reihenfolge der Objekte der Liste entspricht der Reihenfolge der übergebenen IDs. Wurde ein Objekt nicht gefunden, enthält die Liste an der entsprechenden Position null.

        Diese Methode kann bei der Anfrage nach mehreren IDs schneller sein, als mehrmals DataModel.getObject(long) aufzurufen.

        Specified by:
        getObjectsById in interface DataModel
        Parameters:
        ids - Liste mit IDs
        Returns:
        zugehörige System-Objekte
        See Also:
        DataModel.getObject(long)
      • getObjectsByPid

        public java.util.List<SystemObject> getObjectsByPid​(java.util.Collection<java.lang.String> pids)
        Description copied from interface: DataModel
        Liefert eine Liste zurück, die zu den angegebenen PIDs die zugehörigen System-Objekte enthält. Die Reihenfolge der Objekte der Liste entspricht der Reihenfolge der übergebenen PIDs. Wurde ein Objekt nicht gefunden, enthält die Liste an der entsprechenden Position null.

        Diese Methode kann bei der Anfrage nach mehreren PIDs schneller sein, als mehrmals DataModel.getObject(java.lang.String) aufzurufen.

        Specified by:
        getObjectsByPid in interface DataModel
        Parameters:
        pids - Liste mit PIDs
        Returns:
        zugehörige System-Objekte
        See Also:
        DataModel.getObject(java.lang.String)
      • objectInvalidated

        public void objectInvalidated​(DafSystemObject object,
                                      long notValidSince)
      • getConfigurationArea

        public DafConfigurationArea getConfigurationArea​(java.lang.String pid)
        Description copied from interface: DataModel
        Liefert zu der angegebenen Pid den passenden Konfigurationsbereich.
        Specified by:
        getConfigurationArea in interface DataModel
        Parameters:
        pid - die Pid des Konfigurationsbereichs
        Returns:
        der Konfigurationsbereich zur angegebenen Pid
      • getConfigurationAuthorityPid

        public java.lang.String getConfigurationAuthorityPid()
        Description copied from interface: DataModel
        Liefert die Pid des lokalen Verantwortlichen der gesamten Konfiguration.
        Specified by:
        getConfigurationAuthorityPid in interface DataModel
        Returns:
        die Pid des Konfigurationsverantwortlichen
      • getObjects

        public java.util.Collection<SystemObject> getObjects​(java.lang.String pid,
                                                             long startTime,
                                                             long endTime)
        Description copied from interface: DataModel
        Gibt die Objekte zurück, die zu der angegebenen Pid in dem angegebenen Zeitraum gültig waren.
        Specified by:
        getObjects in interface DataModel
        Parameters:
        pid - die Pid der gewünschten Objekte
        startTime - der zu betachtende Startzeitpunkt des Anfragezeitraums
        endTime - der zu betrachtende Endzeitpunkt des Anfragezeitraums
        Returns:
        Die Objekte, die zu der angegebenen Pid in dem angegebenen Zeitraum gültig waren.
      • getObjects

        public java.util.Collection<SystemObject> getObjects​(java.util.Collection<ConfigurationArea> configurationAreas,
                                                             java.util.Collection<SystemObjectType> systemObjectTypes,
                                                             ObjectTimeSpecification objectTimeSpecification)
        Description copied from interface: DataModel
        Gibt die Objekte zurück, die in einem der angegebenen Konfigurationsbereiche sind und deren Objekttyp in der angegebenen Objekttyp-Menge ist.
        Specified by:
        getObjects in interface DataModel
        Parameters:
        configurationAreas - Konfigurationsbereiche, die zu berücksichtigen sind. Wird null übergeben, so gilt dies als Wildcard und alle Konfigurationsbereiche werden betrachtet.
        systemObjectTypes - Objekttypen, die zu berücksichtigen sind. Wird null übergeben, so gilt dies als Wildcard und alle Objekttypen werden betrachtet.
        objectTimeSpecification - Gibt den Gültigkeitsbereich der geforderten Objekte an.
        Returns:
        Die gewünschten System-Objekte oder eine leere Collection, falls es keine passenden Objekte gibt.
      • getUserAdministration

        public UserAdministration getUserAdministration()
        Description copied from interface: DataModel
        Gibt ein Objekt zurück, mit dem die Benutzer der Konfiguration verwaltet werden können.
        Specified by:
        getUserAdministration in interface DataModel
        Returns:
        Objekt zur Benutzerverwaltung.
      • backupConfigurationFiles

        public BackupResult backupConfigurationFiles​(java.lang.String targetDirectory,
                                                     BackupProgressCallback callback)
                                              throws ConfigurationTaskException,
                                                     RequestException
        Description copied from interface: DataModel
        Veranlasst die Konfiguration, alle Konfigurationsdateien zu sichern. Diese Funktion wartet auf das Beenden des Vorgangs. Wird der Auftrag über den Datenverteiler ausgeführt (DafDataModel) kann die Konfiguration andere Anfragen parallel ausführen. Wird die Funktion lokal ausgeführt (ConfigDataModel), kann es möglicherweise sinnvoll sein, die Funktion in einem eigenen Thread auszuführen.
        Specified by:
        backupConfigurationFiles in interface DataModel
        Parameters:
        targetDirectory - Relatives Zielverzeichnis innerhalb des in der Konfiguration (mit dem Parameter -sicherungsVerzeichnis) festgelegten Sicherungsordners. Wird null oder ein Leerstring angegeben, generiert die Konfiguration aus aktuellem Datum und Uhrzeit einen neuen Pfadnamen. Falls das de.bsvrz.puk.config.configFile.datamodel.ConfigDataModel direkt benutzt wird und mit de.bsvrz.puk.config.configFile.datamodel.ConfigDataModel#setBackupBaseDirectory(java.io.File) noch keine Zielverzeichnis angelegt wurde, kann auch ein absoluter Pfadname angegeben werden. Ein relativer Pfadname würde dann relativ zum Arbeitsverzeichnis interpretiert.
        callback - Objekt, an das Statusmeldungen gesendet werden oder null, falls keine Rückmeldungen gewünscht sind
        Returns:
        Objekt, das Informationen über das Ergebnis des Sicherungsvorgangs enthält
        Throws:
        ConfigurationTaskException - Der Backup-Vorgang konnte nicht durchgeführt werden, beispielsweise weil das Zielverzeichnis falsch war. Falls das Sichern einzelner Dateien fehlschlägt wird keine solche Exception geworfen, stattdessen findet man innerhalb vom callback eventuelle Fehlschläge und BackupResult.getFailed ist größer 0.
        RequestException - Fehler bei der Übertragung der Anfrage oder beim Empfang von Statusmeldungen der Konfiguration. Achtung: Man kann nicht zwingend darauf schließen, dass der Backupvorgang nicht erfolgreich war, wenn eine Exception geworfen wurde. Wenn während des Vorgangs beispielsweise die Verbindung zwischen Datenverteiler und Konfiguration abbricht, wird eine Exception geworfen, aber die Konfiguration wird den Vorgang vermutlich dennoch korrekt beenden.
      • backupConfigurationFiles

        public BackupResult backupConfigurationFiles​(java.lang.String targetDirectory,
                                                     ConfigurationAuthority configurationAuthority,
                                                     BackupProgressCallback callback)
                                              throws ConfigurationTaskException,
                                                     RequestException
        Description copied from interface: DataModel
        Veranlasst die Konfiguration, ausgewählte Konfigurationsdateien zu sichern. Diese Funktion wartet auf das Beenden des Vorgangs. Wird der Auftrag über den Datenverteiler ausgeführt (DafDataModel) kann die Konfiguration andere Anfragen parallel ausführen. Wird die Funktion lokal ausgeführt (ConfigDataModel), kann es möglicherweise sinnvoll sein, die Funktion in einem eigenen Thread auszuführen.
        Specified by:
        backupConfigurationFiles in interface DataModel
        Parameters:
        targetDirectory - Relatives Zielverzeichnis innerhalb des in der Konfiguration (mit dem Parameter -sicherungsVerzeichnis) festgelegten Sicherungsordners. Wird null oder ein Leerstring angegeben, generiert die Konfiguration aus aktuellem Datum und Uhrzeit einen neuen Pfadnamen. Falls das de.bsvrz.puk.config.configFile.datamodel.ConfigDataModel direkt benutzt wird und mit de.bsvrz.puk.config.configFile.datamodel.ConfigDataModel#setBackupBaseDirectory(java.io.File) noch keine Zielverzeichnis angelegt wurde, kann auch ein absoluter Pfadname angegeben werden. Ein relativer Pfadname würde dann relativ zum Arbeitsverzeichnis interpretiert.
        configurationAuthority - Konfigurationsverantwortlicher, dessen Konfigurations-Dateien gesichert werden sollen. Falls null werden alle Dateien gesichert.
        callback - Objekt, an das Statusmeldungen gesendet werden oder null, falls keine Rückmeldungen gewünscht sind
        Returns:
        Objekt, das Informationen über das Ergebnis des Sicherungsvorgangs enthält
        Throws:
        ConfigurationTaskException - Der Backup-Vorgang konnte nicht durchgeführt werden, beispielsweise weil das Zielverzeichnis falsch war. Falls das Sichern einzelner Dateien fehlschlägt wird keine solche Exception geworfen, stattdessen findet man innerhalb vom callback eventuelle Fehlschläge und BackupResult.getFailed ist größer 0.
        RequestException - Fehler bei der Übertragung der Anfrage oder beim Empfang von Statusmeldungen der Konfiguration. Achtung: Man kann nicht zwingend darauf schließen, dass der Backupvorgang nicht erfolgreich war, wenn eine Exception geworfen wurde. Wenn während des Vorgangs beispielsweise die Verbindung zwischen Datenverteiler und Konfiguration abbricht, wird eine Exception geworfen, aber die Konfiguration wird den Vorgang vermutlich dennoch korrekt beenden.
      • update

        public final void update​(ConfigTelegram telegram)
        Diese Methode wird aufgerufen, wenn eine Antwort auf eine Konfigurationsanfrage empfangen wurde.
        Parameters:
        telegram - Telegramm mit der empfangenen Antwort aus der Konfiguration.
      • getConfigurationData

        public Data[] getConfigurationData​(java.util.Collection<SystemObject> objects,
                                           AttributeGroup atg)
        Description copied from interface: DataModel
        Liefert die konfigurierenden Datensätze einer Attributgruppe für mehrere Objekte zurück. Als Aspekt wird dabei asp.eigenschaften angenommen. Die zurückgelieferten Datensätze werden auch lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Specified by:
        getConfigurationData in interface DataModel
        Parameters:
        objects - Systemobjekte der gewünschten konfigurierenden Datensätze.
        atg - Attributgruppe der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Das Array enthält für jedes Element des Parameters objects einen korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe-Aspekt Kombination hat.
      • updateName

        public void updateName​(long objectId,
                               long typeId,
                               java.lang.String newName)
        Description copied from interface: UpdateDynamicObjects
        Diese Methode wird aufgerufen, wenn die Konfiguration eine Namensänderung eines dynamischen Objekts propagiert hat.

        Auf Meta-Seite muss dann der Name des Objekts aktualisiert werden. Des Weiteren muss dem Typ des Objekts die Namensänderung mitgeteilt werden. Dies ist nötig, weil am Typ des Objekts Listener für Namensänderungen vorhanden sind.

        Beim setzen des Namens darf nicht die SystemObject.setName(String) Methode benutzt werden, weil dadurch erneut eine Anfrage an die Konfiguration verschickt werden würde.

        Der beschriebene Mechanismus muss nur durchgeführt werden wenn: Sich das Objekt im Cache des Meta-Datamodells befindet oder ein Listener auf Namensänderungen für den Typ des Objekt angemeldet ist.

        Sind beide Bedingungen nicht erfüllt kann die Namensänderung verworfen werden.

        Specified by:
        updateName in interface UpdateDynamicObjects
        Parameters:
        objectId - Id des Objekts, dessen Name aktualisiert werden soll
        typeId - Typ des Objekts, der informiert wird, dass sich der Name eines Objekts geändert hat
        newName - Neuer Name des Objekts
      • updateNotValidSince

        public void updateNotValidSince​(long objectId,
                                        long typeId,
                                        long invalidTime)
        Description copied from interface: UpdateDynamicObjects
        Diese Methode wird aufgerufen, wenn die Konfiguration propagiert, dass ein dynamisches Objekt ungültig wurde.

        Die Methode muss beim dynamischen Objekt den Zeitpunkt aktualisieren, an dem es ungültig wurde und der Methodenaufruf von SystemObject.isValid() muss false zurück geben. Der Typ des Objekts muss ebenfalls informatiert werden, dass das Objekt nicht mehr gültig ist. Dies ist nötig, weil eventuell Listener auf diese Änderungen angemeldet sind.

        Der beschriebene Mechanismus muss nur durchgeführt werden wenn: Sich das Objekt im Cache des Meta-Datamodells befindet oder ein Listener auf Invalidation für den Typ des Objekt angemeldet ist.

        Sind beide Bedingungen nicht erfüllt kann die Änderung verworfen werden.

        Specified by:
        updateNotValidSince in interface UpdateDynamicObjects
        Parameters:
        objectId - Id des Objekts, dessen UngültigAb-Wert aktualisiert werden soll
        typeId - Typ des Objekts, der informiert wird, dass das Objekt ungültig geworden ist
        invalidTime - Zeitpunkt, an dem das Objekt ungültig wurde
      • newDynamicObjectCreated

        public void newDynamicObjectCreated​(long objectId,
                                            long typeId)
        Description copied from interface: UpdateDynamicObjects
        Diese Methode wird aufgerufen, wenn die Konfiguration propagiert, dass ein neues dynamisches Objekt erzeugt wurde.

        Diese Information muss an den jeweiligen Typen des Objekt weitergereicht werden. Dies ist nötig, weil vielleicht Listener auf diese Information angemeldet sind. Ist dies der Fall, so muss das vollständige Objekt aus der Konfiguration angefordert werden.

        Specified by:
        newDynamicObjectCreated in interface UpdateDynamicObjects
        Parameters:
        objectId - Objekt, das neu angelegt wurde
        typeId - Typ des neuen Objekts. Dieser Typ wird darüber informiert, dass ein neues Objekt angelegt wurde.
      • getConfigurationData

        public Data[] getConfigurationData​(java.util.Collection<SystemObject> objects,
                                           AttributeGroupUsage usage)
        Liefert die konfigurierenden Datensätze einer Attributgruppenverwendung für mehrere Objekte zurück. Die zurückgelieferten Datensätze werden auch lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Parameters:
        objects - Liste der Systemobjekten der gewünschten konfigurierenden Datensätze.
        usage - Attributgruppenverwendung der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Im Array enthält für jedes Element des Parameters objects einen korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppenverwendung Kombination hat.
      • getConfigurationData

        public Data[] getConfigurationData​(java.util.Collection<SystemObject> objects,
                                           AttributeGroup atg,
                                           Aspect asp)
        Description copied from interface: DataModel
        Liefert die konfigurierenden Datensätze einer Attributgruppe und eines Aspekts für mehrere Objekte zurück. Die zurückgelieferten Datensätze werden auch lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Specified by:
        getConfigurationData in interface DataModel
        Parameters:
        objects - Liste der Systemobjekte der gewünschten konfigurierenden Datensätze.
        atg - Attributgruppe der gewünschten Datensätze.
        asp - Aspekt der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Das Array enthält für jedes Element des Parameters objects einen korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe-Aspekt Kombination hat.
      • getConfigurationData

        public Data[] getConfigurationData​(SystemObject[] objects,
                                           AttributeGroup atg)
        Description copied from interface: DataModel
        Liefert die konfigurierenden Datensätze einer Attributgruppe für mehrere Objekte zurück. Als Aspekt wird dabei asp.eigenschaften angenommen. Die zurückgelieferten Datensätze werden auch lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Specified by:
        getConfigurationData in interface DataModel
        Parameters:
        objects - Array mit den Systemobjekten der gewünschten konfigurierenden Datensätze.
        atg - Attributgruppe der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Das Array enthält für jedes Element des Parameters objects einen korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe-Aspekt Kombination hat.
      • getConfigurationData

        public Data[] getConfigurationData​(SystemObject[] objects,
                                           AttributeGroup atg,
                                           Aspect aspect)
        Description copied from interface: DataModel
        Liefert die konfigurierenden Datensätze einer Attributgruppe und eines Aspekts für mehrere Objekte zurück. Die zurückgelieferten Datensätze werden auch lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Specified by:
        getConfigurationData in interface DataModel
        Parameters:
        objects - Array mit den Systemobjekten der gewünschten konfigurierenden Datensätze.
        atg - Attributgruppe der gewünschten Datensätze.
        aspect - Aspekt der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Das Array enthält für jedes Element des Parameters objects einen korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe-Aspekt Kombination hat.
      • getConfigurationData

        public Data[] getConfigurationData​(SystemObject[] objects,
                                           AttributeGroupUsage usage)
        Liefert die konfigurierenden Datensätze einer Attributgruppenverwendung für mehrere Objekte zurück. Die Methode sendet eine Konfiguationsanfrage an die Konfiguration um die noch nicht im Zwischenspeicher vorhandenen Datensätze zu laden. Die zurückgelieferten Datensätze werden lokal zwischengespeichert und können mit der Methode SystemObject.getConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup) ohne weitere Konfigurationsanfrage abgefragt werden. Die Methode kann somit zur Minimierung der Anzahl von Konfigurationsanfragen und den damit verbundenen Verzögerungszeiten eingesetzt werden.
        Parameters:
        objects - Array mit den Systemobjekten der gewünschten konfigurierenden Datensätze.
        usage - Attributgruppenverwendung der gewünschten Datensätze.
        Returns:
        Array mit den gewünschten konfigurierenden Datensätzen. Im Array existiert für jedes Element des Parameters objects ein korrespondierender konfigurierender Datensatz oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppenverwendung Kombination hat.
      • getActiveVersion

        public short getActiveVersion​(ConfigurationArea configurationArea)
        Description copied from interface: DataModel
        Gibt die aktive Version des angegebenen Konfigurationsbereichs zurück.
        Specified by:
        getActiveVersion in interface DataModel
        Parameters:
        configurationArea - der Konfigurationsbereich
        Returns:
        Versionsnummer des Konfigurationsbereichs
      • getConfigurationAuthorityId

        public final long getConfigurationAuthorityId()
        Gibt die Objekt-Id des Konfigurationsverantwortlichen zurück.
        Returns:
        Die Objekt-Id des Konfigurationsverantwortlichen
      • getAttributeGroupUsage

        public AttributeGroupUsage getAttributeGroupUsage​(long usageIdentification)
        Description copied from interface: DataModel
        Bestimmt die Attributgruppenverwendung mit der angegebenen Datenverteiler-Identifizierung.
        Specified by:
        getAttributeGroupUsage in interface DataModel
        Parameters:
        usageIdentification - Identifizierung dieser Attributgruppenverwendung bei der Kommunikation über den Datenverteiler.
        Returns:
        Zur Identifizierung gehörende Attributgruppenverwendung oder null, wenn es keine Attributgruppenverwendung mit der angegebenen Identifizierung gibt.