|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.drools.util.CompositeCollection
public class CompositeCollection
Decorates a collection of other collections to provide a single unified view.
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.
Nested Class Summary | |
---|---|
static interface |
CompositeCollection.CollectionMutator
Pluggable strategy to handle changes to the composite. |
Field Summary | |
---|---|
protected Collection[] |
all
Collections in the composite |
protected CompositeCollection.CollectionMutator |
mutator
CollectionMutator to handle changes to the collection |
Constructor Summary | |
---|---|
CompositeCollection()
Create an empty CompositeCollection. |
|
CompositeCollection(Collection coll)
Create a Composite Collection with only coll composited. |
|
CompositeCollection(Collection[] colls)
Create a CompositeCollection with colls as the initial list of composited collections. |
Method Summary | |
---|---|
boolean |
add(Object obj)
Adds an object to the collection, throwing UnsupportedOperationException unless a CollectionMutator strategy is specified. |
boolean |
addAll(Collection coll)
Adds a collection of elements to this collection, throwing UnsupportedOperationException unless a CollectionMutator strategy is specified. |
void |
addComposited(Collection c)
Add an additional collection to this composite. |
void |
addComposited(Collection[] comps)
Add these Collections to the list of collections in this composite |
void |
addComposited(Collection c,
Collection d)
Add two additional collections to this composite. |
void |
clear()
Removes all of the elements from this collection . |
boolean |
contains(Object obj)
Checks whether this composite collection contains the object. |
boolean |
containsAll(Collection coll)
Checks whether this composite contains all the elements in the specified collection. |
Collection |
getCollections()
Gets the collections being decorated. |
boolean |
isEmpty()
Checks whether this composite collection is empty. |
Iterator |
iterator()
Gets an iterator over all the collections in this composite. |
boolean |
remove(Object obj)
Removes an object from the collection, throwing UnsupportedOperationException unless a CollectionMutator strategy is specified. |
boolean |
removeAll(Collection coll)
Removes the elements in the specified collection from this composite collection. |
void |
removeComposited(Collection coll)
Removes a collection from the those being decorated in this composite. |
boolean |
retainAll(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. |
Object[] |
toArray()
Returns an array containing all of the elements in this composite. |
Object[] |
toArray(Object[] array)
Returns an object array, populating the supplied array if possible. |
Collection |
toCollection()
Returns a new collection containing all of the elements |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Collection |
---|
equals, hashCode |
Field Detail |
---|
protected CompositeCollection.CollectionMutator mutator
protected Collection[] all
Constructor Detail |
---|
public CompositeCollection()
public CompositeCollection(Collection coll)
coll
- a collection to decoratepublic CompositeCollection(Collection[] colls)
colls
- an array of collections to decorateMethod Detail |
---|
public int size()
This implementation calls size()
on each collection.
size
in interface Collection
public boolean isEmpty()
This implementation calls isEmpty()
on each collection.
isEmpty
in interface Collection
public boolean contains(Object obj)
This implementation calls contains()
on each collection.
contains
in interface Collection
obj
- the object to search for
public Iterator iterator()
This implementation uses an IteratorChain
.
iterator
in interface Iterable
iterator
in interface 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 Object[] toArray()
toArray
in interface Collection
public Object[] toArray(Object[] array)
Collection
interface for full details.
toArray
in interface Collection
array
- the array to use, populating if possible
public boolean add(Object obj)
add
in interface Collection
obj
- the object to add
UnsupportedOperationException
- if CollectionMutator hasn't been set
UnsupportedOperationException
- if add is unsupported
ClassCastException
- if the object cannot be added due to its type
NullPointerException
- if the object cannot be added because its null
IllegalArgumentException
- if the object cannot be addedpublic boolean remove(Object obj)
remove
in interface Collection
obj
- the object being removed
UnsupportedOperationException
- if removed is unsupported
ClassCastException
- if the object cannot be removed due to its type
NullPointerException
- if the object cannot be removed because its null
IllegalArgumentException
- if the object cannot be removedpublic boolean containsAll(Collection coll)
This implementation calls contains()
for each element in
the specified collection.
containsAll
in interface Collection
coll
- the collection to check for
public boolean addAll(Collection coll)
addAll
in interface Collection
coll
- the collection to add
UnsupportedOperationException
- if CollectionMutator hasn't been set
UnsupportedOperationException
- if add is unsupported
ClassCastException
- if the object cannot be added due to its type
NullPointerException
- if the object cannot be added because its null
IllegalArgumentException
- if the object cannot be addedpublic boolean removeAll(Collection coll)
This implementation calls removeAll
on each collection.
removeAll
in interface Collection
coll
- the collection to remove
UnsupportedOperationException
- if removeAll is unsupportedpublic boolean retainAll(Collection coll)
This implementation calls retainAll()
on each collection.
retainAll
in interface Collection
coll
- the collection to remove
UnsupportedOperationException
- if retainAll is unsupportedpublic void clear()
This implementation calls clear()
on each collection.
clear
in interface Collection
UnsupportedOperationException
- if clear is unsupportedpublic void setMutator(CompositeCollection.CollectionMutator mutator)
mutator
- the mutator to usepublic void addComposited(Collection[] comps)
comps
- Collections to be appended to the compositepublic void addComposited(Collection c)
c
- the collection to addpublic void addComposited(Collection c, Collection d)
c
- the first collection to addd
- the second collection to addpublic void removeComposited(Collection coll)
coll
- collection to be removedpublic Collection toCollection()
public Collection getCollections()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |