- Type Parameters:
K- Тип ключаV- Тип значения
- All Superinterfaces:
CollectionEventPublisher<EventMap<K,V>,V>,GetReadLock,GetWriteLock,LongScn<EventMap<K,V>,CollectionEvent<EventMap<K,V>,V>>,java.util.Map<K,V>,ReadWriteLockSupport,Scn<EventMap<K,V>,java.lang.Long,CollectionEvent<EventMap<K,V>,V>>
- All Known Implementing Classes:
BasicEventMap
public interface EventMap<K,V> extends java.util.Map<K,V>, CollectionEventPublisher<EventMap<K,V>,V>, ReadWriteLockSupport, LongScn<EventMap<K,V>,CollectionEvent<EventMap<K,V>,V>>
Карта (ключ/значение) с поддержкой уведомлений
-
Nested Class Summary
-
Method Summary
Modifier and Type Method Description default voidclear()Очищает карту от всех пар ключ/значениеdefault Vcompute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)Вычисляет значение ключа и изменяет карту согласно функции remappingFunctiondefault VcomputeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)Вычисляет значение для ключа, если ключ отсуствует, то создает значение и добавляет его в карту и возвращает его.default VcomputeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)Вычисляет значение для ключа, если ключ присуствует, то создает значение и добавляет его в карту и возвращает его.default booleancontainsKey(java.lang.Object key)Проверяет наличие узла в ключаdefault booleancontainsValue(java.lang.Object value)Проверяет наличие значения в картеdefault java.util.Set<java.util.Map.Entry<K,V>>entrySet()Возвращает множество парdefault voidfireCollectionEvent(CollectionEvent<EventMap<K,V>,V> event)Рассылка уведомления подписчикамdefault voidfireDeleted(K index, V e)Рассылка уведомления подписчикам о удалении элементаdefault voidfireInserted(K index, V e)Рассылка уведомления подписчикам о добавлении элементаdefault voidfireUpdated(K index, V old, V current)Рассылка уведомления подписчикам о обновлении элементаdefault Vget(java.lang.Object key)Возвращает по ключю значениеdefault VgetOrDefault(java.lang.Object key, V defaultValue)Возвращает значение по ключю или значение по умолчанию, если нет соответ ключаdefault booleanisEmpty()Проверяет что карта пустаяdefault java.util.Set<K>keySet()Возвращает множество ключейdefault Vmerge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)Слиение данных, для указанного ключа берет значение (oldValue) и если oldValue == null, то возвращает указанне значение, иначе вернет результат вызова функции remmaping( oldValue, value )default java.lang.AutoCloseableonChanged(TripleConsumer<K,V,V> ls)Добавляет подписчика га событие изменения/добавления/удаления данныхdefault java.lang.AutoCloseableonDeleted(TripleConsumer<K,V,V> ls)Добавляет подписчика на событие удаления элементаdefault java.lang.AutoCloseableonInserted(TripleConsumer<K,V,V> ls)Добавляет подписчика на событие добавления элементаdefault java.lang.AutoCloseableonUpdated(TripleConsumer<K,V,V> ls)Добавляет подписчика на событие обновления элементаdefault Vput(K key, V value)Указывает значение для ключаdefault voidputAll(java.util.Map<? extends K,? extends V> m)Добавляет карту в картуdefault VputIfAbsent(K key, V value)Добавляет значение для ключа, если ключ отсуствует картеdefault Vremove(java.lang.Object key)Удаляет пару для указанного ключаdefault booleanremove(java.lang.Object key, java.lang.Object value)Удаляет пару если совпадает ключ и значениеdefault Vreplace(K key, V value)заменяет значение для существующего ключаdefault booleanreplace(K key, V oldValue, V newValue)Заменяет значение ключа, если старое значение совпадает с указаннымdefault intsize()Возвращает кол-во пар значений в картеjava.util.Map<K,V>target()Возвращает целевую карту, над которой происходят преобразованияdefault java.util.Collection<V>values()Возвращает значенияMethods inherited from interface xyz.cofe.collection.CollectionEventPublisher
addCollectionEvent, addCollectionListener, addCollectionListener, getCollectionEventQueue, getCollectionListeners, hasCollectionListener, removeCollectionListener, withCollectionEventQueue, withCollectionEventQueueMethods inherited from interface xyz.cofe.ecolls.ReadWriteLockSupport
getReadLock, getWriteLock, readLock, readLock, writeLock, writeLockMethods inherited from interface xyz.cofe.scn.Scn
addScnChangedListener, addScnChangedListener, fireScnChanged, fireScnChanged, getScnChangedListeners, hasScnChangedListener, onScn, removeAllScnChangedListeners, removeScnChangedListener, scn, scn
-
Method Details
-
target
Возвращает целевую карту, над которой происходят преобразования- Returns:
- целевая карта
-
fireCollectionEvent
Description copied from interface:CollectionEventPublisherРассылка уведомления подписчикам- Specified by:
fireCollectionEventin interfaceCollectionEventPublisher<K,V>- Parameters:
event- уведомление
-
fireInserted
Рассылка уведомления подписчикам о добавлении элемента- Parameters:
index- индексe- элемент
-
fireUpdated
Рассылка уведомления подписчикам о обновлении элемента- Parameters:
index- индексold- предыдущее значениеcurrent- текущее значение
-
fireDeleted
Рассылка уведомления подписчикам о удалении элемента- Parameters:
index- индексe- элемент
-
onInserted
Добавляет подписчика на событие добавления элемента- Parameters:
ls- подписчик - fn( key:K, oldValue:V=null, newValue:V )- Returns:
- отписка от уведомлений
-
onUpdated
Добавляет подписчика на событие обновления элемента- Parameters:
ls- подписчик - fn( key:K, oldValue:V, newValue:V )- Returns:
- отписка от уведомлений
-
onDeleted
Добавляет подписчика на событие удаления элемента- Parameters:
ls- подписчик - fn( key:K, oldValue:V, newValue:V=null )- Returns:
- отписка от уведомлений
-
onChanged
Добавляет подписчика га событие изменения/добавления/удаления данных- Parameters:
ls- подписчик - fn( key:K, oldValue:V, newValue:V )- Returns:
- отписка от уведомлений
-
size
default int size()Возвращает кол-во пар значений в карте -
isEmpty
default boolean isEmpty()Проверяет что карта пустая -
containsKey
default boolean containsKey(java.lang.Object key)Проверяет наличие узла в ключа -
containsValue
default boolean containsValue(java.lang.Object value)Проверяет наличие значения в карте -
get
Возвращает по ключю значение -
keySet
Возвращает множество ключей -
values
Возвращает значения -
entrySet
Возвращает множество пар -
getOrDefault
Возвращает значение по ключю или значение по умолчанию, если нет соответ ключа -
put
Указывает значение для ключа -
remove
Удаляет пару для указанного ключа -
putAll
Добавляет карту в карту -
clear
default void clear()Очищает карту от всех пар ключ/значение -
putIfAbsent
Добавляет значение для ключа, если ключ отсуствует карте -
remove
default boolean remove(java.lang.Object key, java.lang.Object value)Удаляет пару если совпадает ключ и значение -
replace
Заменяет значение ключа, если старое значение совпадает с указанным -
replace
заменяет значение для существующего ключа -
computeIfAbsent
default V computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)Вычисляет значение для ключа, если ключ отсуствует, то создает значение и добавляет его в карту и возвращает его. -
computeIfPresent
default V computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)Вычисляет значение для ключа, если ключ присуствует, то создает значение и добавляет его в карту и возвращает его. -
compute
default V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)Вычисляет значение ключа и изменяет карту согласно функции remappingFunction -
merge
default V merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)Слиение данных, для указанного ключа берет значение (oldValue) и если oldValue == null, то возвращает указанне значение, иначе вернет результат вызова функции remmaping( oldValue, value )
-