Package org.jfree.data
Class KeyToGroupMap
- java.lang.Object
-
- org.jfree.data.KeyToGroupMap
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,PublicCloneable
public class KeyToGroupMap extends java.lang.Object implements java.lang.Cloneable, PublicCloneable, java.io.Serializable
A class that maps keys (instances ofComparable
) to groups.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Comparable
defaultGroup
The default group.private java.util.List
groups
The groups.private java.util.Map
keyToGroupMap
A mapping between keys and groups.private static long
serialVersionUID
For serialization.
-
Constructor Summary
Constructors Constructor Description KeyToGroupMap()
Creates a new map with a default group named 'Default Group'.KeyToGroupMap(java.lang.Comparable defaultGroup)
Creates a new map with the specified default group.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
Returns a clone of the map.private static java.lang.Object
clone(java.lang.Object object)
Attempts to clone the specified object using reflection.private static java.util.Collection
clone(java.util.Collection list)
Returns a clone of the list.boolean
equals(java.lang.Object obj)
Tests the map for equality against an arbitrary object.java.lang.Comparable
getGroup(java.lang.Comparable key)
Returns the group that a key is mapped to.int
getGroupCount()
Returns the number of groups in the map.int
getGroupIndex(java.lang.Comparable group)
Returns the index for the group.java.util.List
getGroups()
Returns a list of the groups (always including the default group) in the map.int
getKeyCount(java.lang.Comparable group)
Returns the number of keys mapped to the specified group.void
mapKeyToGroup(java.lang.Comparable key, java.lang.Comparable group)
Maps a key to a group.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
For serialization.- See Also:
- Constant Field Values
-
defaultGroup
private java.lang.Comparable defaultGroup
The default group.
-
groups
private java.util.List groups
The groups.
-
keyToGroupMap
private java.util.Map keyToGroupMap
A mapping between keys and groups.
-
-
Constructor Detail
-
KeyToGroupMap
public KeyToGroupMap()
Creates a new map with a default group named 'Default Group'.
-
KeyToGroupMap
public KeyToGroupMap(java.lang.Comparable defaultGroup)
Creates a new map with the specified default group.- Parameters:
defaultGroup
- the default group (null
not permitted).
-
-
Method Detail
-
getGroupCount
public int getGroupCount()
Returns the number of groups in the map.- Returns:
- The number of groups in the map.
-
getGroups
public java.util.List getGroups()
Returns a list of the groups (always including the default group) in the map. The returned list is independent of the map, so altering the list will have no effect.- Returns:
- The groups (never
null
).
-
getGroupIndex
public int getGroupIndex(java.lang.Comparable group)
Returns the index for the group.- Parameters:
group
- the group.- Returns:
- The group index (or -1 if the group is not represented within the map).
-
getGroup
public java.lang.Comparable getGroup(java.lang.Comparable key)
Returns the group that a key is mapped to.- Parameters:
key
- the key (null
not permitted).- Returns:
- The group (never
null
, returns the default group if there is no mapping for the specified key).
-
mapKeyToGroup
public void mapKeyToGroup(java.lang.Comparable key, java.lang.Comparable group)
Maps a key to a group.- Parameters:
key
- the key (null
not permitted).group
- the group (null
permitted, clears any existing mapping).
-
getKeyCount
public int getKeyCount(java.lang.Comparable group)
Returns the number of keys mapped to the specified group. This method won't always return an accurate result for the default group, since explicit mappings are not required for this group.- Parameters:
group
- the group (null
not permitted).- Returns:
- The key count.
-
equals
public boolean equals(java.lang.Object obj)
Tests the map for equality against an arbitrary object.- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- the object to test against (null
permitted).- Returns:
- A boolean.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
Returns a clone of the map.- Specified by:
clone
in interfacePublicCloneable
- Overrides:
clone
in classjava.lang.Object
- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException
- if there is a problem cloning the map.
-
clone
private static java.lang.Object clone(java.lang.Object object)
Attempts to clone the specified object using reflection.- Parameters:
object
- the object (null
permitted).- Returns:
- The cloned object, or the original object if cloning failed.
-
clone
private static java.util.Collection clone(java.util.Collection list) throws java.lang.CloneNotSupportedException
Returns a clone of the list.- Parameters:
list
- the list.- Returns:
- A clone of the list.
- Throws:
java.lang.CloneNotSupportedException
- if the list could not be cloned.
-
-