Package com.google.common.collect
Class ForwardingCollection<E>
- java.lang.Object
-
- com.google.common.collect.ForwardingObject
-
- com.google.common.collect.ForwardingCollection<E>
-
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
- Direct Known Subclasses:
ForwardingList
,ForwardingMultiset
,ForwardingQueue
,ForwardingSet
@GwtCompatible public abstract class ForwardingCollection<E> extends ForwardingObject implements Collection<E>
A collection which forwards all its method calls to another collection. Subclasses should override one or more methods to modify the behavior of the backing collection as desired per the decorator pattern.Warning: The methods of
ForwardingCollection
forward indiscriminately to the methods of the delegate. For example, overridingadd(E)
alone will not change the behavior ofaddAll(java.util.Collection<? extends E>)
, which can lead to unexpected behavior. In this case, you should overrideaddAll
as well, either providing your own implementation, or delegating to the providedstandardAddAll
method.The
standard
methods are not guaranteed to be thread-safe, even when all of the methods that they depend on are thread-safe.- Since:
- 2.0 (imported from Google Collections Library)
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(E element)
boolean
addAll(Collection<? extends E> collection)
void
clear()
boolean
contains(Object object)
boolean
containsAll(Collection<?> collection)
boolean
isEmpty()
Iterator<E>
iterator()
boolean
remove(Object object)
boolean
removeAll(Collection<?> collection)
boolean
retainAll(Collection<?> collection)
int
size()
Object[]
toArray()
<T> T[]
toArray(T[] array)
-
Methods inherited from class com.google.common.collect.ForwardingObject
toString
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
equals, hashCode, parallelStream, removeIf, spliterator, stream, toArray
-
-
-
-
Method Detail
-
size
public int size()
- Specified by:
size
in interfaceCollection<E>
-
removeAll
public boolean removeAll(Collection<?> collection)
- Specified by:
removeAll
in interfaceCollection<E>
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfaceCollection<E>
-
contains
public boolean contains(Object object)
- Specified by:
contains
in interfaceCollection<E>
-
add
public boolean add(E element)
- Specified by:
add
in interfaceCollection<E>
-
remove
public boolean remove(Object object)
- Specified by:
remove
in interfaceCollection<E>
-
containsAll
public boolean containsAll(Collection<?> collection)
- Specified by:
containsAll
in interfaceCollection<E>
-
addAll
public boolean addAll(Collection<? extends E> collection)
- Specified by:
addAll
in interfaceCollection<E>
-
retainAll
public boolean retainAll(Collection<?> collection)
- Specified by:
retainAll
in interfaceCollection<E>
-
clear
public void clear()
- Specified by:
clear
in interfaceCollection<E>
-
toArray
public Object[] toArray()
- Specified by:
toArray
in interfaceCollection<E>
-
toArray
public <T> T[] toArray(T[] array)
- Specified by:
toArray
in interfaceCollection<E>
-
-