- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- javafx.collections.ObservableListBase<E>
-
- javafx.collections.ModifiableObservableListBase<E>
-
- Type Parameters:
E
- the type of the elements contained in the List
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,List<E>
,Observable
,ObservableList<E>
public abstract class ModifiableObservableListBase<E> extends ObservableListBase<E>
Abstract class that serves as a base class forObservableList
implementations that are modifiable. To implement a modifiableObservableList
class, you just need to implement the following set of methods: and the notifications and built and fired automatically for you.Example of a simple
ObservableList
delegating to anotherList
would look like this:public class ArrayObservableList<E> extends ModifiableObservableList<E> { private final List<E> delegate = new ArrayList<>(); public E get(int index) { return delegate.get(index); } public int size() { return delegate.size(); } protected void doAdd(int index, E element) { delegate.add(index, element); } protected E doSet(int index, E element) { return delegate.set(index, element); } protected E doRemove(int index) { return delegate.remove(index); }
- Since:
- JavaFX 8.0
- See Also:
ObservableListBase
-
-
Field Summary
-
Fields declared in class java.util.AbstractList
modCount
-
-
Constructor Summary
Constructors Constructor Description ModifiableObservableListBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description protected abstract void
doAdd(int index, E element)
Adds theelement
to the List at the position ofindex
.protected abstract E
doRemove(int index)
Removes the element at position ofindex
.protected abstract E
doSet(int index, E element)
Sets theelement
in the List at the position ofindex
.-
Methods declared in class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
-
Methods declared in class java.util.AbstractList
add, add, addAll, clear, equals, get, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subList
-
Methods declared in interface java.util.Collection
parallelStream, removeIf, stream
-
Methods declared in interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray
-
Methods declared in class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods declared in interface javafx.beans.Observable
addListener, removeListener
-
Methods declared in interface javafx.collections.ObservableList
addAll, addListener, filtered, remove, removeAll, removeListener, retainAll, setAll, setAll, sorted, sorted
-
Methods declared in class javafx.collections.ObservableListBase
beginChange, endChange, fireChange, hasListeners, nextAdd, nextPermutation, nextRemove, nextRemove, nextReplace, nextSet, nextUpdate
-
-
-
-
Method Detail
-
doAdd
protected abstract void doAdd(int index, E element)
Adds theelement
to the List at the position ofindex
.For the description of possible exceptions, please refer to the documentation of
AbstractList.add(java.lang.Object)
method.- Parameters:
index
- the position where to add the elementelement
- the element that will be added- Throws:
ClassCastException
- if the type of the specified element is incompatible with this listNullPointerException
- if the specified arguments contain one or more null elementsIllegalArgumentException
- if some property of this element prevents it from being added to this listIndexOutOfBoundsException
- if the index is out of range(index < 0 || index > size())
-
doSet
protected abstract E doSet(int index, E element)
Sets theelement
in the List at the position ofindex
.For the description of possible exceptions, please refer to the documentation of
List.set(int, java.lang.Object)
method.- Parameters:
index
- the position where to set the elementelement
- the element that will be set at the specified position- Returns:
- the old element at the specified position
- Throws:
ClassCastException
- if the type of the specified element is incompatible with this listNullPointerException
- if the specified arguments contain one or more null elementsIllegalArgumentException
- if some property of this element prevents it from being added to this listIndexOutOfBoundsException
- if the index is out of range(index < 0 || index >= size())
-
doRemove
protected abstract E doRemove(int index)
Removes the element at position ofindex
.- Parameters:
index
- the index of the removed element- Returns:
- the removed element
- Throws:
IndexOutOfBoundsException
- if the index is out of range(index < 0 || index >= size())
-
-