de.bsvrz.puk.config.configFile.datamodel
Class ConfigMutableCollectionSupport

java.lang.Object
  extended by de.bsvrz.puk.config.configFile.datamodel.ConfigMutableCollectionSupport

public class ConfigMutableCollectionSupport
extends Object

Hilfsklasse zur Verwaltung von Anmeldungen auf Änderungen der Elemente von dynamischen Typen und dynamischen Mengen.

Author:
Kappich Systemberatung

Field Summary
private  MutableCollection _mutableCollection
          Zugehörige dynamische Menge oder dynamischer Typ.
private  HashMap<Short,List<MutableCollectionChangeListener>> _simVariant2Listeners
          Map mit der Zuordnung von Simulationsvarianten zu der Liste mit den zugehörigen angemeldeten Listenern.
 
Constructor Summary
ConfigMutableCollectionSupport(MutableCollection mutableCollection)
          Erzeugt ein neues Verwaltungsobjekt.
 
Method Summary
 void addChangeListener(short simulationVariant, MutableCollectionChangeListener changeListener)
          Meldet einen Listener auf Änderungen der Elemente einer dynamischen Menge oder eines dynamischen Typs unter Berücksichtigung der Simulationsvariante an.
 void collectionChanged(short simulationVariant, List<SystemObject> addedElements, List<SystemObject> removedElements)
          Informiert die angemeldeten Listener über hinzugefügte oder entfernte Elemente der zugehörigen dynamischen Zusammenstellung.
private  List<MutableCollectionChangeListener> getListeners(short simulationVariant, boolean create)
          Bestimmt die Liste der angemeldeten Listener einer vorgegebenen Simulationsvariante.
 boolean removeChangeListener(short simulationVariant, MutableCollectionChangeListener changeListener)
          Meldet einen zuvor angemeldeten Listener wieder ab.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_mutableCollection

private MutableCollection _mutableCollection
Zugehörige dynamische Menge oder dynamischer Typ.


_simVariant2Listeners

private HashMap<Short,List<MutableCollectionChangeListener>> _simVariant2Listeners
Map mit der Zuordnung von Simulationsvarianten zu der Liste mit den zugehörigen angemeldeten Listenern.

Constructor Detail

ConfigMutableCollectionSupport

public ConfigMutableCollectionSupport(MutableCollection mutableCollection)
Erzeugt ein neues Verwaltungsobjekt.

Parameters:
mutableCollection - dynamische Menge oder dynamischer Typ dessen Anmeldungen durch dieses Objekt verwaltet werden.
Method Detail

addChangeListener

public void addChangeListener(short simulationVariant,
                              MutableCollectionChangeListener changeListener)
Meldet einen Listener auf Änderungen der Elemente einer dynamischen Menge oder eines dynamischen Typs unter Berücksichtigung der Simulationsvariante an.

Parameters:
simulationVariant - Simulationsvariante unter der die dynamische Zusammenstellung betrachtet werden soll.
changeListener - Listener, der bei Änderungen der Elemente informiert werden soll.

removeChangeListener

public boolean removeChangeListener(short simulationVariant,
                                    MutableCollectionChangeListener changeListener)
Meldet einen zuvor angemeldeten Listener wieder ab.

Parameters:
simulationVariant - Simulationsvariante der entsprechenden Anmeldung.
changeListener - Listener der entsprechenden Anmeldung.
Returns:
true, falls ein entsprechender Listener gefunden und abgemeldet wurde.

collectionChanged

public void collectionChanged(short simulationVariant,
                              List<SystemObject> addedElements,
                              List<SystemObject> removedElements)
Informiert die angemeldeten Listener über hinzugefügte oder entfernte Elemente der zugehörigen dynamischen Zusammenstellung.

Parameters:
simulationVariant - Simulationsvariante auf die sich die Änderung bezieht.
addedElements - Hinzugefügte Elemente.
removedElements - Entfernte Elemente.

getListeners

private List<MutableCollectionChangeListener> getListeners(short simulationVariant,
                                                           boolean create)
Bestimmt die Liste der angemeldeten Listener einer vorgegebenen Simulationsvariante.

Parameters:
simulationVariant - Simulationsvariante der gewünschten Listener
create - Wenn true, dann wird eine leere Liste erzeugt, wenn noch kein Listener dieser Simulationsvariante vorhanden war.
Returns:
Liste mit den gewünschten Listenern oder null, falls kein Listener vorhanden war und keine leere Liste erzeugt werden sollte.