Home » openjdk-7 » javax » management » openmbean » [javadoc | source]
javax.management.openmbean
public class: TabularDataSupport [javadoc | source]
java.lang.Object
   javax.management.openmbean.TabularDataSupport

All Implemented Interfaces:
    Cloneable, java$io$Serializable, Map, TabularData

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.
Field Summary
static final  long serialVersionUID     
Constructor:
 public 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).

    This constructor simply calls this(tabularType, 101, 0.75f);

    Parameters:
    tabularType - the tabular type describing this TabularData instance; cannot be null.
    Throws:
    IllegalArgumentException - if the tabular type is null.
 public 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.
    Parameters:
    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
    Throws:
    IllegalArgumentException - if the initial capacity is less than zero, or the load factor is nonpositive, or the tabular type is null.
Method from javax.management.openmbean.TabularDataSupport Summary:
calculateIndex,   clear,   clone,   containsKey,   containsKey,   containsValue,   containsValue,   entrySet,   equals,   get,   get,   getTabularType,   hashCode,   isEmpty,   keySet,   put,   put,   putAll,   putAll,   remove,   remove,   size,   toString,   values
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.management.openmbean.TabularDataSupport Detail:
 public 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. 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 this TabularData instance.
 public  void clear() 
    Removes all rows from this TabularDataSupport instance.
 public Object clone() 
    Returns a clone of this 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.
 public 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. If key cannot be cast to a one dimension array of Object instances, this method simply returns false; otherwise it returns the the result of the call to this.containsKey((Object[]) key).
 public 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. If key is null or does not conform to this TabularData instance's TabularType definition, this method simply returns false.
 public boolean containsValue(CompositeData value) 
    Returns true if and only if this TabularData instance contains the specified CompositeData value. If value is null or does not conform to this TabularData instance's row type definition, this method simply returns false.
 public boolean containsValue(Object value) 
    Returns true if and only if this TabularData instance contains the specified value.
 public Set<Object, Object> entrySet() 
    Returns a collection view of the index to row mappings contained in this {@code TabularDataSupport} instance. Each element in the returned collection is a {@code Map.Entry,CompositeData>} but is declared as a {@code Map.Entry} for compatibility reasons. Each of the map entry keys is an unmodifiable {@code List}. The collection is backed by the underlying map of this {@code TabularDataSupport} instance, so changes to the {@code 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 , Collection#removeAll , Collection#retainAll , and Collection#clear operations. It does not support the Collection#add or Collection#addAll operations.

    IMPORTANT NOTICE: Do not use the {@code setValue} method of the {@code Map.Entry} elements contained in the returned collection view. Doing so would corrupt the index to row mappings contained in this {@code TabularDataSupport} instance.

 public boolean equals(Object obj) 
    Compares the specified obj parameter with this TabularDataSupport instance for equality.

    Returns true if and only if all of the following statements are true:

    • obj is non null,
    • obj also implements the TabularData interface,
    • their tabular types are equal
    • their contents (ie all CompositeData values) are equal.
    This ensures that this equals method works properly for obj parameters which are different implementations of the TabularData interface.
     
 public Object get(Object key) 
    This method simply calls get((Object[]) key).
 public 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.
 public TabularType getTabularType() 
    Returns the tabular type describing this TabularData instance.
 public int hashCode() 
    Returns the hash code value for this 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 , but may have a different hash code if it is calculated differently.

 public boolean isEmpty() 
    Returns true if this TabularDataSupport instance contains no rows.
 public Set<Object> keySet() 
    Returns a set view of the keys contained in the underlying map of this {@code TabularDataSupport} instance used to index the rows. Each key contained in this {@code Set} is an unmodifiable {@code List} so the returned set view is a {@code Set>} but is declared as a {@code Set} for compatibility reasons. The set is backed by the underlying map of this {@code TabularDataSupport} instance, so changes to the {@code TabularDataSupport} instance are reflected in the set, and vice-versa. The set supports element removal, which removes the corresponding row from this {@code TabularDataSupport} instance, via the Iterator#remove , Set#remove , Set#removeAll , Set#retainAll , and Set#clear operations. It does not support the Set#add or Set#addAll operations.
 public  void put(CompositeData value) 
 public Object put(Object key,
    Object value) 
    This method simply calls put((CompositeData) value) and therefore ignores its key parameter which can be null.
 public  void putAll(Map<?, ?> t) 
    Add all the values contained in the specified map t to this TabularData instance. This method converts the collection of values contained in this map into an array of CompositeData values, if possible, and then call the method putAll(CompositeData[]). Note that the keys used in the specified map t are ignored. This method allows, for example to add the content of another TabularData instance with the same row type (but possibly different index names) into this instance.
 public  void putAll(CompositeData[] values) 
    Add all the elements in values to this TabularData instance. If any element in values does not satisfy the constraints defined in 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.
 public Object remove(Object key) 
    This method simply calls remove((Object[]) key).
 public 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.
 public int size() 
    Returns the number of rows in this TabularDataSupport instance.
 public String toString() 
    Returns a string representation of this 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() ).

 public Collection<Object> values() 
    Returns a collection view of the rows contained in this {@code TabularDataSupport} instance. The returned {@code Collection} is a {@code Collection} but is declared as a {@code Collection} 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 {@code 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 {@code TabularDataSupport} instance, via the Iterator#remove , Collection#remove , Collection#removeAll , Collection#retainAll , and Collection#clear operations. It does not support the Collection#add or Collection#addAll operations.