public class DafMutableCollectionSupport extends Object
Modifier and Type | Class and Description |
---|---|
private static class |
DafMutableCollectionSupport.ListenersAndElements
Hilfsobjekt mit den angemeldeten Listenern etc.
|
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug
Logger für Debug-Ausgaben.
|
private MutableCollection |
_mutableCollection
Zugehörige dynamische Menge oder dynamischer Typ.
|
private HashMap<Short,DafMutableCollectionSupport.ListenersAndElements> |
_simVariant2ListenersAndElements
Map mit der Zuordnung von Simulationsvarianten zu einem Hilfsobjekt an dem die Liste der zugehörigen angemeldeten Listenern etc.
|
Constructor and Description |
---|
DafMutableCollectionSupport(MutableCollection mutableCollection)
Erzeugt ein neues Verwaltungsobjekt.
|
Modifier and Type | Method and Description |
---|---|
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 void |
ensureSubscribedState(DafMutableCollectionSupport.ListenersAndElements listenersAndElements,
short simulationVariant)
Stellt sicher, dass eine und höchstens eine Anmeldung bei der Konfiguration auf Änderungen der Elemente der zugehörigen dynamischen Zusammenstellung
unter der angegebenen Simulationsvariante vorliegt.
|
private void |
ensureUnsubscribedState(DafMutableCollectionSupport.ListenersAndElements listenersAndElements,
short simulationVariant)
Stellt sicher, dass keine Anmeldung bei der Konfiguration auf Änderungen der Elemente der zugehörigen dynamischen Zusammenstellung unter der angegebenen
Simulationsvariante vorliegt.
|
List<SystemObject> |
getElements(short simulationVariant)
Bestimmt die aktuellen Elemente der zugehörigen dynamischen Menge oder des zugehörigen dynamischen Typs unter Berücksichtigung der Simulationsvariante.
|
private DafMutableCollectionSupport.ListenersAndElements |
getListenersAndElements(short simulationVariant,
boolean create)
Bestimmt das Hilfsobjekt mit den angemeldeten Listenern etc.
|
boolean |
removeChangeListener(short simulationVariant,
MutableCollectionChangeListener changeListener)
Meldet einen zuvor angemeldeten Listener wieder ab.
|
private static final Debug _debug
private MutableCollection _mutableCollection
private HashMap<Short,DafMutableCollectionSupport.ListenersAndElements> _simVariant2ListenersAndElements
public DafMutableCollectionSupport(MutableCollection mutableCollection)
mutableCollection
- dynamische Menge oder dynamischer Typ dessen Anmeldungen durch dieses Objekt verwaltet werden.public void addChangeListener(short simulationVariant, MutableCollectionChangeListener changeListener)
simulationVariant
- Simulationsvariante unter der die dynamische Zusammenstellung betrachtet werden soll.changeListener
- Listener, der bei Änderungen der Elemente informiert werden soll.public boolean removeChangeListener(short simulationVariant, MutableCollectionChangeListener changeListener)
simulationVariant
- Simulationsvariante der entsprechenden Anmeldung.changeListener
- Listener der entsprechenden Anmeldung.true
, falls ein entsprechender Listener gefunden und abgemeldet wurde.public void collectionChanged(short simulationVariant, List<SystemObject> addedElements, List<SystemObject> removedElements)
simulationVariant
- Simulationsvariante auf die sich die Änderung bezieht.addedElements
- Hinzugefügte Elemente.removedElements
- Entfernte Elemente.private void ensureSubscribedState(DafMutableCollectionSupport.ListenersAndElements listenersAndElements, short simulationVariant)
listenersAndElements
- Hilfsobjekt aus der Map _simVariant2ListenersAndElements
für die entsprechende Simulationsvariante.simulationVariant
- Simulationsvariante, die angemeldet werden soll.private void ensureUnsubscribedState(DafMutableCollectionSupport.ListenersAndElements listenersAndElements, short simulationVariant)
listenersAndElements
- Hilfsobjekt aus der Map _simVariant2ListenersAndElements
für die entsprechende Simulationsvariante.simulationVariant
- Simulationsvariante, die abgemeldet werden soll.private DafMutableCollectionSupport.ListenersAndElements getListenersAndElements(short simulationVariant, boolean create)
_simVariant2ListenersAndElements
für die entsprechende
Simulationsvariante.simulationVariant
- Simulationsvariante des Hilfsobjekts mit den gewünschten Listenerncreate
- Wenn true
, dann wird eine neues Hilfsobjekt erzeugt und in die Map eingetragen, wenn noch kein Hilfsobjekt mit den
angemeldeten Listenern für diese Simulationsvariante vorhanden war.null
, falls kein Hilfsobjekt vorhanden war und kein neues erzeugt werden sollte.public List<SystemObject> getElements(short simulationVariant)
simulationVariant
- Simulationsvariante unter der die dynamische Zusammenstellung betrachtet werden soll.