Interface CollectionEventPublisher<C,​E>

    • Method Detail

      • 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:
        возвращаемое значение
      • addCollectionEvent

        default void addCollectionEvent​(CollectionEvent<C,​E> ev)
        Добавляет событие в очередь
        Parameters:
        ev - событие