Interface PreEventList<E>

    • Method Detail

      • fireInserting

        default void fireInserting​(int index,
                                   E e)
        Рассылка уведомления подписчикам о предстоящем добавлении элемента
        Parameters:
        index - индекс
        e - элемент
      • onInserting

        default AutoCloseable onInserting​(boolean weak,
                                          TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие начала добавления данных InsertedEvent
        Parameters:
        weak - true - добавить подписчика как weak ссылку
        ls - подписчик - fn( key:Integer, oldValue:E=null, newValue:E )
        Returns:
        отписка от уведомлений
      • onInserting

        default AutoCloseable onInserting​(TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие начала добавления данных InsertedEvent
        Parameters:
        ls - подписчик - fn( key:Integer, oldValue:E=null, newValue:E )
        Returns:
        отписка от уведомлений
      • fireUpdating

        default void fireUpdating​(int index,
                                  E old,
                                  E current)
        Рассылка уведомления подписчикам о предстоящем обновлении элемента
        Parameters:
        index - индекс
        old - предыдущее значение
        current - текущее значение
      • onUpdating

        default AutoCloseable onUpdating​(boolean weak,
                                         TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие изменения данных UpdatingEvent
        Parameters:
        weak - true - добавить подписчика как weak ссылку
        ls - подписчик - fn( key:Integer, oldValue:E, newValue:E )
        Returns:
        отписка от уведомлений
      • onUpdating

        default AutoCloseable onUpdating​(TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие изменения данных UpdatingEvent
        Parameters:
        ls - подписчик - fn( key:Integer, oldValue:E, newValue:E )
        Returns:
        отписка от уведомлений
      • fireDeleting

        default void fireDeleting​(int index,
                                  E e)
        Рассылка уведомления подписчикам о предстоящем удалении элемента
        Parameters:
        index - индекс
        e - элемент
      • onDeleting

        default AutoCloseable onDeleting​(boolean weak,
                                         TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие удаления данных DeletingEvent
        Parameters:
        weak - true - добавить подписчика как weak ссылку
        ls - подписчик - fn( key:Integer, oldValue:E, newValue:E=null )
        Returns:
        отписка от уведомлений
      • onDeleting

        default AutoCloseable onDeleting​(TripleConsumer<Integer,​E,​E> ls)
        Добавляет подписчика на событие удаления данных DeletingEvent
        Parameters:
        ls - подписчик - fn( key:Integer, oldValue:E, newValue:E=null )
        Returns:
        отписка от уведомлений
      • add

        default boolean add​(E e)
        Добавление элемента в список. Будут сгенерированы два события:
        1. InsertingEvent перед началом добавления
        2. InsertedEvent после начала добавления
        Specified by:
        add in interface Collection<E>
        Specified by:
        add in interface EventList<E>
        Specified by:
        add in interface List<E>
        Parameters:
        e - элемент
        Returns:
        факт добавления
      • remove

        default boolean remove​(Object o)
        Удаляет элемент из списка Генерирует события RemovingEvent, RemovedEvent
        Specified by:
        remove in interface Collection<E>
        Specified by:
        remove in interface EventList<E>
        Specified by:
        remove in interface List<E>
        Parameters:
        o - элемент
        Returns:
        true - список изменен
      • addAll

        default boolean addAll​(int index,
                               Collection<? extends E> c)
        Добавляет все элементы в список, в указанную позицию Генерирует события InsertingEvent, InsertedEvent
        Specified by:
        addAll in interface EventList<E>
        Specified by:
        addAll in interface List<E>
        Parameters:
        c - элементы
        Returns:
        true - список изменен
      • retainAll

        default boolean retainAll​(Collection<?> coll)
        Удаляет элементы из списока, за исключением указанных Генерирует события RemovingEvent, RemovedEvent
        Specified by:
        retainAll in interface Collection<E>
        Specified by:
        retainAll in interface EventList<E>
        Specified by:
        retainAll in interface List<E>
        Parameters:
        coll - элементы
        Returns:
        true - список изменен
      • set

        default E set​(int index,
                      E element)
        Записиывает элемент в определенную позицию Генерирует события UpdatingEvent, UpdatedEvent
        Specified by:
        set in interface EventList<E>
        Specified by:
        set in interface List<E>
        Parameters:
        index - индекс
        element - элемент
        Returns:
        предыдущее значение
      • add

        default void add​(int index,
                         E element)
        Вставляет элемент в определнное место списка Генерирует события InsertingEvent, InsertedEvent
        Specified by:
        add in interface EventList<E>
        Specified by:
        add in interface List<E>
        Parameters:
        index - индекс
        element - элемент
      • remove

        default E remove​(int index)
        Удялет элемент из списка. Генерирует события RemovingEvent, RemovedEvent
        Specified by:
        remove in interface EventList<E>
        Specified by:
        remove in interface List<E>
        Parameters:
        index - индекс элемента
        Returns:
        удаленный элемент
      • sameElements

        default boolean sameElements​(E a,
                                     E b)
        Проверка что два объекта идентичны
        Parameters:
        a - первый
        b - второй
        Returns:
        true - идентичны
      • removeIf

        default boolean removeIf​(Predicate<? super E> filter)
        Удаление элементов согласно фильтру. Генерирует события DeletingEvent, DeletedEvent
        Specified by:
        removeIf in interface Collection<E>
        Specified by:
        removeIf in interface EventList<E>
        Parameters:
        filter - фильтр
        Returns:
        факт удаления