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 voidblockChanged()Wird aufgerufen, wenn sich ein Block ändertprotected CopyableCorrespondingObjectcreateExchange(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 sollRegiongetRegion(de.bsvrz.dav.daf.main.config.SystemObject regionObject)Gibt die Region-Klasse zurück die zu dem angeforderten Systemobjekt gehört.java.lang.ObjectgetUpdateLock()Um immer einen konsistenten Zustand zu haben, darf immer nur ein DataLoader gleichzeitig pro RegionManager geupdatet werden.booleanisDisabled(Region region)voidobjectChanged(DataLoader object)Wird aufgerufen un dem AccessControlManager zu informieren, dass ein verwaltetes Objekt sich geändert hat.protected voidremoveExchange(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:AbstractKExDaVExchangeTemplate-Methode, die anhand einer Description ein Datenaustausch-Klasse erstellt- Specified by:
createExchangein 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:AbstractKExDaVExchangeTemplate-Methode, die eine Datenaustauschklasse deaktiviert bzw. entfernt- Specified by:
removeExchangein classAbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>- Parameters:
exchange- Datenaustauschklasse
-
getExchangeDescriptionsFromNewParameters
protected java.util.Set<ObjectExchangeDescription> getExchangeDescriptionsFromNewParameters(RemoteDaVParameter parameters)
Description copied from class:AbstractKExDaVExchangeTemplate-Methode, die für einen Parameter-Datensatz alle Datenbeschreibungen zurückgeben soll- Specified by:
getExchangeDescriptionsFromNewParametersin classAbstractKExDaVExchange<ObjectExchangeDescription,CopyableCorrespondingObject>- Parameters:
parameters- Parameter- Returns:
- Set mit Datenbeschreibungen
-
isDisabled
public boolean isDisabled(Region region)
- Specified by:
isDisabledin interfaceObjectCollectionParent
-
getRegion
public Region getRegion(de.bsvrz.dav.daf.main.config.SystemObject regionObject)
Description copied from interface:RegionManagerGibt die Region-Klasse zurück die zu dem angeforderten Systemobjekt gehört.- Specified by:
getRegionin interfaceObjectCollectionParent- Specified by:
getRegionin 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:RegionManagerWird 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:
objectChangedin interfaceRegionManager- Parameters:
object- Objekt das sich geändert hat
-
getUpdateLock
public java.lang.Object getUpdateLock()
Description copied from interface:RegionManagerUm 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:
getUpdateLockin interfaceRegionManager- Returns:
- Objekt auf das Synchronisiert werden soll
-
blockChanged
public void blockChanged()
Description copied from interface:ObjectCollectionChangeListenerWird aufgerufen, wenn sich ein Block ändert- Specified by:
blockChangedin interfaceObjectCollectionChangeListener
-
-