Key - Тип ключаValue - Тип значенияpublic class BasicEventMap<Key,Value> extends MapWrapper<Key,Value> implements EventMap<Key,Value>, GetListenersHelper
| Modifier and Type | Field and Description |
|---|---|
protected static LockMethod |
clearMethod |
protected static LockMethod |
containsKeyMethod |
protected static LockMethod |
containsValueMethod |
protected static LockMethod |
entrySetMethod |
protected Queue<KeyValueMapEvent<Key,Value>> |
eventQueue
Очередь сообщений
|
protected static LockMethod |
getMethod |
protected static LockMethod |
getWrappedMapMethod |
protected static LockMethod |
isEmptyMethod |
protected static LockMethod |
keySetMethod |
protected ListenersHelper<EventMapListener,MapEvent> |
listeners |
protected static LockMethod |
putMethod |
protected static LockMethod |
setWrappedMapMethod |
protected static LockMethod |
sizeMethod |
protected static LockMethod |
valuesMethod |
| Constructor and Description |
|---|
BasicEventMap()
Конструктор по умолчанию
|
BasicEventMap(Map<Key,Value> wrappedMap)
Конструктор
|
| Modifier and Type | Method and Description |
|---|---|
Closeable |
addEventMapListener(EventMapListener<Key,Value> listener)
Добавляет подписчика измений
|
Closeable |
addEventMapListener(EventMapListener<Key,Value> listener,
boolean weakRef)
Добавляет подписчика измений
|
protected void |
addEventToQueue(KeyValueMapEvent<Key,Value> event)
Добавляет уведомления в очередь с учетом блокировки
|
void |
clear() |
boolean |
containsEventMapListener(EventMapListener<Key,Value> listener)
Проверяет что указанный подписчик прослушивает изменения
|
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
protected DeletedMapEvent<Key,Value> |
createDeleted(Key k,
Value v)
Создает уведомление о удалении
|
protected InsertedMapEvent<Key,Value> |
createInserted(Key k,
Value v)
Создает уведомление о добавлении
|
protected UpdatedMapEvent<Key,Value> |
createUpdated(Key k,
Value v,
Value old)
Создает уведомление о обновление
|
Set<Map.Entry<Key,Value>> |
entrySet() |
protected void |
fireDeleted(Key k,
Value v)
Сообщает о удалении ключа
|
protected void |
fireEvent(MapEvent event)
Увеомляет подписчиков о сообщении
|
protected void |
fireInserted(Key k,
Value v)
Сообщает при добавлении ключа
|
protected void |
fireQueueEvents()
Выполняет уведомления из очереди с учетем блокировки
|
protected void |
fireUpdated(Key k,
Value v,
Value old)
Сообщает о измении ключа
|
Value |
get(Object key) |
ListenersHelper |
getListenersHelper() |
Lock |
getListenersLock()
Возвращает блокировку на listeners методы
|
Map<Key,Value> |
getWrappedMap()
Возвращает исходную карту
|
boolean |
isEmpty() |
Set<Key> |
keySet() |
protected boolean |
listenObjectChanged() |
protected Object |
lockRun(Func0 run)
Выполнение кода в блокировке
|
protected Object |
lockRun(Func0 run,
LockMethod method)
Выполнение кода в блокировке
|
Closeable |
onChanged(Func3<Object,? super Key,? super Value,? super Value> fn)
Добавляет подписчика на изменения
|
Closeable |
onChanged(Func3<Object,? super Key,? super Value,? super Value> fn,
boolean weak)
Добавляет подписчика на изменения
|
Closeable |
onDeleted(Func3<Object,? super Key,? super Value,? super Value> fn)
Добавляет подписчика только на удаление из карты
|
Closeable |
onDeleted(Func3<Object,? super Key,? super Value,? super Value> fn,
boolean weak)
Добавляет подписчика только на удаление из карты
|
Closeable |
onInserted(Func3<Object,? super Key,? super Value,? super Value> fn)
Добавляет подписчика только на добавление в карту
|
Closeable |
onInserted(Func3<Object,? super Key,? super Value,? super Value> fn,
boolean weak)
Добавляет подписчика только на добавление в карту
|
Closeable |
onUpdated(Func3<Object,? super Key,? super Value,? super Value> fn)
Добавляет подписчика только на изменение значения в карте, не добавление, ни удаление
|
Closeable |
onUpdated(Func3<Object,? super Key,? super Value,? super Value> fn,
boolean weak)
Добавляет подписчика только на изменение значения в карте, не добавление, ни удаление
|
Value |
put(Key key,
Value value) |
void |
putAll(Map<? extends Key,? extends Value> m) |
Value |
remove(Object key) |
void |
removeEventMapListener(EventMapListener<Key,Value> listener)
Удаляет подписчика измений
|
protected boolean |
sendNewListOnNewWrapperMap()
Генерировать события Insert/Delete при вызове setWrappedMap
|
void |
setWrappedMap(Map<Key,Value> wrappedMap)
Устанавливает новую карту
|
int |
size() |
Collection<Value> |
values() |
equalsclone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAllprotected final Queue<KeyValueMapEvent<Key,Value>> eventQueue
protected final ListenersHelper<EventMapListener,MapEvent> listeners
protected static final LockMethod clearMethod
protected static final LockMethod putMethod
protected static final LockMethod setWrappedMapMethod
protected static final LockMethod isEmptyMethod
protected static final LockMethod containsKeyMethod
protected static final LockMethod containsValueMethod
protected static final LockMethod entrySetMethod
protected static final LockMethod getMethod
protected static final LockMethod keySetMethod
protected static final LockMethod sizeMethod
protected static final LockMethod valuesMethod
protected static final LockMethod getWrappedMapMethod
public Lock getListenersLock()
protected boolean listenObjectChanged()
protected void addEventToQueue(KeyValueMapEvent<Key,Value> event)
event - уведомленияprotected void fireQueueEvents()
public ListenersHelper getListenersHelper()
getListenersHelper in interface GetListenersHelperpublic Closeable addEventMapListener(EventMapListener<Key,Value> listener)
EventMapSenderaddEventMapListener in interface EventMapSender<Key,Value>listener - Подписчикpublic Closeable addEventMapListener(EventMapListener<Key,Value> listener, boolean weakRef)
EventMapSenderaddEventMapListener in interface EventMapSender<Key,Value>listener - ПодписчикweakRef - Добавить подписчика как weak ссылкуpublic void removeEventMapListener(EventMapListener<Key,Value> listener)
EventMapSenderremoveEventMapListener in interface EventMapSender<Key,Value>listener - Подписчикpublic boolean containsEventMapListener(EventMapListener<Key,Value> listener)
EventMapSendercontainsEventMapListener in interface EventMapSender<Key,Value>listener - Подписчикpublic Closeable onChanged(Func3<Object,? super Key,? super Value,? super Value> fn)
EventMapSenderonChanged in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
public Closeable onChanged(Func3<Object,? super Key,? super Value,? super Value> fn, boolean weak)
EventMapSenderonChanged in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
weak - Добавить подписчика как weak ссылкуpublic Closeable onUpdated(Func3<Object,? super Key,? super Value,? super Value> fn)
EventMapSenderonUpdated in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
public Closeable onUpdated(Func3<Object,? super Key,? super Value,? super Value> fn, boolean weak)
EventMapSenderonUpdated in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
weak - Добавить подписчика как weak ссылкуpublic Closeable onInserted(Func3<Object,? super Key,? super Value,? super Value> fn)
EventMapSenderonInserted in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
public Closeable onInserted(Func3<Object,? super Key,? super Value,? super Value> fn, boolean weak)
EventMapSenderonInserted in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
weak - Добавить подписчика как weak ссылкуpublic Closeable onDeleted(Func3<Object,? super Key,? super Value,? super Value> fn)
EventMapSenderonDeleted in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
public Closeable onDeleted(Func3<Object,? super Key,? super Value,? super Value> fn, boolean weak)
EventMapSenderonDeleted in interface EventMapSender<Key,Value>fn -
Функция(Key ключ, Value староеЗначение, Value новоеЗначение):Object
weak - Добавить подписчика как weak ссылкуprotected void fireEvent(MapEvent event)
event - Событиеprotected void fireDeleted(Key k, Value v)
k - Ключv - Значениеprotected DeletedMapEvent<Key,Value> createDeleted(Key k, Value v)
k - ключv - значениеprotected void fireInserted(Key k, Value v)
k - Ключv - Значениеprotected InsertedMapEvent<Key,Value> createInserted(Key k, Value v)
k - ключv - значениеprotected void fireUpdated(Key k, Value v, Value old)
k - Ключv - Новое значениеold - Старое значениеprotected UpdatedMapEvent<Key,Value> createUpdated(Key k, Value v, Value old)
k - ключv - новое значениеold - старое значениеprotected Object lockRun(Func0 run)
run - код-функцияprotected Object lockRun(Func0 run, LockMethod method)
run - кодmethod - метод map для которого вызывается блокировкаpublic void clear()
protected boolean sendNewListOnNewWrapperMap()
public void setWrappedMap(Map<Key,Value> wrappedMap)
setWrappedMap in class MapWrapper<Key,Value>wrappedMap - картаpublic boolean isEmpty()
public boolean containsKey(Object key)
containsKey in interface Map<Key,Value>containsKey in class MapWrapper<Key,Value>public boolean containsValue(Object value)
containsValue in interface Map<Key,Value>containsValue in class MapWrapper<Key,Value>public int size()
public Collection<Value> values()
public Map<Key,Value> getWrappedMap()
MapWrappergetWrappedMap in class MapWrapper<Key,Value>Copyright © 2019. All rights reserved.