-
- Type Parameters:
C- Тип коллекцииE- Тип элемента коллекции
- All Known Subinterfaces:
EventList<E>,EventMap<K,V>,EventSet<E>,PreEventList<E>
- All Known Implementing Classes:
BasicEventList,BasicEventMap,BasicEventSet,ClassSet,MappedList,StdEventList
public interface CollectionEventPublisher<C,E>Подписка на события изменнения коллекции
-
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default voidaddCollectionEvent(CollectionEvent<C,E> ev)Добавляет событие в очередьdefault AutoCloseableaddCollectionListener(boolean weak, CollectionListener<C,E> listener)Добавляет подписчикаdefault AutoCloseableaddCollectionListener(CollectionListener<C,E> listener)Добавляет подписчикаdefault voidfireCollectionEvent(CollectionEvent<C,E> event)Рассылка уведомления подписчикамdefault ConcurrentLinkedQueue<CollectionEvent<C,E>>getCollectionEventQueue()Очередь событийdefault Set<CollectionListener<C,E>>getCollectionListeners()Получение списка подписчиковdefault booleanhasCollectionListener(CollectionListener<C,E> listener)Проверка наличия подписчика в списке обработкиdefault ListenersHelper<CollectionListener<C,E>,CollectionEvent<C,E>>listenerHelper()Возвращает помошника подписокdefault voidremoveCollectionListener(CollectionListener<C,E> listener)Удаление подписчика из списка обработкиdefault voidwithCollectionEventQueue(Runnable eventBlock)Запустить выполнение кода в блоке, и не рассылать уведомления до завершения блока кодаdefault <T> TwithCollectionEventQueue(Supplier<T> eventBlock)Запустить выполнение кода в блоке, и не рассылать уведомления до завершения блока кода
-
-
-
Method Detail
-
listenerHelper
default ListenersHelper<CollectionListener<C,E>,CollectionEvent<C,E>> listenerHelper()
Возвращает помошника подписок- Returns:
- помошник
-
addCollectionListener
default AutoCloseable addCollectionListener(boolean weak, CollectionListener<C,E> listener)
Добавляет подписчика- Parameters:
weak- Добавить как weak (true) ссылку или как обычную (false)listener- Подписчик- Returns:
- Интерфейс для отсоединения подписчика
-
addCollectionListener
default AutoCloseable addCollectionListener(CollectionListener<C,E> listener)
Добавляет подписчика- Parameters:
listener- Подписчик- Returns:
- Интерфейс для отсоединения подписчика
-
removeCollectionListener
default void removeCollectionListener(CollectionListener<C,E> listener)
Удаление подписчика из списка обработки- Parameters:
listener- Подписчик
-
hasCollectionListener
default boolean hasCollectionListener(CollectionListener<C,E> listener)
Проверка наличия подписчика в списке обработки- Parameters:
listener- Подписчик- Returns:
- true - есть в списке обработки
-
getCollectionListeners
default Set<CollectionListener<C,E>> getCollectionListeners()
Получение списка подписчиков- Returns:
- подписчики
-
fireCollectionEvent
default void fireCollectionEvent(CollectionEvent<C,E> event)
Рассылка уведомления подписчикам- Parameters:
event- уведомление
-
withCollectionEventQueue
default void withCollectionEventQueue(Runnable eventBlock)
Запустить выполнение кода в блоке, и не рассылать уведомления до завершения блока кода- Parameters:
eventBlock- блок кода
-
withCollectionEventQueue
default <T> T withCollectionEventQueue(Supplier<T> eventBlock)
Запустить выполнение кода в блоке, и не рассылать уведомления до завершения блока кода- Type Parameters:
T- тип возвращаемого занчения из блока- Parameters:
eventBlock- блок кода- Returns:
- возвращаемое значение
-
getCollectionEventQueue
default ConcurrentLinkedQueue<CollectionEvent<C,E>> getCollectionEventQueue()
Очередь событий- Returns:
- Очередь событий
-
addCollectionEvent
default void addCollectionEvent(CollectionEvent<C,E> ev)
Добавляет событие в очередь- Parameters:
ev- событие
-
-