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