Package hudson.util
Class CopyOnWriteList<E>
- java.lang.Object
-
- hudson.util.CopyOnWriteList<E>
-
- All Implemented Interfaces:
Iterable<E>
public class CopyOnWriteList<E> extends Object implements Iterable<E>
List
-like implementation that has copy-on-write semantics.This class is suitable where highly concurrent access is needed, yet the write operation is relatively uncommon.
- Author:
- Kohsuke Kawaguchi
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CopyOnWriteList.ConverterImpl
Converter
implementation for XStream.
-
Constructor Summary
Constructors Constructor Description CopyOnWriteList()
CopyOnWriteList(List<E> core)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(E e)
void
addAll(Collection<? extends E> items)
void
addAllTo(Collection<? super E> dst)
void
clear()
boolean
contains(Object item)
E
get(int index)
List<E>
getView()
boolean
isEmpty()
Iterator<E>
iterator()
Returns an iterator.boolean
remove(E e)
Removes an item from the list.void
replaceBy(E... that)
Completely replaces this list by the contents of the given list.void
replaceBy(CopyOnWriteList<? extends E> that)
Completely replaces this list by the contents of the given list.void
replaceBy(Collection<? extends E> that)
Completely replaces this list by the contents of the given list.int
size()
<T> T[]
toArray(T[] array)
String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
add
public void add(E e)
-
addAll
public void addAll(Collection<? extends E> items)
-
remove
public boolean remove(E e)
Removes an item from the list.- Returns:
- true if the list contained the item. False if it didn't, in which case there's no change.
-
replaceBy
public void replaceBy(CopyOnWriteList<? extends E> that)
Completely replaces this list by the contents of the given list.
-
replaceBy
public void replaceBy(Collection<? extends E> that)
Completely replaces this list by the contents of the given list.
-
replaceBy
public void replaceBy(E... that)
Completely replaces this list by the contents of the given list.
-
clear
public void clear()
-
toArray
public <T> T[] toArray(T[] array)
-
addAllTo
public void addAllTo(Collection<? super E> dst)
-
get
public E get(int index)
-
isEmpty
public boolean isEmpty()
-
size
public int size()
-
contains
public boolean contains(Object item)
-
-