Package org.apache.commons.collections
Class DefaultMapBag
- java.lang.Object
-
- org.apache.commons.collections.DefaultMapBag
-
- All Implemented Interfaces:
Iterable
,Collection
,Bag
public abstract class DefaultMapBag extends Object implements Bag
Deprecated.Moved to bag subpackage as AbstractMapBag. Due to be removed in v4.0.A skeletal implementation of theBag
interface to minimize the effort required for target implementations. Subclasses need only to callsetMap(Map)
in their constructor (or invoke the Map constructor) specifying a map instance that will be used to store the contents of the bag.The map will be used to map bag elements to a number; the number represents the number of occurrences of that element in the bag.
- Since:
- Commons Collections 2.0
- Version:
- $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
- Author:
- Chuck Burdick, Michael A. Smith, Stephen Colebourne, Janek Bogucki
-
-
Constructor Summary
Constructors Modifier Constructor Description DefaultMapBag()
Deprecated.No-argument constructor.protected
DefaultMapBag(Map map)
Deprecated.Constructor that assigns the specified Map as the backing store.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
add(Object object)
Deprecated.Adds a new element to the bag by incrementing its count in the underlying map.boolean
add(Object object, int nCopies)
Deprecated.Adds a new element to the bag by incrementing its count in the map.boolean
addAll(Collection coll)
Deprecated.Invokesadd(Object)
for each element in the given collection.protected int
calcTotalSize()
Deprecated.Actually walks the bag to make sure the count is correct and resets the running totalvoid
clear()
Deprecated.Clears the bag by clearing the underlying map.boolean
contains(Object object)
Deprecated.Determines if the bag contains the given element by checking if the underlying map contains the element as a key.boolean
containsAll(Collection coll)
Deprecated.Determines if the bag contains the given elements.boolean
containsAll(Bag other)
Deprecated.Returnstrue
if the bag contains all elements in the given collection, respecting cardinality.boolean
equals(Object object)
Deprecated.Returns true if the given object is not null, has the precise type of this bag, and contains the same number of occurrences of all the same elements.int
getCount(Object object)
Deprecated.Returns the number of occurrence of the given element in this bag by looking up its count in the underlying map.protected Map
getMap()
Deprecated.Utility method for implementations to access the map that backs this bag.int
hashCode()
Deprecated.Returns the hash code of the underlying map.boolean
isEmpty()
Deprecated.Returns true if the underlying map is empty.Iterator
iterator()
Deprecated.Returns anIterator
over the entire set of members, including copies due to cardinality.boolean
remove(Object object)
Deprecated.(Violation) Removes all occurrences of the given object from the bag.boolean
remove(Object object, int nCopies)
Deprecated.RemovesnCopies
copies of the specified object from the Bag.boolean
removeAll(Collection coll)
Deprecated.(Violation) Remove all elements represented in the given collection, respecting cardinality.boolean
retainAll(Collection coll)
Deprecated.Remove any members of the bag that are not in the given bag, respecting cardinality.boolean
retainAll(Bag other)
Deprecated.Remove any members of the bag that are not in the given bag, respecting cardinality.protected void
setMap(Map map)
Deprecated.Utility method for implementations to set the map that backs this bag.int
size()
Deprecated.Returns the number of elements in this bag.Object[]
toArray()
Deprecated.Returns an array of all of this bag's elements.Object[]
toArray(Object[] array)
Deprecated.Returns an array of all of this bag's elements.String
toString()
Deprecated.Implement a toString() method suitable for debugging.Set
uniqueSet()
Deprecated.Returns an unmodifiable view of the underlying map's key set.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, spliterator, stream, toArray
-
-
-
-
Constructor Detail
-
DefaultMapBag
public DefaultMapBag()
Deprecated.No-argument constructor. Subclasses should invokesetMap(Map)
in their constructors.
-
DefaultMapBag
protected DefaultMapBag(Map map)
Deprecated.Constructor that assigns the specified Map as the backing store. The map must be empty.- Parameters:
map
- the map to assign
-
-
Method Detail
-
add
public boolean add(Object object)
Deprecated.Adds a new element to the bag by incrementing its count in the underlying map.- Specified by:
add
in interfaceBag
- Specified by:
add
in interfaceCollection
- Parameters:
object
- the object to add- Returns:
true
if the object was not already in theuniqueSet
-
add
public boolean add(Object object, int nCopies)
Deprecated.Adds a new element to the bag by incrementing its count in the map.
-
addAll
public boolean addAll(Collection coll)
Deprecated.Invokesadd(Object)
for each element in the given collection.- Specified by:
addAll
in interfaceCollection
- Parameters:
coll
- the collection to add- Returns:
true
if this call changed the bag
-
clear
public void clear()
Deprecated.Clears the bag by clearing the underlying map.- Specified by:
clear
in interfaceCollection
-
contains
public boolean contains(Object object)
Deprecated.Determines if the bag contains the given element by checking if the underlying map contains the element as a key.- Specified by:
contains
in interfaceCollection
- Parameters:
object
- the object to search for- Returns:
- true if the bag contains the given element
-
containsAll
public boolean containsAll(Collection coll)
Deprecated.Determines if the bag contains the given elements.- Specified by:
containsAll
in interfaceBag
- Specified by:
containsAll
in interfaceCollection
- Parameters:
coll
- the collection to check against- Returns:
true
if the Bag contains all the collection
-
containsAll
public boolean containsAll(Bag other)
Deprecated.Returnstrue
if the bag contains all elements in the given collection, respecting cardinality.- Parameters:
other
- the bag to check against- Returns:
true
if the Bag contains all the collection
-
equals
public boolean equals(Object object)
Deprecated.Returns true if the given object is not null, has the precise type of this bag, and contains the same number of occurrences of all the same elements.- Specified by:
equals
in interfaceCollection
- Overrides:
equals
in classObject
- Parameters:
object
- the object to test for equality- Returns:
- true if that object equals this bag
-
hashCode
public int hashCode()
Deprecated.Returns the hash code of the underlying map.- Specified by:
hashCode
in interfaceCollection
- Overrides:
hashCode
in classObject
- Returns:
- the hash code of the underlying map
-
isEmpty
public boolean isEmpty()
Deprecated.Returns true if the underlying map is empty.- Specified by:
isEmpty
in interfaceCollection
- Returns:
- true if there are no elements in this bag
-
iterator
public Iterator iterator()
Deprecated.Description copied from interface:Bag
Returns anIterator
over the entire set of members, including copies due to cardinality. This iterator is fail-fast and will not tolerate concurrent modifications.
-
remove
public boolean remove(Object object)
Deprecated.Description copied from interface:Bag
(Violation) Removes all occurrences of the given object from the bag.This will also remove the object from the
Bag.uniqueSet()
.According to the
Collection.remove(Object)
method, this method should only remove the first occurrence of the given object, not all occurrences.- Specified by:
remove
in interfaceBag
- Specified by:
remove
in interfaceCollection
- Returns:
true
if this call changed the collection
-
remove
public boolean remove(Object object, int nCopies)
Deprecated.Description copied from interface:Bag
RemovesnCopies
copies of the specified object from the Bag.If the number of copies to remove is greater than the actual number of copies in the Bag, no error is thrown.
-
removeAll
public boolean removeAll(Collection coll)
Deprecated.Description copied from interface:Bag
(Violation) Remove all elements represented in the given collection, respecting cardinality. That is, if the given collectioncoll
containsn
copies of a given object, the bag will haven
fewer copies, assuming the bag had at leastn
copies to begin with.The
Collection.removeAll(Collection)
method specifies that cardinality should not be respected; this method should remove all occurrences of every object contained in the given collection.- Specified by:
removeAll
in interfaceBag
- Specified by:
removeAll
in interfaceCollection
- Parameters:
coll
- the collection to remove- Returns:
true
if this call changed the collection
-
retainAll
public boolean retainAll(Collection coll)
Deprecated.Remove any members of the bag that are not in the given bag, respecting cardinality.- Specified by:
retainAll
in interfaceBag
- Specified by:
retainAll
in interfaceCollection
- Parameters:
coll
- the collection to retain- Returns:
- true if this call changed the collection
-
retainAll
public boolean retainAll(Bag other)
Deprecated.Remove any members of the bag that are not in the given bag, respecting cardinality.- Parameters:
other
- the bag to retain- Returns:
true
if this call changed the collection- See Also:
retainAll(Collection)
-
toArray
public Object[] toArray()
Deprecated.Returns an array of all of this bag's elements.- Specified by:
toArray
in interfaceCollection
- Returns:
- an array of all of this bag's elements
-
toArray
public Object[] toArray(Object[] array)
Deprecated.Returns an array of all of this bag's elements.- Specified by:
toArray
in interfaceCollection
- Parameters:
array
- the array to populate- Returns:
- an array of all of this bag's elements
-
getCount
public int getCount(Object object)
Deprecated.Returns the number of occurrence of the given element in this bag by looking up its count in the underlying map.
-
uniqueSet
public Set uniqueSet()
Deprecated.Returns an unmodifiable view of the underlying map's key set.
-
size
public int size()
Deprecated.Returns the number of elements in this bag.- Specified by:
size
in interfaceBag
- Specified by:
size
in interfaceCollection
- Returns:
- the number of elements in this bag
-
calcTotalSize
protected int calcTotalSize()
Deprecated.Actually walks the bag to make sure the count is correct and resets the running total- Returns:
- the current total size
-
setMap
protected void setMap(Map map)
Deprecated.Utility method for implementations to set the map that backs this bag. Not intended for interactive use outside of subclasses.
-
getMap
protected Map getMap()
Deprecated.Utility method for implementations to access the map that backs this bag. Not intended for interactive use outside of subclasses.
-
-