Class ObjectExchangeManager
- java.lang.Object
-
- de.bsvrz.kex.kexdav.main.AbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>
-
- de.bsvrz.kex.kexdav.objectexchange.ObjectExchangeManager
-
- All Implemented Interfaces:
ObjectCollectionChangeListener
,ObjectCollectionParent
,RegionManager
public class ObjectExchangeManager extends AbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject> implements ObjectCollectionParent, ObjectCollectionChangeListener, RegionManager
Verwaltung Objektaustausche
-
-
Constructor Summary
Constructors Constructor Description ObjectExchangeManager(RemoteDaVParameter parameter, ManagerInterface manager, CorrespondingObjectManager correspondingObjectManager)
Konstruktor
-
Method Summary
Modifier and Type Method Description void
blockChanged()
Wird aufgerufen, wenn sich ein Block ändertprotected CopyableCorrespondingObject
createExchange(ObjectExchangeDescription description)
Template-Methode, die anhand einer Description ein Datenaustausch-Klasse erstelltprotected java.util.Set<ObjectExchangeDescription>
getExchangeDescriptionsFromNewParameters(RemoteDaVParameter parameters)
Template-Methode, die für einen Parameter-Datensatz alle Datenbeschreibungen zurückgeben sollRegion
getRegion(de.bsvrz.dav.daf.main.config.SystemObject regionObject)
Gibt die Region-Klasse zurück die zu dem angeforderten Systemobjekt gehört.java.lang.Object
getUpdateLock()
Um immer einen konsistenten Zustand zu haben, darf immer nur ein DataLoader gleichzeitig pro RegionManager geupdatet werden.boolean
isDisabled(Region region)
void
objectChanged(DataLoader object)
Wird aufgerufen un dem AccessControlManager zu informieren, dass ein verwaltetes Objekt sich geändert hat.protected void
removeExchange(CopyableCorrespondingObject exchange)
Template-Methode, die eine Datenaustauschklasse deaktiviert bzw. entfernt-
Methods inherited from class de.bsvrz.kex.kexdav.main.AbstractKExDaVExchange
getExchangeMap, getManager, notifyNewExchangeDescriptions, setParameter, start, stop
-
-
-
-
Constructor Detail
-
ObjectExchangeManager
public ObjectExchangeManager(RemoteDaVParameter parameter, ManagerInterface manager, CorrespondingObjectManager correspondingObjectManager)
Konstruktor- Parameters:
parameter
- Parametermanager
- VerwaltungcorrespondingObjectManager
- Verwaltung korrespondierende Objekte
-
-
Method Detail
-
createExchange
protected CopyableCorrespondingObject createExchange(ObjectExchangeDescription description) throws KExDaVException
Description copied from class:AbstractKExDaVExchange
Template-Methode, die anhand einer Description ein Datenaustausch-Klasse erstellt- Specified by:
createExchange
in classAbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>
- Parameters:
description
- Description- Returns:
- Datenaustausch-Klasse
- Throws:
KExDaVException
- Falls ein Fehler auftritt
-
removeExchange
protected void removeExchange(CopyableCorrespondingObject exchange)
Description copied from class:AbstractKExDaVExchange
Template-Methode, die eine Datenaustauschklasse deaktiviert bzw. entfernt- Specified by:
removeExchange
in classAbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>
- Parameters:
exchange
- Datenaustauschklasse
-
getExchangeDescriptionsFromNewParameters
protected java.util.Set<ObjectExchangeDescription> getExchangeDescriptionsFromNewParameters(RemoteDaVParameter parameters)
Description copied from class:AbstractKExDaVExchange
Template-Methode, die für einen Parameter-Datensatz alle Datenbeschreibungen zurückgeben soll- Specified by:
getExchangeDescriptionsFromNewParameters
in classAbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>
- Parameters:
parameters
- Parameter- Returns:
- Set mit Datenbeschreibungen
-
isDisabled
public boolean isDisabled(Region region)
- Specified by:
isDisabled
in interfaceObjectCollectionParent
-
getRegion
public Region getRegion(de.bsvrz.dav.daf.main.config.SystemObject regionObject)
Description copied from interface:RegionManager
Gibt die Region-Klasse zurück die zu dem angeforderten Systemobjekt gehört.- Specified by:
getRegion
in interfaceObjectCollectionParent
- Specified by:
getRegion
in interfaceRegionManager
- Parameters:
regionObject
- Systemobjekt, das eine Region repräsentiert- Returns:
- Region-Klasse die Abfragen auf eine Region ermöglicht
-
objectChanged
public void objectChanged(DataLoader object)
Description copied from interface:RegionManager
Wird aufgerufen un dem AccessControlManager zu informieren, dass ein verwaltetes Objekt sich geändert hat. Der AccessControlManager wird daraufhin nach Benutzer-Objekten suchen, die dieses Objekt verwenden und eine Benachrichtigung senden, dass sich die Rechte des Benutzers geändert haben und eventuelle vorhandene Anmeldungen entfernt werden müssen.- Specified by:
objectChanged
in interfaceRegionManager
- Parameters:
object
- Objekt das sich geändert hat
-
getUpdateLock
public java.lang.Object getUpdateLock()
Description copied from interface:RegionManager
Um immer einen konsistenten Zustand zu haben, darf immer nur ein DataLoader gleichzeitig pro RegionManager geupdatet werden. Dazu wird auf dieses dummy-Objekt synchronisiert- Specified by:
getUpdateLock
in interfaceRegionManager
- Returns:
- Objekt auf das Synchronisiert werden soll
-
blockChanged
public void blockChanged()
Description copied from interface:ObjectCollectionChangeListener
Wird aufgerufen, wenn sich ein Block ändert- Specified by:
blockChanged
in interfaceObjectCollectionChangeListener
-
-