E
- the type of the elements in the collectionpublic abstract class AbstractCollectionDecorator<E> extends Object implements Collection<E>, Serializable
Collection
to provide additional behaviour.
Each method call made on this Collection
is forwarded to the
decorated Collection
. This class is used as a framework on which
to build to extensions such as synchronized and unmodifiable behaviour. The
main advantage of decoration is that one decorator can wrap any implementation
of Collection
, whereas sub-classing requires a new class to be
written for each implementation.
This implementation does not perform any special processing with
iterator()
. Instead it simply returns the value from the
wrapped collection. This may be undesirable, for example if you are trying
to write an unmodifiable implementation it might provide a loophole.
Modifier | Constructor and Description |
---|---|
protected |
AbstractCollectionDecorator()
Constructor only used in deserialization, do not use otherwise.
|
protected |
AbstractCollectionDecorator(Collection<E> coll)
Constructor that wraps (not copies).
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(E object) |
boolean |
addAll(Collection<? extends E> coll) |
void |
clear() |
boolean |
contains(Object object) |
boolean |
containsAll(Collection<?> coll) |
protected Collection<E> |
decorated()
Gets the collection being decorated.
|
boolean |
equals(Object object) |
int |
hashCode() |
boolean |
isEmpty() |
Iterator<E> |
iterator() |
boolean |
remove(Object object) |
boolean |
removeAll(Collection<?> coll) |
boolean |
retainAll(Collection<?> coll) |
protected void |
setCollection(Collection<E> coll)
Sets the collection being decorated.
|
int |
size() |
Object[] |
toArray() |
<T> T[] |
toArray(T[] object) |
String |
toString() |
protected AbstractCollectionDecorator()
protected AbstractCollectionDecorator(Collection<E> coll)
coll
- the collection to decorate, must not be nullIllegalArgumentException
- if the collection is nullprotected Collection<E> decorated()
protected void setCollection(Collection<E> coll)
NOTE: this method should only be used during deserialization
coll
- the decorated collectionpublic boolean add(E object)
add
in interface Collection<E>
public boolean addAll(Collection<? extends E> coll)
addAll
in interface Collection<E>
public void clear()
clear
in interface Collection<E>
public boolean contains(Object object)
contains
in interface Collection<E>
public boolean isEmpty()
isEmpty
in interface Collection<E>
public boolean remove(Object object)
remove
in interface Collection<E>
public int size()
size
in interface Collection<E>
public Object[] toArray()
toArray
in interface Collection<E>
public <T> T[] toArray(T[] object)
toArray
in interface Collection<E>
public boolean containsAll(Collection<?> coll)
containsAll
in interface Collection<E>
public boolean removeAll(Collection<?> coll)
removeAll
in interface Collection<E>
public boolean retainAll(Collection<?> coll)
retainAll
in interface Collection<E>
public boolean equals(Object object)
equals
in interface Collection<E>
equals
in class Object
public int hashCode()
hashCode
in interface Collection<E>
hashCode
in class Object
Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.