org.homeunix.thecave.moss.data.list
Class CompositeList<T>
java.lang.Object
org.homeunix.thecave.moss.data.list.CompositeList<T>
- All Implemented Interfaces:
- java.lang.Iterable<T>, java.util.Collection<T>, java.util.List<T>
public class CompositeList<T>
- extends java.lang.Object
- implements java.util.List<T>
- Author:
- wyatt
Class which provides a single view of multiple backed lists. When the backing
lists change, this one will automatically update too. You cannot change this
list directly - you can only change the backing lists.
This class currently does not scale well with extra length. If performance is
an issue, try to keep this list small.
|
Constructor Summary |
CompositeList(boolean sorted,
boolean allowDuplicates,
java.util.Collection<java.util.List<? extends T>> backingLists)
|
CompositeList(boolean sorted,
boolean allowDuplicates,
java.util.List<? extends T>... backingLists)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface java.util.List |
equals, hashCode |
CompositeList
public CompositeList(boolean sorted,
boolean allowDuplicates,
java.util.Collection<java.util.List<? extends T>> backingLists)
CompositeList
public CompositeList(boolean sorted,
boolean allowDuplicates,
java.util.List<? extends T>... backingLists)
addList
public void addList(java.util.List<T> list)
add
public void add(int index,
T element)
- Specified by:
add in interface java.util.List<T>
add
public boolean add(T o)
- Specified by:
add in interface java.util.Collection<T>- Specified by:
add in interface java.util.List<T>
addAll
public boolean addAll(java.util.Collection<? extends T> c)
- Specified by:
addAll in interface java.util.Collection<T>- Specified by:
addAll in interface java.util.List<T>
addAll
public boolean addAll(int index,
java.util.Collection<? extends T> c)
- Specified by:
addAll in interface java.util.List<T>
clear
public void clear()
- Specified by:
clear in interface java.util.Collection<T>- Specified by:
clear in interface java.util.List<T>
contains
public boolean contains(java.lang.Object o)
- Specified by:
contains in interface java.util.Collection<T>- Specified by:
contains in interface java.util.List<T>
containsAll
public boolean containsAll(java.util.Collection<?> c)
- Specified by:
containsAll in interface java.util.Collection<T>- Specified by:
containsAll in interface java.util.List<T>
get
public T get(int index)
- Specified by:
get in interface java.util.List<T>
indexOf
public int indexOf(java.lang.Object o)
- Specified by:
indexOf in interface java.util.List<T>
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty in interface java.util.Collection<T>- Specified by:
isEmpty in interface java.util.List<T>
iterator
public java.util.Iterator<T> iterator()
- Specified by:
iterator in interface java.lang.Iterable<T>- Specified by:
iterator in interface java.util.Collection<T>- Specified by:
iterator in interface java.util.List<T>
lastIndexOf
public int lastIndexOf(java.lang.Object o)
- Specified by:
lastIndexOf in interface java.util.List<T>
listIterator
public java.util.ListIterator<T> listIterator()
- Specified by:
listIterator in interface java.util.List<T>
listIterator
public java.util.ListIterator<T> listIterator(int index)
- Specified by:
listIterator in interface java.util.List<T>
remove
public T remove(int index)
- Specified by:
remove in interface java.util.List<T>
remove
public boolean remove(java.lang.Object o)
- Specified by:
remove in interface java.util.Collection<T>- Specified by:
remove in interface java.util.List<T>
removeAll
public boolean removeAll(java.util.Collection<?> c)
- Specified by:
removeAll in interface java.util.Collection<T>- Specified by:
removeAll in interface java.util.List<T>
retainAll
public boolean retainAll(java.util.Collection<?> c)
- Specified by:
retainAll in interface java.util.Collection<T>- Specified by:
retainAll in interface java.util.List<T>
set
public T set(int index,
T element)
- Specified by:
set in interface java.util.List<T>
size
public int size()
- Specified by:
size in interface java.util.Collection<T>- Specified by:
size in interface java.util.List<T>
subList
public java.util.List<T> subList(int fromIndex,
int toIndex)
- Specified by:
subList in interface java.util.List<T>
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray in interface java.util.Collection<T>- Specified by:
toArray in interface java.util.List<T>
toArray
public <T> T[] toArray(T[] a)
- Specified by:
toArray in interface java.util.Collection<T>- Specified by:
toArray in interface java.util.List<T>
updateList
public java.util.List<T> updateList()
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object