|
Java™ Platform Standard Ed. 6 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.management.openmbean.TabularDataSupport
public class TabularDataSupport
The TabularDataSupport class is the open data class which implements the TabularData and the Map interfaces, and which is internally based on a hash map data structure.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface java.util.Map |
---|
Map.Entry<K,V> |
Constructor Summary | |
---|---|
TabularDataSupport(TabularType tabularType)
Creates an empty TabularDataSupport instance whose open-type is tabularType, and whose underlying HashMap has a default initial capacity (101) and default load factor (0.75). |
|
TabularDataSupport(TabularType tabularType,
int initialCapacity,
float loadFactor)
Creates an empty TabularDataSupport instance whose open-type is tabularType, and whose underlying HashMap has the specified initial capacity and load factor. |
Method Summary | |
---|---|
Object[] |
calculateIndex(CompositeData value)
Calculates the index that would be used in this TabularData instance to refer to the specified composite data value parameter if it were added to this instance. |
void |
clear()
Removes all rows from this TabularDataSupport instance. |
Object |
clone()
Returns a clone of this TabularDataSupport instance:
the clone is obtained by calling super.clone(), and then cloning the underlying map. |
boolean |
containsKey(Object key)
Returns true if and only if this TabularData instance contains a CompositeData value (ie a row) whose index is the specified key. |
boolean |
containsKey(Object[] key)
Returns true if and only if this TabularData instance contains a CompositeData value (ie a row) whose index is the specified key. |
boolean |
containsValue(CompositeData value)
Returns true if and only if this TabularData instance contains the specified CompositeData value. |
boolean |
containsValue(Object value)
Returns true if and only if this TabularData instance contains the specified value. |
Set<Map.Entry<Object,Object>> |
entrySet()
Returns a collection view of the index to row mappings contained in this TabularDataSupport instance. |
boolean |
equals(Object obj)
Compares the specified obj parameter with this TabularDataSupport instance for equality. |
Object |
get(Object key)
This method simply calls get((Object[]) key). |
CompositeData |
get(Object[] key)
Returns the CompositeData value whose index is key, or null if there is no value mapping to key, in this TabularData instance. |
TabularType |
getTabularType()
Returns the tabular type describing this TabularData instance. |
int |
hashCode()
Returns the hash code value for this TabularDataSupport instance. |
boolean |
isEmpty()
Returns true if this TabularDataSupport instance contains no rows. |
Set<Object> |
keySet()
Returns a set view of the keys contained in the underlying map of this TabularDataSupport instance used to index the rows. |
void |
put(CompositeData value)
Adds value to this TabularData instance. |
Object |
put(Object key,
Object value)
This method simply calls put((CompositeData) value) and therefore ignores its key parameter which can be null. |
void |
putAll(CompositeData[] values)
Add all the elements in values to this TabularData instance. |
void |
putAll(Map<?,?> t)
Add all the values contained in the specified map t to this TabularData instance. |
Object |
remove(Object key)
This method simply calls remove((Object[]) key). |
CompositeData |
remove(Object[] key)
Removes the CompositeData value whose index is key from this TabularData instance, and returns the removed value, or returns null if there is no value whose index is key. |
int |
size()
Returns the number of rows in this TabularDataSupport instance. |
String |
toString()
Returns a string representation of this TabularDataSupport instance. |
Collection<Object> |
values()
Returns a collection view of the rows contained in this TabularDataSupport instance. |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public TabularDataSupport(TabularType tabularType)
This constructor simply calls this(tabularType, 101, 0.75f);
tabularType
- the tabular type describing this TabularData instance;
cannot be null.
IllegalArgumentException
- if the tabular type is null.public TabularDataSupport(TabularType tabularType, int initialCapacity, float loadFactor)
tabularType
- the tabular type describing this TabularData instance;
cannot be null.initialCapacity
- the initial capacity of the HashMap.loadFactor
- the load factor of the HashMap
IllegalArgumentException
- if the initial capacity is less than zero,
or the load factor is nonpositive,
or the tabular type is null.Method Detail |
---|
public TabularType getTabularType()
getTabularType
in interface TabularData
public Object[] calculateIndex(CompositeData value)
calculateIndex
in interface TabularData
value
- the composite data value whose index in this
TabularData instance is to be calculated;
must be of the same composite type as this instance's row type;
must not be null.
NullPointerException
- if value is null.
InvalidOpenTypeException
- if value does not conform to this TabularData instance's
row type definition.public boolean containsKey(Object key)
containsKey
in interface Map<Object,Object>
key
- the index value whose presence in this TabularData instance is to be tested.
public boolean containsKey(Object[] key)
containsKey
in interface TabularData
key
- the index value whose presence in this TabularData instance is to be tested.
public boolean containsValue(CompositeData value)
containsValue
in interface TabularData
value
- the row value whose presence in this TabularData instance is to be tested.
public boolean containsValue(Object value)
containsValue
in interface Map<Object,Object>
value
- the row value whose presence in this TabularData instance is to be tested.
public Object get(Object key)
get
in interface Map<Object,Object>
key
- the key whose associated value is to be returned
null
if this map contains no mapping for the key
NullPointerException
- if the key is null
ClassCastException
- if the key is not of the type Object[]
InvalidKeyException
- if the key does not conform to this TabularData instance's
TabularType definitionpublic CompositeData get(Object[] key)
get
in interface TabularData
key
- the index of the value to get in this
TabularData instance; * must be valid with this
TabularData instance's row type definition; * must not
be null.
NullPointerException
- if the key is null
InvalidKeyException
- if the key does not conform to this TabularData instance's
TabularType type definition.public Object put(Object key, Object value)
put
in interface Map<Object,Object>
key
- an ignored parameter.value
- the CompositeData
to put.
NullPointerException
- if the value is null
ClassCastException
- if the value is not of
the type CompositeData
InvalidOpenTypeException
- if the value does
not conform to this TabularData instance's
TabularType definition
KeyAlreadyExistsException
- if the key for the
value parameter, calculated according to this
TabularData instance's TabularType definition
already maps to an existing valuepublic void put(CompositeData value)
TabularData
getRowType()
), and there must not already be an existing
value in this TabularData instance whose index is the
same as the one calculated for the value to be
added. The index for value is calculated according
to this TabularData instance's TabularType
definition (see TabularType.getIndexNames()
).
put
in interface TabularData
value
- the composite data value to be added as a new row to this TabularData instance;
must be of the same composite type as this instance's row type;
must not be null.public Object remove(Object key)
remove
in interface Map<Object,Object>
key
- an Object[] representing the key to remove.
NullPointerException
- if the key is null
ClassCastException
- if the key is not of the type Object[]
InvalidKeyException
- if the key does not conform to this TabularData instance's
TabularType definitionpublic CompositeData remove(Object[] key)
remove
in interface TabularData
key
- the index of the value to get in this TabularData instance;
must be valid with this TabularData instance's row type definition;
must not be null.
NullPointerException
- if the key is null
InvalidKeyException
- if the key does not conform to this TabularData instance's
TabularType definitionpublic void putAll(Map<?,?> t)
putAll
in interface Map<Object,Object>
t
- the map whose values are to be added as new rows to
this TabularData instance; if t is
null or empty, this method returns without doing
anything.
NullPointerException
- if a value in t is
null.
ClassCastException
- if a value in t is not an
instance of CompositeData.
InvalidOpenTypeException
- if a value in t
does not conform to this TabularData instance's row
type definition.
KeyAlreadyExistsException
- if the index for a value in
t, calculated according to this
TabularData instance's TabularType definition
already maps to an existing value in this instance, or two
values in t have the same index.public void putAll(CompositeData[] values)
put
, or if any two
elements in values have the same index calculated
according to this TabularData instance's
TabularType definition, then an exception describing
the failure is thrown and no element of values is
added, thus leaving this TabularData instance
unchanged.
putAll
in interface TabularData
values
- the array of composite data values to be added as
new rows to this TabularData instance; if
values is null or empty, this method
returns without doing anything.
NullPointerException
- if an element of values
is null
InvalidOpenTypeException
- if an element of
values does not conform to this
TabularData instance's row type definition (ie its
TabularType definition)
KeyAlreadyExistsException
- if the index for an element
of values, calculated according to this
TabularData instance's TabularType definition
already maps to an existing value in this instance, or two
elements of values have the same indexpublic void clear()
TabularDataSupport
instance.
clear
in interface Map<Object,Object>
clear
in interface TabularData
public int size()
TabularDataSupport
instance.
size
in interface Map<Object,Object>
size
in interface TabularData
TabularDataSupport
instance.public boolean isEmpty()
TabularDataSupport
instance contains no rows.
isEmpty
in interface Map<Object,Object>
isEmpty
in interface TabularData
TabularDataSupport
instance contains no rows.public Set<Object> keySet()
TabularDataSupport
instance used to index the rows.
Each key contained in this Set
is an unmodifiable List<?>
so the returned set view is a Set<List<?>>
but is declared as a
Set<Object>
for compatibility reasons.
The set is backed by the underlying map of this
TabularDataSupport
instance, so changes to the
TabularDataSupport
instance are reflected in the
set, and vice-versa.
The set supports element removal, which removes the corresponding
row from this TabularDataSupport
instance, via the
Iterator.remove()
, Set.remove(java.lang.Object)
, Set.removeAll(java.util.Collection>)
,
Set.retainAll(java.util.Collection>)
, and Set.clear()
operations. It does
not support the Set.add(E)
or Set.addAll(java.util.Collection extends E>)
operations.
keySet
in interface Map<Object,Object>
keySet
in interface TabularData
Set<List<?>>
) of the keys used to index
the rows of this TabularDataSupport
instance.public Collection<Object> values()
TabularDataSupport
instance. The returned Collection
is a Collection<CompositeData>
but is declared as a
Collection<Object>
for compatibility reasons.
The returned collection can be used to iterate over the values.
The collection is backed by the underlying map, so changes to the
TabularDataSupport
instance are reflected in the collection,
and vice-versa.
The collection supports element removal, which removes the corresponding
index to row mapping from this TabularDataSupport
instance, via
the Iterator.remove()
, Collection.remove(java.lang.Object)
,
Collection.removeAll(java.util.Collection>)
, Collection.retainAll(java.util.Collection>)
,
and Collection.clear()
operations. It does not support
the Collection.add(E)
or Collection.addAll(java.util.Collection extends E>)
operations.
values
in interface Map<Object,Object>
values
in interface TabularData
Collection<CompositeData>
) of
the values contained in this TabularDataSupport
instance.public Set<Map.Entry<Object,Object>> entrySet()
TabularDataSupport
instance.
Each element in the returned collection is
a Map.Entry<List<?>,CompositeData>
but
is declared as a Map.Entry<Object,Object>
for compatibility reasons. Each of the map entry
keys is an unmodifiable List<?>
.
The collection is backed by the underlying map of this
TabularDataSupport
instance, so changes to the
TabularDataSupport
instance are reflected in
the collection, and vice-versa.
The collection supports element removal, which removes
the corresponding mapping from the map, via the
Iterator.remove()
, Collection.remove(java.lang.Object)
,
Collection.removeAll(java.util.Collection>)
, Collection.retainAll(java.util.Collection>)
,
and Collection.clear()
operations. It does not support
the Collection.add(E)
or Collection.addAll(java.util.Collection extends E>)
operations.
IMPORTANT NOTICE: Do not use the setValue
method of the
Map.Entry
elements contained in the returned collection view.
Doing so would corrupt the index to row mappings contained in this
TabularDataSupport
instance.
entrySet
in interface Map<Object,Object>
Set<Map.Entry<List<?>,CompositeData>>
)
of the mappings contained in this map.Map.Entry
public Object clone()
TabularDataSupport
instance:
the clone is obtained by calling super.clone(), and then cloning the underlying map.
Only a shallow clone of the underlying map is made, i.e. no cloning of the indexes and row values is made as they are immutable.
clone
in class Object
Cloneable
public boolean equals(Object obj)
TabularDataSupport
instance for equality.
Returns true if and only if all of the following statements are true:
TabularData
interface,TabularData
interface.
equals
in interface Map<Object,Object>
equals
in interface TabularData
equals
in class Object
obj
- the object to be compared for equality with this TabularDataSupport
instance;
true
if the specified object is equal to this TabularDataSupport
instance.Object.hashCode()
,
Hashtable
public int hashCode()
TabularDataSupport
instance.
The hash code of a TabularDataSupport
instance is the sum of the hash codes
of all elements of information used in equals
comparisons
(ie: its tabular type and its content, where the content is defined as all the CompositeData values).
This ensures that t1.equals(t2)
implies that t1.hashCode()==t2.hashCode()
for any two TabularDataSupport
instances t1
and t2
,
as required by the general contract of the method
Object.hashCode()
.
However, note that another instance of a class implementing the TabularData
interface
may be equal to this TabularDataSupport
instance as defined by equals(java.lang.Object)
,
but may have a different hash code if it is calculated differently.
hashCode
in interface Map<Object,Object>
hashCode
in interface TabularData
hashCode
in class Object
TabularDataSupport
instanceObject.equals(java.lang.Object)
,
Hashtable
public String toString()
TabularDataSupport
instance.
The string representation consists of the name of this class (ie javax.management.openmbean.TabularDataSupport
),
the string representation of the tabular type of this instance, and the string representation of the contents
(ie list the key=value mappings as returned by a call to
dataMap.toString()
).
toString
in interface TabularData
toString
in class Object
TabularDataSupport
instance
|
Java™ Platform Standard Ed. 6 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.