Class ConfigDataModel
- All Implemented Interfaces:
de.bsvrz.dav.daf.main.config.DataModel
,de.bsvrz.dav.daf.main.config.management.ConfigurationControl
,de.bsvrz.dav.daf.main.config.ObjectLookup
public class ConfigDataModel
extends java.lang.Object
implements de.bsvrz.dav.daf.main.config.DataModel, de.bsvrz.dav.daf.main.config.management.ConfigurationControl
Verwaltungsdaten
und die Konfigurationsdaten
werden hier zusammengeführt und entsprechend des Datenmodells
zur Verfügung gestellt.- See Also:
DataModel
-
Field Summary
Fields Modifier and Type Field Description static int
PROTOCOL_VERSION
Maximal unterstützte Protokollversion -
Constructor Summary
Constructors Constructor Description ConfigDataModel(java.io.File adminFile)
Erzeugt das Datenmodell der Konfiguration.ConfigDataModel(java.io.File adminFile, boolean ignoreDependencyErrorsInConsistencyCheck)
Erzeugt das Datenmodell der Konfiguration. -
Method Summary
Modifier and Type Method Description de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface
activateConfigurationAreas(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
de.bsvrz.dav.daf.main.config.BackupResult
backupConfigurationFiles(java.lang.String targetDirectory, de.bsvrz.dav.daf.main.config.BackupProgressCallback callback)
de.bsvrz.dav.daf.main.config.BackupResult
backupConfigurationFiles(java.lang.String targetDirectory, de.bsvrz.dav.daf.main.config.ConfigurationAuthority configurationAuthority, de.bsvrz.dav.daf.main.config.BackupProgressCallback callback)
void
checkCodingOfConfigurationAuthority(short authorityCoding, java.lang.String authorityPid)
Diese Methode prüft, ob die Kodierung des zu verwendenden Konfigurationsverantwortlichen eindeutig ist.de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface
checkConsistency(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface
checkConsistencyAndFixErrors(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
Diese Methode beauftragt die Konfiguration alle Konfigurationsbereiche einer Konsistenzprüfung zu unterziehen und behebbare Probleme zu beheben.void
close()
de.bsvrz.dav.daf.main.config.ConfigurationArea
createConfigurationArea(java.lang.String areaName, java.lang.String areaPid, de.bsvrz.dav.daf.main.config.SystemObjectType authorityObjectType, java.lang.String authorityPid, java.lang.String authorityName, long authorityCoding)
Diese Methode legt einen neuen Konfigurationsbereich und bei Bedarf den dazugehörigen Konfigurationsverantwortlichen in der lokalen Konfiguration an.de.bsvrz.dav.daf.main.config.ConfigurationArea
createConfigurationArea(java.lang.String name, java.lang.String pid, java.lang.String authorityPid)
de.bsvrz.dav.daf.main.config.ConfigurationObject
createConfigurationObject(de.bsvrz.dav.daf.main.config.ConfigurationObjectType type, java.lang.String pid, java.lang.String name, java.util.List<? extends de.bsvrz.dav.daf.main.config.ObjectSet> sets)
de.bsvrz.dav.daf.main.config.DynamicObject
createDynamicObject(de.bsvrz.dav.daf.main.config.SystemObjectType type, java.lang.String pid, java.lang.String name)
void
deleteDynamicObjectsPermanently()
void
deleteObjects(short simulationVariant)
Löscht alle dynamischen Objekte mit der angegebenen Simulationsvariante permanent.void
doMaintenance(MaintenanceSpec spec)
Ermittelt, welche Objekte endgültig gelöscht werden können und markiert diese.void
exportConfigurationAreas(java.io.File exportPath, java.util.Collection<java.lang.String> configurationAreaPids)
short
getActiveVersion(de.bsvrz.dav.daf.main.config.ConfigurationArea configurationArea)
java.util.Map<java.lang.String,de.bsvrz.dav.daf.main.config.ConfigurationArea>
getAllConfigurationAreas()
java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getAllObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification)
Gibt alle Objekte unabhängig von der Simulationsvariante zurückboolean
getAllowDoublePids()
Liefert das Flag, mit dem die Konsistenzprüfung entscheiden soll, ob doppelte Pids in verschiedenen Konfigurationsbereichen erlaubt sind.protected java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType>
getAllSubTypes(de.bsvrz.dav.daf.main.config.SystemObjectType type)
Diese Methode ermittelt zu diesem Objekt-Typ rekursiv alle Typen, die diesen Typ direkt und indirekt erweitern.de.bsvrz.dav.daf.main.config.AttributeGroupUsage
getAttributeGroupUsage(long usageIdentification)
Bestimmt die Attributgruppenverwendung mit der angegebenen Datenverteiler-Identifizierung.java.io.File
getBackupBaseDirectory()
Gibt das Verzeichnis für Sicherungen der Konfigurationsdateien zurückjava.util.List<de.bsvrz.dav.daf.main.config.SystemObjectType>
getBaseTypes()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getConfigurationArea(java.lang.String pid)
ConfigurationAreaManagementInfo
getConfigurationAreaManagementInfo(java.lang.String pid)
Gibt zu einem Konfigurationsbereich dessen Verwaltungsinformationen zurück.de.bsvrz.dav.daf.main.config.ConfigurationAuthority
getConfigurationAuthority()
java.lang.String
getConfigurationAuthorityPid()
de.bsvrz.dav.daf.main.Data[]
getConfigurationData(de.bsvrz.dav.daf.main.config.SystemObject[] objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg)
de.bsvrz.dav.daf.main.Data[]
getConfigurationData(de.bsvrz.dav.daf.main.config.SystemObject[] objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg, de.bsvrz.dav.daf.main.config.Aspect asp)
de.bsvrz.dav.daf.main.Data[]
getConfigurationData(java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg)
de.bsvrz.dav.daf.main.Data[]
getConfigurationData(java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg, de.bsvrz.dav.daf.main.config.Aspect asp)
ConfigurationFileManager
getConfigurationFileManager()
Liefert die Verwaltung für die Konfigurationsdateien.boolean
getIgnoreDependencyErrorsInConsistencyCheck()
ConfigurationManagementFile
getManagementFile()
Gibt das Objekt für Änderungen an der Verwaltungsdatei zurück.de.bsvrz.dav.daf.main.config.SystemObject
getObject(long id)
de.bsvrz.dav.daf.main.config.SystemObject
getObject(java.lang.String pid)
de.bsvrz.dav.daf.main.config.SystemObject
getObject(java.lang.String pid, short simulationVariant)
Gibt das Objekt mit der angegebenen Pid aus Sicht der angegebenen Simulation zurück.java.util.List<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(long... ids)
java.util.List<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.lang.String... pids)
java.util.List<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.lang.String[] pids, short simulationVariant)
java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.lang.String pid, long startTime, long endTime)
java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.lang.String pid, long startTime, long endTime, short simulationVariant)
Gibt die Objekte zurück, die aus Sicht der angegebenen Simulationsvariante zu der angegebenen Pid in dem angegebenen Zeitraum gültig waren.java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification)
Gibt alle Objekte zurück, außer Objekten die in Simulationen sindjava.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification, short simulationVariant)
Gibt alle Objekte zurück, die in einer bestimmten Simulation gültig sindjava.util.List<de.bsvrz.dav.daf.main.config.SystemObject>
getObjectsById(java.util.Collection<java.lang.Long> ids)
java.util.List<de.bsvrz.dav.daf.main.config.SystemObject>
getObjectsByPid(java.util.Collection<java.lang.String> pids)
ReferenceHelper
getReferenceHelper()
de.bsvrz.dav.daf.main.config.SystemObjectType
getTypeTypeObject()
de.bsvrz.dav.daf.main.config.management.UserAdministration
getUserAdministration()
ConfigAuthentication
getUserManagement()
Gibt die Benutzerverwaltung zurück, falls über setUserManagement festgelegtvoid
importConfigurationAreas(java.io.File importPath, java.util.Collection<java.lang.String> configurationAreaPids)
boolean
objectIsValidInSimulation(de.bsvrz.dav.daf.main.config.SystemObject systemObject, short simulationVariant)
Prüft, ob ein Objekt in der angegebenen Simulation gültig istboolean
referenceAllowed(de.bsvrz.dav.daf.main.config.SystemObject systemObject)
Gibttrue
zurück, wenn das angegebene Objekt referenziert werden darf.void
releaseConfigurationAreasForActivation(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface
releaseConfigurationAreasForActivationWithoutCAActivation(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface
releaseConfigurationAreasForTransfer(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)
void
restructure(ConfigurationAreaFile.RestructureMode mode)
void
save()
Speichert die Verwaltungsdaten und die Konfigurationsbereiche ab.void
saveSetElementsFileLater(MutableSetExtFileStorage mutableSetExtFileStorage)
void
saveSetElementsFiles()
void
sendCollectionChangedNotification(ConfigMutableCollectionSupport mutableCollectionSupport, short simulationVariant, java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> addedElements, java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> removedElements)
Leitet die Aktualisierungsnachrichten bzgl.void
setAllowDoublePids(boolean allowDoublePids)
Setzt das Flag, mit dem die Konsistenzprüfung entscheiden soll, ob doppelte Pids in verschiedenen Konfigurationsbereichen erlaubt sind.void
setBackupBaseDirectory(java.io.File backupBaseDirectory)
Setzt das Verzeichnis, in dem Konfigurationsdateien gesichert werden sollenvoid
setConfigurationAuthority(de.bsvrz.dav.daf.main.config.ConfigurationAuthority authority)
Setzt den Konfigurationsverantwortlichen der Konfiguration.void
setIgnoreDependencyErrorsInConsistencyCheck(boolean ignoreDependencyErrorsInConsistencyCheck)
Setzt das Flag, mit dem die Konsistenzprüfung entscheidet, ob Fehler bei der Prüfung der Abhängigkeiten in der Konsistenzprüfung ignoriert werden oder zum Abbruch führen sollen. werden sollen.void
setSimulationHandler(SimulationHandler simulationHandler)
Setzt die Simulationsverwaltung die für manche Funktionen benötigt wirdvoid
setUserManagement(ConfigAuthentication userManagement)
Setzt die Benutzerverwaltungjava.lang.String
toString()
Gibt die String-Repräsentation dieser Klasse zurück.void
verifyDataReferences(short simulationVariant, de.bsvrz.dav.daf.main.Data data)
Bei Simulationen muss sichergestellt sein, dass Konfigurationsdaten von dynamischen Objekten aus Simulationen keine (assoziativen) Referenzen auf Objekte enthalten, die in dieser Simulation nicht gültig sind.void
verifyDataReferences(ConfigSystemObject referencingObject, de.bsvrz.dav.daf.main.Data data)
Bei Simulationen muss sichergestellt sein, dass Konfigurationsdaten von dynamischen Objekten aus Simulationen keine (assoziativen) Referenzen auf Objekte enthalten, die in dieser Simulation nicht gültig sind.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.bsvrz.dav.daf.main.config.DataModel
getAspect, getAttributeGroup, getAttributeGroupUsage, getAttributeType, getConfigObject, getConfigType, getDataDescription, getDynamicObject, getDynamicType, getObjectSetType, getType
Methods inherited from interface de.bsvrz.dav.daf.main.config.ObjectLookup
getObject, getObject
-
Field Details
-
PROTOCOL_VERSION
public static final int PROTOCOL_VERSIONMaximal unterstützte Protokollversion- See Also:
- Constant Field Values
-
-
Constructor Details
-
ConfigDataModel
public ConfigDataModel(java.io.File adminFile)Erzeugt das Datenmodell der Konfiguration.- Parameters:
adminFile
- Datei mit den Verwaltungsdaten der Konfiguration oder leere Datei.
-
ConfigDataModel
public ConfigDataModel(java.io.File adminFile, boolean ignoreDependencyErrorsInConsistencyCheck)Erzeugt das Datenmodell der Konfiguration.- Parameters:
adminFile
- Datei mit den Verwaltungsdaten der Konfiguration oder leere Datei.ignoreDependencyErrorsInConsistencyCheck
- Flag zum ignorieren fehlender Abhängigkeiten zwischen Konfigurationsbereichen
-
-
Method Details
-
checkCodingOfConfigurationAuthority
public void checkCodingOfConfigurationAuthority(short authorityCoding, java.lang.String authorityPid) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeExceptionDiese Methode prüft, ob die Kodierung des zu verwendenden Konfigurationsverantwortlichen eindeutig ist. Es darf also keinen aktuellen Verantwortlichen geben, der die gleiche Kodierung verwendet.- Parameters:
authorityCoding
- zu vergleichende KodierungauthorityPid
- Pid des Konfigurationsverantwortlichen- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
- Falls die Kodierung nicht eindeutig ist.
-
getConfigurationFileManager
Liefert die Verwaltung für die Konfigurationsdateien.- Returns:
- die Verwaltung für die Konfigurationsdateien
-
getManagementFile
Gibt das Objekt für Änderungen an der Verwaltungsdatei zurück.- Returns:
- das Objekt zur Manipulation der Verwaltungsdatei
-
getConfigurationAuthority
public de.bsvrz.dav.daf.main.config.ConfigurationAuthority getConfigurationAuthority()- Specified by:
getConfigurationAuthority
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
setConfigurationAuthority
public void setConfigurationAuthority(de.bsvrz.dav.daf.main.config.ConfigurationAuthority authority)Setzt den Konfigurationsverantwortlichen der Konfiguration.- Parameters:
authority
- der Konfigurationsverantwortliche der Konfiguration
-
getConfigurationAuthorityPid
public java.lang.String getConfigurationAuthorityPid()- Specified by:
getConfigurationAuthorityPid
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getConfigurationAreaManagementInfo
Gibt zu einem Konfigurationsbereich dessen Verwaltungsinformationen zurück.- Parameters:
pid
- Pid des Konfigurationsbereichs- Returns:
- Verwaltungsinformationen des gewünschten Konfigurationsbereichs
-
checkConsistency
public de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface checkConsistency(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)- Specified by:
checkConsistency
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
-
activateConfigurationAreas
public de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface activateConfigurationAreas(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
activateConfigurationAreas
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
checkConsistencyAndFixErrors
public de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface checkConsistencyAndFixErrors(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas)Diese Methode beauftragt die Konfiguration alle Konfigurationsbereiche einer Konsistenzprüfung zu unterziehen und behebbare Probleme zu beheben. Diese Methode kann unabhängig von der AktivierungactivateConfigurationAreas(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion>)
oder FreigabereleaseConfigurationAreasForTransfer(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion>)
aufgerufen werden.- Parameters:
configurationAreas
- Definiert alle Konfigurationsbereiche, die einer Konsistenzprüfung unterzogen werden sollen. Der Bereich wird über seine Pid identifiziert, zusätzlich wird die Version angegeben in der der Konfigurationsbereich geprüft werden soll. Alle Bereiche der Konfiguration, die nicht angegeben werden, werden in die Prüfung einbezogen und zwar mit ihrer aktuellen Version und müssen somit nicht explizit angegeben werden.- Returns:
- Ergebnis der Konsistenzprüfung
-
restructure
-
releaseConfigurationAreasForTransfer
public de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface releaseConfigurationAreasForTransfer(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
releaseConfigurationAreasForTransfer
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
releaseConfigurationAreasForActivation
public void releaseConfigurationAreasForActivation(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
releaseConfigurationAreasForActivation
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
importConfigurationAreas
public void importConfigurationAreas(java.io.File importPath, java.util.Collection<java.lang.String> configurationAreaPids) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
importConfigurationAreas
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
exportConfigurationAreas
public void exportConfigurationAreas(java.io.File exportPath, java.util.Collection<java.lang.String> configurationAreaPids) throws de.bsvrz.dav.daf.main.config.ConfigurationTaskException- Specified by:
exportConfigurationAreas
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationTaskException
-
releaseConfigurationAreasForActivationWithoutCAActivation
public de.bsvrz.dav.daf.main.config.management.consistenycheck.ConsistencyCheckResultInterface releaseConfigurationAreasForActivationWithoutCAActivation(java.util.Collection<de.bsvrz.dav.daf.main.config.management.ConfigAreaAndVersion> configurationAreas) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
releaseConfigurationAreasForActivationWithoutCAActivation
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
deleteDynamicObjectsPermanently
public final void deleteDynamicObjectsPermanently() -
getObject
public de.bsvrz.dav.daf.main.config.SystemObject getObject(java.lang.String pid)- Specified by:
getObject
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Specified by:
getObject
in interfacede.bsvrz.dav.daf.main.config.ObjectLookup
-
getObject
public de.bsvrz.dav.daf.main.config.SystemObject getObject(java.lang.String pid, short simulationVariant)Gibt das Objekt mit der angegebenen Pid aus Sicht der angegebenen Simulation zurück. Das heißt im Detail:- Bei Anfragen mit Simulationsvariante 0 werden nur "normale" aktive Objekte zurückgegeben.
- Bei Anfragen aus Simulationen wird entweder ein Objekt derselben Simulation zurückgegeben, oder ein "normales" aktives Objekt. "normale" Objekte werden aber nur zurückgegeben, wenn der Typ des Objektes nicht speziell in der Simulation behandelt wird. Wird der Typ speziell behandelt ist das Objekt in der Simulation nicht gültig und es wird stattdessen null zurückgegeben.
- Parameters:
pid
- PidsimulationVariant
- Simulation- Returns:
- Ein Objekt falls vorhanden oder null.
-
getObject
public de.bsvrz.dav.daf.main.config.SystemObject getObject(long id)- Specified by:
getObject
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Specified by:
getObject
in interfacede.bsvrz.dav.daf.main.config.ObjectLookup
-
getObjects
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(long... ids)- Specified by:
getObjects
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getObjects
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.lang.String... pids)- Specified by:
getObjects
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getObjects
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.lang.String[] pids, short simulationVariant) -
getObjectsById
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getObjectsById(java.util.Collection<java.lang.Long> ids)- Specified by:
getObjectsById
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getObjectsByPid
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getObjectsByPid(java.util.Collection<java.lang.String> pids)- Specified by:
getObjectsByPid
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getConfigurationArea
public de.bsvrz.dav.daf.main.config.ConfigurationArea getConfigurationArea(java.lang.String pid)- Specified by:
getConfigurationArea
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getAllConfigurationAreas
public java.util.Map<java.lang.String,de.bsvrz.dav.daf.main.config.ConfigurationArea> getAllConfigurationAreas()- Specified by:
getAllConfigurationAreas
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
-
getConfigurationData
public de.bsvrz.dav.daf.main.Data[] getConfigurationData(de.bsvrz.dav.daf.main.config.SystemObject[] objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg)- Specified by:
getConfigurationData
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getConfigurationData
public de.bsvrz.dav.daf.main.Data[] getConfigurationData(java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg)- Specified by:
getConfigurationData
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getConfigurationData
public de.bsvrz.dav.daf.main.Data[] getConfigurationData(de.bsvrz.dav.daf.main.config.SystemObject[] objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg, de.bsvrz.dav.daf.main.config.Aspect asp)- Specified by:
getConfigurationData
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getConfigurationData
public de.bsvrz.dav.daf.main.Data[] getConfigurationData(java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> objects, de.bsvrz.dav.daf.main.config.AttributeGroup atg, de.bsvrz.dav.daf.main.config.Aspect asp)- Specified by:
getConfigurationData
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getActiveVersion
public short getActiveVersion(de.bsvrz.dav.daf.main.config.ConfigurationArea configurationArea)- Specified by:
getActiveVersion
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getTypeTypeObject
public de.bsvrz.dav.daf.main.config.SystemObjectType getTypeTypeObject()- Specified by:
getTypeTypeObject
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getBaseTypes
public java.util.List<de.bsvrz.dav.daf.main.config.SystemObjectType> getBaseTypes()- Specified by:
getBaseTypes
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
createConfigurationObject
public de.bsvrz.dav.daf.main.config.ConfigurationObject createConfigurationObject(de.bsvrz.dav.daf.main.config.ConfigurationObjectType type, java.lang.String pid, java.lang.String name, java.util.List<? extends de.bsvrz.dav.daf.main.config.ObjectSet> sets) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
createConfigurationObject
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
createDynamicObject
public de.bsvrz.dav.daf.main.config.DynamicObject createDynamicObject(de.bsvrz.dav.daf.main.config.SystemObjectType type, java.lang.String pid, java.lang.String name) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
createDynamicObject
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
deleteObjects
public void deleteObjects(short simulationVariant)Löscht alle dynamischen Objekte mit der angegebenen Simulationsvariante permanent.- Parameters:
simulationVariant
- die Simulationsvariante
-
doMaintenance
Ermittelt, welche Objekte endgültig gelöscht werden können und markiert diese. Entfernt historische Referenzen in dynamischen Mengen- Parameters:
spec
- Spezifikation, welche Objekttypen nach welchen Zeiträumen gelöscht werden dürfen
-
getReferenceHelper
-
getObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.lang.String pid, long startTime, long endTime, short simulationVariant)Gibt die Objekte zurück, die aus Sicht der angegebenen Simulationsvariante zu der angegebenen Pid in dem angegebenen Zeitraum gültig waren.- Parameters:
pid
- die Pid der gewünschten ObjektestartTime
- der zu betachtende Startzeitpunkt des AnfragezeitraumsendTime
- der zu betrachtende Endzeitpunkt des AnfragezeitraumssimulationVariant
- die Simulationsvariante- Returns:
- Die Objekte, die zu der angegebenen Pid in dem angegebenen Zeitraum in der angegebenen Simulation gültig waren.
-
objectIsValidInSimulation
public boolean objectIsValidInSimulation(de.bsvrz.dav.daf.main.config.SystemObject systemObject, short simulationVariant)Prüft, ob ein Objekt in der angegebenen Simulation gültig ist- Parameters:
systemObject
- Zu prüfendes ObjektsimulationVariant
- Simulationsvariante der zu prüfenden Simulation oder 0 falls keine Simulation verwendet wird- Returns:
- true: Objekt ist gültig, false sonst. Insbesondere ist ein Objekt dann gültig wenn
- Keine Simulation verwendet wird und das Objekt auch nicht simuliert ist
- Eine Simulation verwendet wird und das Objekt dieselbe Simulationsvariante besitzt
- Eine Simulation verwendet wird und das Objekt nicht simuliert ist, der Typ des Objektes aber auch nicht in der Simulationsstrecke definiert ist
-
getObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.lang.String pid, long startTime, long endTime)- Specified by:
getObjects
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
getAllObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getAllObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification)Gibt alle Objekte unabhängig von der Simulationsvariante zurück- Parameters:
configurationAreas
- Konfigurationsbereiche, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Konfigurationsbereiche werden betrachtet.systemObjectTypes
- Objekttypen, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Objekttypen werden betrachtet.objectTimeSpecification
- Gibt den Gültigkeitsbereich der geforderten Objekte an.- Returns:
- Objekte
- See Also:
getObjects(java.util.Collection, java.util.Collection, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification)
-
getObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification)Gibt alle Objekte zurück, außer Objekten die in Simulationen sind- Specified by:
getObjects
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Parameters:
configurationAreas
- Konfigurationsbereiche, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Konfigurationsbereiche werden betrachtet.systemObjectTypes
- Objekttypen, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Objekttypen werden betrachtet.objectTimeSpecification
- Gibt den Gültigkeitsbereich der geforderten Objekte an.- Returns:
- Objekte
- See Also:
getAllObjects(java.util.Collection, java.util.Collection, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification)
-
getObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.ConfigurationArea> configurationAreas, java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> systemObjectTypes, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification objectTimeSpecification, short simulationVariant)Gibt alle Objekte zurück, die in einer bestimmten Simulation gültig sind- Parameters:
configurationAreas
- Konfigurationsbereiche, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Konfigurationsbereiche werden betrachtet.systemObjectTypes
- Objekttypen, die zu berücksichtigen sind. Wirdnull
übergeben, so gilt dies als Wildcard und alle Objekttypen werden betrachtet.objectTimeSpecification
- Gibt den Gültigkeitsbereich der geforderten Objekte an.simulationVariant
- Simulationsvariante- Returns:
- Objekte
-
getUserAdministration
public de.bsvrz.dav.daf.main.config.management.UserAdministration getUserAdministration()- Specified by:
getUserAdministration
in interfacede.bsvrz.dav.daf.main.config.DataModel
-
backupConfigurationFiles
public de.bsvrz.dav.daf.main.config.BackupResult backupConfigurationFiles(java.lang.String targetDirectory, de.bsvrz.dav.daf.main.config.BackupProgressCallback callback) throws de.bsvrz.dav.daf.main.config.ConfigurationTaskException- Specified by:
backupConfigurationFiles
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationTaskException
-
backupConfigurationFiles
public de.bsvrz.dav.daf.main.config.BackupResult backupConfigurationFiles(java.lang.String targetDirectory, de.bsvrz.dav.daf.main.config.ConfigurationAuthority configurationAuthority, de.bsvrz.dav.daf.main.config.BackupProgressCallback callback) throws de.bsvrz.dav.daf.main.config.ConfigurationTaskException- Specified by:
backupConfigurationFiles
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationTaskException
-
getAllSubTypes
protected java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType> getAllSubTypes(de.bsvrz.dav.daf.main.config.SystemObjectType type)Diese Methode ermittelt zu diesem Objekt-Typ rekursiv alle Typen, die diesen Typ direkt und indirekt erweitern.- Parameters:
type
- der zu betrachtende Objekt-Typ- Returns:
- Alle Typen, die diesen Typ direkt und indirekt erweitern.
-
toString
public java.lang.String toString()Gibt die String-Repräsentation dieser Klasse zurück. Der Wert kann sich ändern.- Overrides:
toString
in classjava.lang.Object
- Returns:
- die String-Repräsentation dieser Klasse
-
save
public void save() throws java.io.IOExceptionSpeichert die Verwaltungsdaten und die Konfigurationsbereiche ab.- Throws:
java.io.IOException
- Fehler, die beim Speichern der Verwaltungsdaten oder der Konfigurationsdateien auftreten, werden hier weitergereicht.
-
close
public void close() -
createConfigurationArea
public de.bsvrz.dav.daf.main.config.ConfigurationArea createConfigurationArea(java.lang.String areaName, java.lang.String areaPid, de.bsvrz.dav.daf.main.config.SystemObjectType authorityObjectType, java.lang.String authorityPid, java.lang.String authorityName, long authorityCoding) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeExceptionDiese Methode legt einen neuen Konfigurationsbereich und bei Bedarf den dazugehörigen Konfigurationsverantwortlichen in der lokalen Konfiguration an. Hierfür wird eine entsprechende Konfigurationsdatei angelegt, die initial das Objekt des Konfigurationsbereichs (und ggf. des Konfigurationsverantwortlichen) enthält.Zusätzlich müssen die konfigurierenden Datensätze für den Konfigurationsverantwortlichen und für die Versionsnummern (aktivierbare und übernehmbare Version) angelegt werden.
Ein Eintrag in der Verwaltungsdatei wird ebenfalls eingetragen. Er enthält die Pid des Konfigurationsbereichs und die Pfadangabe, wo sich die Konfigurationsdatei nach Erstellung befindet.
Soll ein Konfigurationsverantwortlicher angelegt werden, müssen die Parameter `authorityObjectType`, `authorityName` und `authorityCoding` gesetzt sein (sonst werden die Werte ignoriert).
Soll kein Konfigurationsverantwortlicher angelegt werden, muss der Parameter `authorityPid` dem aktuellen KV entsprechen.
Zum Anlegen eines neuen KV sind folgende Bedingungen zu erfüllen:
- Es gibt noch kein KV mit derselben Pid in der Konfiguration.
- Der neue KV ist bereits in der verwaltungsdaten.xml bzw. in `getManagementFile()` als aktueller KV eingetragen.
- Die neue Kodierung liegt innerhalb des zulässigen Bereichs und ist noch keinem anderen KV zugeordnet
Nach dem Anlegen eines KVs werden weitere Operationen (wie Erzeugungen weiterer Objekte) unter dem neuen KV mit seiner Kodierung durchgeführt.
Nach dem Methodenaufruf müssen bei dem ggf. angelegten KV konfigurierende Informationen und Mengen (insbesondere der Datensatz "atg.konfigurationsVerantwortlicherEigenschaften") des KV manuell ergänzt werden. Der gerade angelegte KV kann mit der Methode
getConfigurationAuthority()
ermittelt werden. Wird das nicht gemacht, ist die Kodierung nach einem Neustart der Konfiguration nicht mehr bekannt und die Konfiguration ist ggf. nicht mehr benutzbar.- Parameters:
areaName
- Name des neuen KonfigurationsbereichsareaPid
- eindeutige Pid des neuen KonfigurationsbereichsauthorityPid
- die Pid des Konfigurationsverantwortlichen des neuen Konfigurationsbereichs- Returns:
- Das Objekt des neuen Konfigurationsbereichs.
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
- Falls kein neuer Konfigurationsbereich angelegt werden konnte.
-
createConfigurationArea
public de.bsvrz.dav.daf.main.config.ConfigurationArea createConfigurationArea(java.lang.String name, java.lang.String pid, java.lang.String authorityPid) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeException- Specified by:
createConfigurationArea
in interfacede.bsvrz.dav.daf.main.config.management.ConfigurationControl
- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
-
getAttributeGroupUsage
public de.bsvrz.dav.daf.main.config.AttributeGroupUsage getAttributeGroupUsage(long usageIdentification)Bestimmt die Attributgruppenverwendung mit der angegebenen Datenverteiler-Identifizierung.- Specified by:
getAttributeGroupUsage
in interfacede.bsvrz.dav.daf.main.config.DataModel
- Parameters:
usageIdentification
- Identifizierung dieser Attributgruppenverwendung bei der Kommunikation über den Datenverteiler.- Returns:
- Zur Identifizierung gehörende Attributgruppenverwendung.
-
getAllowDoublePids
public boolean getAllowDoublePids()Liefert das Flag, mit dem die Konsistenzprüfung entscheiden soll, ob doppelte Pids in verschiedenen Konfigurationsbereichen erlaubt sind.- Returns:
true
falls doppelte Pids in verschiedenen Konfigurationsbereichen von der Konsistenzprüfung zugelassen werden sollen.
-
setAllowDoublePids
public void setAllowDoublePids(boolean allowDoublePids)Setzt das Flag, mit dem die Konsistenzprüfung entscheiden soll, ob doppelte Pids in verschiedenen Konfigurationsbereichen erlaubt sind.- Parameters:
allowDoublePids
-true
falls doppelte Pids in verschiedenen Konfigurationsbereichen von der Konsistenzprüfung zugelassen werden sollen.
-
getIgnoreDependencyErrorsInConsistencyCheck
public boolean getIgnoreDependencyErrorsInConsistencyCheck() -
setIgnoreDependencyErrorsInConsistencyCheck
public void setIgnoreDependencyErrorsInConsistencyCheck(boolean ignoreDependencyErrorsInConsistencyCheck)Setzt das Flag, mit dem die Konsistenzprüfung entscheidet, ob Fehler bei der Prüfung der Abhängigkeiten in der Konsistenzprüfung ignoriert werden oder zum Abbruch führen sollen. werden sollen.- Parameters:
ignoreDependencyErrorsInConsistencyCheck
-true
falls Fehler bei der Prüfung der Abhängigkeiten in der Konsistenzprüfung ignoriert werden sollen.
-
saveSetElementsFileLater
-
saveSetElementsFiles
public void saveSetElementsFiles() -
sendCollectionChangedNotification
public void sendCollectionChangedNotification(ConfigMutableCollectionSupport mutableCollectionSupport, short simulationVariant, java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> addedElements, java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> removedElements)Leitet die Aktualisierungsnachrichten bzgl. Änderungen von dynamischen Mengen und dynamischen Typen an das entsprechende Verwaltungsobjekt weiter.- Parameters:
mutableCollectionSupport
- Verwaltungsobjekt für AktualisierungsnachrichtensimulationVariant
- Simulationsvariante der ÄnderungaddedElements
- Hinzugefügte Elemente der dynamischen ZusammenstellungremovedElements
- Entfernte Elemente der dynamischen Zusammenstellung
-
getBackupBaseDirectory
public java.io.File getBackupBaseDirectory()Gibt das Verzeichnis für Sicherungen der Konfigurationsdateien zurück- Returns:
- das Verzeichnis, in dem Konfigurationsdateien gesichert werden sollen. null wenn keines festgelegt wurde
-
setBackupBaseDirectory
public void setBackupBaseDirectory(java.io.File backupBaseDirectory)Setzt das Verzeichnis, in dem Konfigurationsdateien gesichert werden sollen- Parameters:
backupBaseDirectory
- das Verzeichnis, in dem Konfigurationsdateien gesichert werden sollen
-
getUserManagement
Gibt die Benutzerverwaltung zurück, falls über setUserManagement festgelegt- Returns:
- eine ConfigAuthentication oder null falls keine festgelegt wurde
-
setUserManagement
Setzt die Benutzerverwaltung- Parameters:
userManagement
- Benutzerverwaltungsklasse
-
setSimulationHandler
Setzt die Simulationsverwaltung die für manche Funktionen benötigt wird- Parameters:
simulationHandler
- Klasse zur Abfrage nach Simulationen
-
verifyDataReferences
public void verifyDataReferences(ConfigSystemObject referencingObject, de.bsvrz.dav.daf.main.Data data) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeExceptionBei Simulationen muss sichergestellt sein, dass Konfigurationsdaten von dynamischen Objekten aus Simulationen keine (assoziativen) Referenzen auf Objekte enthalten, die in dieser Simulation nicht gültig sind.Ebenfalls dürfen für das Löschen vorgemerkte Objekte nicht referenziert werden
Diese Prüfung wird hier vorgenommen und kann von verschiedenen Stellen aus aufgerufen werden
- Parameters:
referencingObject
- Referenzierendes Objektdata
- Konfigurationsdaten- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
- Wird geworfen wenn Referenzen ungültig sind
-
verifyDataReferences
public void verifyDataReferences(short simulationVariant, de.bsvrz.dav.daf.main.Data data) throws de.bsvrz.dav.daf.main.config.ConfigurationChangeExceptionBei Simulationen muss sichergestellt sein, dass Konfigurationsdaten von dynamischen Objekten aus Simulationen keine (assoziativen) Referenzen auf Objekte enthalten, die in dieser Simulation nicht gültig sind.Ebenfalls dürfen für das Löschen vorgemerkte Objekte nicht referenziert werden
Diese Prüfung wird hier vorgenommen und kann von verschiedenen Stellen aus aufgerufen werden
- Parameters:
simulationVariant
- Simulationsvariante des dynamischen Objektsdata
- Konfigurationsdaten- Throws:
de.bsvrz.dav.daf.main.config.ConfigurationChangeException
- Wird geworfen wenn Referenzen ungültig sind
-
referenceAllowed
public boolean referenceAllowed(de.bsvrz.dav.daf.main.config.SystemObject systemObject)Gibttrue
zurück, wenn das angegebene Objekt referenziert werden darf. Ein Objekt darf nicht mehr Referenziert werden, wenn es fürs endgültige Löschen vorgemerkt wurde-- Returns:
true
, wenn das angegebene Objekt referenziert werden darf, sonstfalse
-