Package org.djutils.event.collection
Class EventProducingMap<K,V>
- java.lang.Object
-
- org.djutils.event.LocalEventProducer
-
- org.djutils.event.collection.EventProducingMap<K,V>
-
- Type Parameters:
K- the key typeV- the value type
- All Implemented Interfaces:
Serializable,Remote,Map<K,V>,EventProducer
public class EventProducingMap<K,V> extends LocalEventProducer implements Map<K,V>, Serializable
The Event producing map provides a map to which one can subscribe interest in entry changes. This class does not keep track of changes which take place indirectly. One is for example not notified onmap.iterator.remove(). A listener must subscribe to the iterator, key set, etc. individually.Copyright (c) 2002-2023 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djutils.org. The DJUTILS project is distributed under a three-clause BSD-style license, which can be found at https://djutils.org/docs/license.html. This class was originally part of the DSOL project, see https://simulation.tudelft.nl/dsol/manual.
- Author:
- Peter Jacobs , Alexander Verbraeck
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static EventTypeOBJECT_ADDED_EVENTOBJECT_ADDED_EVENT is fired on new entries.static EventTypeOBJECT_CHANGED_EVENTOBJECT_CHANGED_EVENT is fired on change of one or more entries.static EventTypeOBJECT_REMOVED_EVENTOBJECT_REMOVED_EVENT is fired on removal of entries.-
Fields inherited from interface org.djutils.event.EventProducer
FIRST_POSITION, LAST_POSITION
-
-
Constructor Summary
Constructors Constructor Description EventProducingMap(Map<K,V> wrappedMap)constructs a new EventProducingMap.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()booleancontainsKey(Object key)booleancontainsValue(Object value)Set<Map.Entry<K,V>>entrySet()Vget(Object key)booleanisEmpty()Set<K>keySet()Vput(K key, V value)voidputAll(Map<? extends K,? extends V> map)Vremove(Object key)intsize()Collection<V>values()-
Methods inherited from class org.djutils.event.LocalEventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, getEventListenerMap, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
-
-
-
-
Field Detail
-
OBJECT_ADDED_EVENT
public static final EventType OBJECT_ADDED_EVENT
OBJECT_ADDED_EVENT is fired on new entries.
-
OBJECT_REMOVED_EVENT
public static final EventType OBJECT_REMOVED_EVENT
OBJECT_REMOVED_EVENT is fired on removal of entries.
-
OBJECT_CHANGED_EVENT
public static final EventType OBJECT_CHANGED_EVENT
OBJECT_CHANGED_EVENT is fired on change of one or more entries.
-
-