Package org.forgerock.util
Class LazyList<E>
java.lang.Object
org.forgerock.util.LazyList<E>
- Type Parameters:
E
- The type of element contained in this list.
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,List<E>
A list with lazy initialization. The factory is called to initialize the list
on the first call to one of this object's methods.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Inserts the specified element at the specified position in this list.boolean
Appends the specified element to the end of this list.boolean
addAll
(int index, Collection<? extends E> c) Inserts all of the elements in the specified collection into this list at the specified position.boolean
addAll
(Collection<? extends E> c) Appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's iterator.void
clear()
Removes all of the elements from this list.boolean
Returnstrue
if this list contains the specified element.boolean
containsAll
(Collection<?> c) Returnstrue
if this list contains all of the elements of the specified collection.boolean
Compares the specified object with this list for equality.get
(int index) Returns the element at the specified position in this list.int
hashCode()
Returns the hash code value for this list.int
Returns the index of the first occurrence of the specified element in this list, or-1
if this list does not contain the element.boolean
isEmpty()
Returnstrue
if this list contains no elements.iterator()
Returns an iterator over the elements in this list in proper sequence.int
Returns the index of the last occurrence of the specified element in this list, or-1
if this list does not contain the element.Returns a list iterator over the elements in this list (in proper sequence).listIterator
(int index) Returns a list iterator over the elements in this list (in proper sequence), starting at the specified position in the list.remove
(int index) Removes the element at the specified position in this list.boolean
Removes the first occurrence of the specified element from this list, if it is present.boolean
removeAll
(Collection<?> c) Removes from this list all of its elements that are contained in the specified collection.boolean
retainAll
(Collection<?> c) Retains only the elements in this list that are contained in the specified collection.Replaces the element at the specified position in this list with the specified element.int
size()
Returns the number of elements in this list.subList
(int fromIndex, int toIndex) Returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.Object[]
toArray()
Returns an array containing all of the elements in this list in proper sequence (from first to last element).<T> T[]
toArray
(T[] a) Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface java.util.List
replaceAll, sort, spliterator
-
Field Details
-
factory
Factory to create the instance of the list to expose.
-
-
Constructor Details
-
LazyList
protected LazyList()Constructs a new lazy list. Allows factory to be set in subclass constructor. -
LazyList
Constructs a new lazy list.- Parameters:
factory
- factory to create the list instance to expose.
-
-
Method Details
-
size
public int size()Returns the number of elements in this list. -
isEmpty
public boolean isEmpty()Returnstrue
if this list contains no elements. -
contains
Returnstrue
if this list contains the specified element. -
iterator
Returns an iterator over the elements in this list in proper sequence. -
toArray
Returns an array containing all of the elements in this list in proper sequence (from first to last element). -
toArray
public <T> T[] toArray(T[] a) Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array. If the list fits in the specified array, it is returned therein. Otherwise, a new array is allocated with the runtime type of the specified array and the size of this list. -
add
Appends the specified element to the end of this list. -
remove
Removes the first occurrence of the specified element from this list, if it is present. -
containsAll
Returnstrue
if this list contains all of the elements of the specified collection.- Specified by:
containsAll
in interfaceCollection<E>
- Specified by:
containsAll
in interfaceList<E>
- Parameters:
c
- the collection to be checked for containment in this list.- Returns:
true
if this list contains all of the elements of the specified collection.
-
addAll
Appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's iterator. -
addAll
Inserts all of the elements in the specified collection into this list at the specified position. -
removeAll
Removes from this list all of its elements that are contained in the specified collection. -
retainAll
Retains only the elements in this list that are contained in the specified collection. -
clear
public void clear()Removes all of the elements from this list. -
equals
Compares the specified object with this list for equality. -
hashCode
public int hashCode()Returns the hash code value for this list. -
get
Returns the element at the specified position in this list. -
set
Replaces the element at the specified position in this list with the specified element. -
add
Inserts the specified element at the specified position in this list. -
remove
Removes the element at the specified position in this list. -
indexOf
Returns the index of the first occurrence of the specified element in this list, or-1
if this list does not contain the element. -
lastIndexOf
Returns the index of the last occurrence of the specified element in this list, or-1
if this list does not contain the element.- Specified by:
lastIndexOf
in interfaceList<E>
- Parameters:
o
- the element to search for.- Returns:
- the index of the last occurrence, or
-1
if no such element.
-
listIterator
Returns a list iterator over the elements in this list (in proper sequence).- Specified by:
listIterator
in interfaceList<E>
-
listIterator
Returns a list iterator over the elements in this list (in proper sequence), starting at the specified position in the list.- Specified by:
listIterator
in interfaceList<E>
- Parameters:
index
- the index of the first element to be returned from the list iterator.- Returns:
- a list iterator, starting at the specified position in the list.
-
subList
Returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.
-