public class CompositeCollection
extends java.lang.Object
implements java.util.Collection
Changes made to this collection will actually be made on the decorated collection. Add and remove operations require the use of a pluggable strategy. If no strategy is provided then add and remove are unsupported.
Modifier and Type | Class and Description |
---|---|
static interface |
CompositeCollection.CollectionMutator
Pluggable strategy to handle changes to the composite.
|
Constructor and Description |
---|
CompositeCollection()
Create an empty CompositeCollection.
|
CompositeCollection(java.util.Collection coll)
Create a Composite Collection with only coll composited.
|
CompositeCollection(java.util.Collection[] colls)
Create a CompositeCollection with colls as the initial list of
composited collections.
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(java.lang.Object obj)
Adds an object to the collection, throwing UnsupportedOperationException
unless a CollectionMutator strategy is specified.
|
boolean |
addAll(java.util.Collection coll)
Adds a collection of elements to this collection, throwing
UnsupportedOperationException unless a CollectionMutator strategy is specified.
|
void |
addComposited(java.util.Collection c)
Add an additional collection to this composite.
|
void |
addComposited(java.util.Collection[] comps)
Add these Collections to the list of collections in this composite
|
void |
addComposited(java.util.Collection c,
java.util.Collection d)
Add two additional collections to this composite.
|
void |
clear()
Removes all of the elements from this collection .
|
boolean |
contains(java.lang.Object obj)
Checks whether this composite collection contains the object.
|
boolean |
containsAll(java.util.Collection coll)
Checks whether this composite contains all the elements in the specified collection.
|
java.util.Collection |
getCollections()
Gets the collections being decorated.
|
boolean |
isEmpty()
Checks whether this composite collection is empty.
|
java.util.Iterator |
iterator()
Gets an iterator over all the collections in this composite.
|
boolean |
remove(java.lang.Object obj)
Removes an object from the collection, throwing UnsupportedOperationException
unless a CollectionMutator strategy is specified.
|
boolean |
removeAll(java.util.Collection coll)
Removes the elements in the specified collection from this composite collection.
|
void |
removeComposited(java.util.Collection coll)
Removes a collection from the those being decorated in this composite.
|
boolean |
retainAll(java.util.Collection coll)
Retains all the elements in the specified collection in this composite collection,
removing all others.
|
void |
setMutator(CompositeCollection.CollectionMutator mutator)
Specify a CollectionMutator strategy instance to handle changes.
|
int |
size()
Gets the size of this composite collection.
|
java.lang.Object[] |
toArray()
Returns an array containing all of the elements in this composite.
|
java.lang.Object[] |
toArray(java.lang.Object[] array)
Returns an object array, populating the supplied array if possible.
|
java.util.Collection |
toCollection()
Returns a new collection containing all of the elements
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public CompositeCollection()
public CompositeCollection(java.util.Collection coll)
coll
- a collection to decoratepublic CompositeCollection(java.util.Collection[] colls)
colls
- an array of collections to decoratepublic int size()
This implementation calls size()
on each collection.
size
in interface java.util.Collection
public boolean isEmpty()
This implementation calls isEmpty()
on each collection.
isEmpty
in interface java.util.Collection
public boolean contains(java.lang.Object obj)
This implementation calls contains()
on each collection.
contains
in interface java.util.Collection
obj
- the object to search forpublic java.util.Iterator iterator()
This implementation uses an IteratorChain
.
iterator
in interface java.lang.Iterable
iterator
in interface java.util.Collection
IteratorChain
instance which supports
remove()
. Iteration occurs over contained collections in
the order they were added, but this behavior should not be relied upon.IteratorChain
public java.lang.Object[] toArray()
toArray
in interface java.util.Collection
public java.lang.Object[] toArray(java.lang.Object[] array)
Collection
interface for full details.toArray
in interface java.util.Collection
array
- the array to use, populating if possiblepublic boolean add(java.lang.Object obj)
add
in interface java.util.Collection
obj
- the object to addjava.lang.UnsupportedOperationException
- if CollectionMutator hasn't been setjava.lang.UnsupportedOperationException
- if add is unsupportedjava.lang.ClassCastException
- if the object cannot be added due to its typejava.lang.NullPointerException
- if the object cannot be added because its nulljava.lang.IllegalArgumentException
- if the object cannot be addedpublic boolean remove(java.lang.Object obj)
remove
in interface java.util.Collection
obj
- the object being removedjava.lang.UnsupportedOperationException
- if removed is unsupportedjava.lang.ClassCastException
- if the object cannot be removed due to its typejava.lang.NullPointerException
- if the object cannot be removed because its nulljava.lang.IllegalArgumentException
- if the object cannot be removedpublic boolean containsAll(java.util.Collection coll)
This implementation calls contains()
for each element in the
specified collection.
containsAll
in interface java.util.Collection
coll
- the collection to check forpublic boolean addAll(java.util.Collection coll)
addAll
in interface java.util.Collection
coll
- the collection to addjava.lang.UnsupportedOperationException
- if CollectionMutator hasn't been setjava.lang.UnsupportedOperationException
- if add is unsupportedjava.lang.ClassCastException
- if the object cannot be added due to its typejava.lang.NullPointerException
- if the object cannot be added because its nulljava.lang.IllegalArgumentException
- if the object cannot be addedpublic boolean removeAll(java.util.Collection coll)
This implementation calls removeAll
on each collection.
removeAll
in interface java.util.Collection
coll
- the collection to removejava.lang.UnsupportedOperationException
- if removeAll is unsupportedpublic boolean retainAll(java.util.Collection coll)
This implementation calls retainAll()
on each collection.
retainAll
in interface java.util.Collection
coll
- the collection to removejava.lang.UnsupportedOperationException
- if retainAll is unsupportedpublic void clear()
This implementation calls clear()
on each collection.
clear
in interface java.util.Collection
java.lang.UnsupportedOperationException
- if clear is unsupportedpublic void setMutator(CompositeCollection.CollectionMutator mutator)
mutator
- the mutator to usepublic void addComposited(java.util.Collection[] comps)
comps
- Collections to be appended to the compositepublic void addComposited(java.util.Collection c)
c
- the collection to addpublic void addComposited(java.util.Collection c, java.util.Collection d)
c
- the first collection to addd
- the second collection to addpublic void removeComposited(java.util.Collection coll)
coll
- collection to be removedpublic java.util.Collection toCollection()
public java.util.Collection getCollections()
Copyright © 2010 - 2020 Adobe. All Rights Reserved