private final class ObjectSet.ObjectSelectionBlockObjectSet extends AbstractObjectSelectionBlock implements ObjectSelectionBlockRegion
Kapselt einen Block mit festgelegter Menge. Enthält intern den Block ohne festgelegte Menge und ruft die Mengen von dessen Objektliste ab.
Modifier and Type | Field and Description |
---|---|
private ObjectSelectionBlock |
_innerBlock |
private ObjectCollectionChangeListener |
_innerChangeListener |
private boolean |
_isInitialized |
private MutableSetChangeListener |
_mutableSetChangeListener |
private java.util.Collection<MutableSet> |
_mutableSets
Hier werden die gefundenen Mengen zwischengespeichert um sich auf Änderungen anzumelden
|
private java.util.Collection<SystemObject> |
_objectCache
Hier werden die Objekte gespeichert, die in dieser Region enthalten sind (die also in der angegebenen Menge von den angegebenen Objekten vorkommen)
|
private java.lang.String |
_objectSetName |
private java.util.Collection<ConfigurationObjectType> |
_relevantTypes
Hier werden zu Optimierungsgründen die Typen gespeichert, die überhaupt Mengen mit diesem Namen unterstützen.
|
Constructor and Description |
---|
ObjectSelectionBlockObjectSet(java.lang.String objectSetName,
ObjectSelectionBlock innerBlock) |
Modifier and Type | Method and Description |
---|---|
private void |
addToListIfTypeHasObjectSet(java.lang.String objectSetName,
ConfigurationObjectType configurationObjectType,
java.util.Collection<ConfigurationObjectType> resultList) |
boolean |
contains(SystemObject object)
Prüft ob das übergebene Objekt in diesem Block enthalten ist
|
private void |
deinitialize() |
void |
dispose()
Markiert das Objekt als unbenutzt, sodass angemeldete Listener etc. abgemeldet werden können
|
java.util.Collection<SystemObject> |
getAllObjects(java.util.Collection<? extends SystemObjectType> types)
Gibt alle Objekte in dem Block zurück.
|
java.util.Collection<SystemObjectType> |
getAllObjectTypes()
Wird derzeit nicht gebraucht, da Mengenabfragen nicht verschachtelt werden können.
|
java.util.Collection<Region> |
getRegions()
Gibt die referenzierten Regionen zurück
|
private void |
initialize() |
private java.util.Collection<ConfigurationObjectType> |
initializeRelevantObjectTypes(java.lang.String objectSetName) |
private void |
refreshObjectCache() |
private void |
startMutableSetChangeListeners() |
private void |
stopMutableSetChangeListeners() |
java.lang.String |
toString() |
addChangeListener, notifyBlockChanged, removeChangeListener, startChangeListener, stopChangeListener
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addChangeListener, removeChangeListener
private final java.util.Collection<SystemObject> _objectCache
Hier werden die Objekte gespeichert, die in dieser Region enthalten sind (die also in der angegebenen Menge von den angegebenen Objekten vorkommen)
private java.util.Collection<ConfigurationObjectType> _relevantTypes
Hier werden zu Optimierungsgründen die Typen gespeichert, die überhaupt Mengen mit diesem Namen unterstützen. Objekte von anderen Typen müssen nicht beachtet werden.
private final java.util.Collection<MutableSet> _mutableSets
Hier werden die gefundenen Mengen zwischengespeichert um sich auf Änderungen anzumelden
private final ObjectCollectionChangeListener _innerChangeListener
private final MutableSetChangeListener _mutableSetChangeListener
private final java.lang.String _objectSetName
private final ObjectSelectionBlock _innerBlock
private boolean _isInitialized
public ObjectSelectionBlockObjectSet(java.lang.String objectSetName, ObjectSelectionBlock innerBlock)
private void initialize()
public void dispose()
ObjectSelectionBlock
Markiert das Objekt als unbenutzt, sodass angemeldete Listener etc. abgemeldet werden können
dispose
in interface ObjectSelectionBlock
dispose
in class AbstractObjectSelectionBlock
private java.util.Collection<ConfigurationObjectType> initializeRelevantObjectTypes(java.lang.String objectSetName)
private void addToListIfTypeHasObjectSet(java.lang.String objectSetName, ConfigurationObjectType configurationObjectType, java.util.Collection<ConfigurationObjectType> resultList)
private void refreshObjectCache()
private void deinitialize()
private void stopMutableSetChangeListeners()
private void startMutableSetChangeListeners()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean contains(SystemObject object)
ObjectSelectionBlock
Prüft ob das übergebene Objekt in diesem Block enthalten ist
contains
in interface ObjectSelectionBlock
object
- Testobjektpublic java.util.Collection<SystemObjectType> getAllObjectTypes()
Wird derzeit nicht gebraucht, da Mengenabfragen nicht verschachtelt werden können. Implementierung schadet aber nicht und ist trivial.
getAllObjectTypes
in interface ObjectSelectionBlock
public java.util.Collection<SystemObject> getAllObjects(java.util.Collection<? extends SystemObjectType> types)
ObjectSelectionBlock
Gibt alle Objekte in dem Block zurück. Der Aufruf sollte, falls möglich, vermieden werden, da der Vorgang je nach Definition sehr lange dauern kann
getAllObjects
in interface ObjectSelectionBlock
types
- Liste mit Systemobjekttypen die beachtet werden sollen.public java.util.Collection<Region> getRegions()
ObjectSelectionBlockRegion
Gibt die referenzierten Regionen zurück
getRegions
in interface ObjectSelectionBlockRegion