- All Implemented Interfaces:
- Serializable,- Cloneable,- Map<Object,Object>,- TabularData
public class TabularDataSupport extends Object implements TabularData, Map<Object,Object>, Cloneable, Serializable
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.- Since:
- 1.5
- See Also:
- Serialized Form
- 
Nested Class Summary
- 
Constructor SummaryConstructors Constructor Description TabularDataSupport(TabularType tabularType)Creates an emptyTabularDataSupportinstance whose open-type is tabularType, and whose underlyingHashMaphas a default initial capacity (101) and default load factor (0.75).TabularDataSupport(TabularType tabularType, int initialCapacity, float loadFactor)Creates an emptyTabularDataSupportinstance whose open-type is tabularType, and whose underlyingHashMaphas the specified initial capacity and load factor.
- 
Method SummaryModifier and Type Method Description Object[]calculateIndex(CompositeData value)Calculates the index that would be used in thisTabularDatainstance to refer to the specified composite data value parameter if it were added to this instance.voidclear()Removes all rows from thisTabularDataSupportinstance.Objectclone()Returns a clone of thisTabularDataSupportinstance: the clone is obtained by callingsuper.clone(), and then cloning the underlying map.booleancontainsKey(Object key)Returnstrueif and only if thisTabularDatainstance contains aCompositeDatavalue (ie a row) whose index is the specified key.booleancontainsKey(Object[] key)Returnstrueif and only if thisTabularDatainstance contains aCompositeDatavalue (ie a row) whose index is the specified key.booleancontainsValue(Object value)Returnstrueif and only if thisTabularDatainstance contains the specified value.booleancontainsValue(CompositeData value)Returnstrueif and only if thisTabularDatainstance contains the specifiedCompositeDatavalue.Set<Map.Entry<Object,Object>>entrySet()Returns a collection view of the index to row mappings contained in thisTabularDataSupportinstance.booleanequals(Object obj)Compares the specified obj parameter with thisTabularDataSupportinstance for equality.Objectget(Object key)This method simply callsget((Object[]) key).CompositeDataget(Object[] key)Returns theCompositeDatavalue whose index is key, ornullif there is no value mapping to key, in thisTabularDatainstance.TabularTypegetTabularType()Returns the tabular type describing thisTabularDatainstance.inthashCode()Returns the hash code value for thisTabularDataSupportinstance.booleanisEmpty()Returnstrueif thisTabularDataSupportinstance contains no rows.Set<Object>keySet()Returns a set view of the keys contained in the underlying map of thisTabularDataSupportinstance used to index the rows.Objectput(Object key, Object value)This method simply callsput((CompositeData) value)and therefore ignores its key parameter which can benull.voidputAll(Map<?,?> t)Add all the values contained in the specified map t to thisTabularDatainstance.voidputAll(CompositeData[] values)Add all the elements in values to thisTabularDatainstance.Objectremove(Object key)This method simply callsremove((Object[]) key).CompositeDataremove(Object[] key)Removes theCompositeDatavalue whose index is key from thisTabularDatainstance, and returns the removed value, or returnsnullif there is no value whose index is key.intsize()Returns the number of rows in thisTabularDataSupportinstance.StringtoString()Returns a string representation of thisTabularDataSupportinstance.Collection<Object>values()Returns a collection view of the rows contained in thisTabularDataSupportinstance.Methods declared in interface java.util.Mapcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
- 
Constructor Details- 
TabularDataSupportCreates an emptyTabularDataSupportinstance whose open-type is tabularType, and whose underlyingHashMaphas a default initial capacity (101) and default load factor (0.75).This constructor simply calls this(tabularType, 101, 0.75f);- Parameters:
- tabularType- the tabular type describing this- TabularDatainstance; cannot be null.
- Throws:
- IllegalArgumentException- if the tabular type is null.
 
- 
TabularDataSupportCreates an emptyTabularDataSupportinstance whose open-type is tabularType, and whose underlyingHashMaphas the specified initial capacity and load factor.- Parameters:
- tabularType- the tabular type describing this- TabularDatainstance; cannot be null.
- initialCapacity- the initial capacity of the HashMap.
- loadFactor- the load factor of the HashMap
- Throws:
- IllegalArgumentException- if the initial capacity is less than zero, or the load factor is nonpositive, or the tabular type is null.
 
 
- 
- 
Method Details- 
getTabularTypeReturns the tabular type describing thisTabularDatainstance.- Specified by:
- getTabularTypein interface- TabularData
- Returns:
- the tabular type.
 
- 
calculateIndexCalculates the index that would be used in thisTabularDatainstance to refer to the specified composite data value parameter if it were added to this instance. This method checks for the type validity of the specified value, but does not check if the calculated index is already used to refer to a value in thisTabularDatainstance.- Specified by:
- calculateIndexin interface- TabularData
- Parameters:
- value- the composite data value whose index in this- TabularDatainstance is to be calculated; must be of the same composite type as this instance's row type; must not be null.
- Returns:
- the index that the specified value would have in this TabularDatainstance.
- Throws:
- NullPointerException- if value is- null.
- InvalidOpenTypeException- if value does not conform to this- TabularDatainstance's row type definition.
 
- 
containsKeyReturnstrueif and only if thisTabularDatainstance contains aCompositeDatavalue (ie a row) whose index is the specified key. If key cannot be cast to a one dimension array of Object instances, this method simply returnsfalse; otherwise it returns the result of the call tothis.containsKey((Object[]) key).- Specified by:
- containsKeyin interface- Map<Object,Object>
- Parameters:
- key- the index value whose presence in this- TabularDatainstance is to be tested.
- Returns:
- trueif this- TabularDataindexes a row value with the specified key.
 
- 
containsKeyReturnstrueif and only if thisTabularDatainstance contains aCompositeDatavalue (ie a row) whose index is the specified key. If key isnullor does not conform to thisTabularDatainstance'sTabularTypedefinition, this method simply returnsfalse.- Specified by:
- containsKeyin interface- TabularData
- Parameters:
- key- the index value whose presence in this- TabularDatainstance is to be tested.
- Returns:
- trueif this- TabularDataindexes a row value with the specified key.
 
- 
containsValueReturnstrueif and only if thisTabularDatainstance contains the specifiedCompositeDatavalue. If value isnullor does not conform to thisTabularDatainstance's row type definition, this method simply returnsfalse.- Specified by:
- containsValuein interface- TabularData
- Parameters:
- value- the row value whose presence in this- TabularDatainstance is to be tested.
- Returns:
- trueif this- TabularDatainstance contains the specified row value.
 
- 
containsValueReturnstrueif and only if thisTabularDatainstance contains the specified value.- Specified by:
- containsValuein interface- Map<Object,Object>
- Parameters:
- value- the row value whose presence in this- TabularDatainstance is to be tested.
- Returns:
- trueif this- TabularDatainstance contains the specified row value.
 
- 
getThis method simply callsget((Object[]) key).- Specified by:
- getin interface- Map<Object,Object>
- Parameters:
- key- the key whose associated value is to be returned
- Returns:
- the value to which the specified key is mapped, or
         nullif this map contains no mapping for the key
- Throws:
- 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- TabularDatainstance's- TabularTypedefinition
 
- 
getReturns theCompositeDatavalue whose index is key, ornullif there is no value mapping to key, in thisTabularDatainstance.- Specified by:
- getin interface- TabularData
- Parameters:
- key- the index of the value to get in this- TabularDatainstance; must be valid with this- TabularDatainstance's row type definition; must not be null.
- Returns:
- the value corresponding to key.
- Throws:
- NullPointerException- if the key is- null
- InvalidKeyException- if the key does not conform to this- TabularDatainstance's- TabularTypetype definition.
 
- 
putThis method simply callsput((CompositeData) value)and therefore ignores its key parameter which can benull.- Specified by:
- putin interface- Map<Object,Object>
- Parameters:
- key- an ignored parameter.
- value- the- CompositeDatato put.
- Returns:
- the value which is put
- Throws:
- 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- TabularDatainstance's- TabularTypedefinition
- KeyAlreadyExistsException- if the key for the value parameter, calculated according to this- TabularDatainstance's- TabularTypedefinition already maps to an existing value
 
- 
removeThis method simply callsremove((Object[]) key).- Specified by:
- removein interface- Map<Object,Object>
- Parameters:
- key- an- Object[]representing the key to remove.
- Returns:
- previous value associated with specified key, or nullif there was no mapping for key.
- Throws:
- 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- TabularDatainstance's- TabularTypedefinition
 
- 
removeRemoves theCompositeDatavalue whose index is key from thisTabularDatainstance, and returns the removed value, or returnsnullif there is no value whose index is key.- Specified by:
- removein interface- TabularData
- Parameters:
- key- the index of the value to get in this- TabularDatainstance; must be valid with this- TabularDatainstance's row type definition; must not be null.
- Returns:
- previous value associated with specified key, or nullif there was no mapping for key.
- Throws:
- NullPointerException- if the key is- null
- InvalidKeyException- if the key does not conform to this- TabularDatainstance's- TabularTypedefinition
 
- 
putAllAdd all the values contained in the specified map t to thisTabularDatainstance. This method converts the collection of values contained in this map into an array ofCompositeDatavalues, if possible, and then call the methodputAll(CompositeData[]). Note that the keys used in the specified map t are ignored. This method allows, for example to add the content of anotherTabularDatainstance with the same row type (but possibly different index names) into this instance.- Specified by:
- putAllin interface- Map<Object,Object>
- Parameters:
- t- the map whose values are to be added as new rows to this- TabularDatainstance; if t is- nullor empty, this method returns without doing anything.
- Throws:
- 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- TabularDatainstance's row type definition.
- KeyAlreadyExistsException- if the index for a value in t, calculated according to this- TabularDatainstance's- TabularTypedefinition already maps to an existing value in this instance, or two values in t have the same index.
 
- 
putAllAdd all the elements in values to thisTabularDatainstance. If any element in values does not satisfy the constraints defined input, or if any two elements in values have the same index calculated according to thisTabularDatainstance'sTabularTypedefinition, then an exception describing the failure is thrown and no element of values is added, thus leaving thisTabularDatainstance unchanged.- Specified by:
- putAllin interface- TabularData
- Parameters:
- values- the array of composite data values to be added as new rows to this- TabularDatainstance; if values is- nullor empty, this method returns without doing anything.
- Throws:
- NullPointerException- if an element of values is- null
- InvalidOpenTypeException- if an element of values does not conform to this- TabularDatainstance's row type definition (ie its- TabularTypedefinition)
- KeyAlreadyExistsException- if the index for an element of values, calculated according to this- TabularDatainstance's- TabularTypedefinition already maps to an existing value in this instance, or two elements of values have the same index
 
- 
clearpublic void clear()Removes all rows from thisTabularDataSupportinstance.
- 
sizepublic int size()Returns the number of rows in thisTabularDataSupportinstance.
- 
isEmptypublic boolean isEmpty()Returnstrueif thisTabularDataSupportinstance contains no rows.
- 
keySetReturns a set view of the keys contained in the underlying map of thisTabularDataSupportinstance used to index the rows. Each key contained in thisSetis an unmodifiableList<?>so the returned set view is aSet<List<?>>but is declared as aSet<Object>for compatibility reasons. The set is backed by the underlying map of thisTabularDataSupportinstance, so changes to theTabularDataSupportinstance are reflected in the set, and vice-versa. The set supports element removal, which removes the corresponding row from thisTabularDataSupportinstance, via theIterator.remove(),Set.remove(java.lang.Object),Set.removeAll(java.util.Collection<?>),Set.retainAll(java.util.Collection<?>), andSet.clear()operations. It does not support theSet.add(E)orSet.addAll(java.util.Collection<? extends E>)operations.
- 
valuesReturns a collection view of the rows contained in thisTabularDataSupportinstance. The returnedCollectionis aCollection<CompositeData>but is declared as aCollection<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 theTabularDataSupportinstance are reflected in the collection, and vice-versa. The collection supports element removal, which removes the corresponding index to row mapping from thisTabularDataSupportinstance, via theIterator.remove(),Collection.remove(java.lang.Object),Collection.removeAll(java.util.Collection<?>),Collection.retainAll(java.util.Collection<?>), andCollection.clear()operations. It does not support theCollection.add(E)orCollection.addAll(java.util.Collection<? extends E>)operations.
- 
entrySetReturns a collection view of the index to row mappings contained in thisTabularDataSupportinstance. Each element in the returned collection is aMap.Entry<List<?>,CompositeData>but is declared as aMap.Entry<Object,Object>for compatibility reasons. Each of the map entry keys is an unmodifiableList<?>. The collection is backed by the underlying map of thisTabularDataSupportinstance, so changes to theTabularDataSupportinstance are reflected in the collection, and vice-versa. The collection supports element removal, which removes the corresponding mapping from the map, via theIterator.remove(),Collection.remove(java.lang.Object),Collection.removeAll(java.util.Collection<?>),Collection.retainAll(java.util.Collection<?>), andCollection.clear()operations. It does not support theCollection.add(E)orCollection.addAll(java.util.Collection<? extends E>)operations.IMPORTANT NOTICE: Do not use the setValuemethod of theMap.Entryelements contained in the returned collection view. Doing so would corrupt the index to row mappings contained in thisTabularDataSupportinstance.
- 
cloneReturns a clone of thisTabularDataSupportinstance: the clone is obtained by callingsuper.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.
- 
equalsCompares the specified obj parameter with thisTabularDataSupportinstance for equality.Returns trueif and only if all of the following statements are true:- obj is non null,
- obj also implements the TabularDatainterface,
- their tabular types are equal
- their contents (ie all CompositeData values) are equal.
 equalsmethod works properly for obj parameters which are different implementations of theTabularDatainterface.
 - Specified by:
- equalsin interface- Map<Object,Object>
- Specified by:
- equalsin interface- TabularData
- Overrides:
- equalsin class- Object
- Parameters:
- obj- the object to be compared for equality with this- TabularDataSupportinstance;
- Returns:
- trueif the specified object is equal to this- TabularDataSupportinstance.
- See Also:
- Object.hashCode(),- HashMap
 
- 
hashCodepublic int hashCode()Returns the hash code value for thisTabularDataSupportinstance.The hash code of a TabularDataSupportinstance is the sum of the hash codes of all elements of information used inequalscomparisons (ie: its tabular type and its content, where the content is defined as all the CompositeData values).This ensures that t1.equals(t2)implies thatt1.hashCode()==t2.hashCode()for any twoTabularDataSupportinstancest1andt2, as required by the general contract of the methodObject.hashCode().However, note that another instance of a class implementing the TabularDatainterface may be equal to thisTabularDataSupportinstance as defined byequals(java.lang.Object), but may have a different hash code if it is calculated differently.- Specified by:
- hashCodein interface- Map<Object,Object>
- Specified by:
- hashCodein interface- TabularData
- Overrides:
- hashCodein class- Object
- Returns:
- the hash code value for this TabularDataSupportinstance
- See Also:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
- 
toStringReturns a string representation of thisTabularDataSupportinstance.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 todataMap.toString()).- Specified by:
- toStringin interface- TabularData
- Overrides:
- toStringin class- Object
- Returns:
- a string representation of this TabularDataSupportinstance
 
 
-