-
- All Known Implementing Classes:
CompositeDataSupport,GcInfo
public interface CompositeDataTheCompositeDatainterface specifies the behavior of a specific type of complex open data objects which represent composite data structures.- Since:
- 1.5
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleancontainsKey(String key)Returnstrueif and only if thisCompositeDatainstance contains an item whose name iskey.booleancontainsValue(Object value)Returnstrueif and only if thisCompositeDatainstance contains an item whose value isvalue.booleanequals(Object obj)Compares the specified obj parameter with thisCompositeDatainstance for equality.Objectget(String key)Returns the value of the item whose name iskey.Object[]getAll(String[] keys)Returns an array of the values of the items whose names are specified bykeys, in the same order askeys.CompositeTypegetCompositeType()Returns the composite type of this composite data instance.inthashCode()Returns the hash code value for thisCompositeDatainstance.StringtoString()Returns a string representation of thisCompositeDatainstance.Collection<?>values()Returns an unmodifiable Collection view of the item values contained in thisCompositeDatainstance.
-
-
-
Method Detail
-
getCompositeType
CompositeType getCompositeType()
Returns the composite type of this composite data instance.- Returns:
- the type of this CompositeData.
-
get
Object get(String key)
Returns the value of the item whose name iskey.- Parameters:
key- the name of the item.- Returns:
- the value associated with this key.
- Throws:
IllegalArgumentException- ifkeyis a null or empty String.InvalidKeyException- ifkeyis not an existing item name for thisCompositeDatainstance.
-
getAll
Object[] getAll(String[] keys)
Returns an array of the values of the items whose names are specified bykeys, in the same order askeys.- Parameters:
keys- the names of the items.- Returns:
- the values corresponding to the keys.
- Throws:
IllegalArgumentException- if an element inkeysis a null or empty String.InvalidKeyException- if an element inkeysis not an existing item name for thisCompositeDatainstance.
-
containsKey
boolean containsKey(String key)
Returnstrueif and only if thisCompositeDatainstance contains an item whose name iskey. Ifkeyis a null or empty String, this method simply returns false.- Parameters:
key- the key to be tested.- Returns:
- true if this
CompositeDatacontains the key.
-
containsValue
boolean containsValue(Object value)
Returnstrueif and only if thisCompositeDatainstance contains an item whose value isvalue.- Parameters:
value- the value to be tested.- Returns:
- true if this
CompositeDatacontains the value.
-
values
Collection<?> values()
Returns an unmodifiable Collection view of the item values contained in thisCompositeDatainstance. The returned collection's iterator will return the values in the ascending lexicographic order of the corresponding item names.- Returns:
- the values.
-
equals
boolean equals(Object obj)
Compares the specified obj parameter with thisCompositeDatainstance for equality.Returns
trueif and only if all of the following statements are true:- obj is non null,
- obj also implements the
CompositeDatainterface, - their composite types are equal
- their contents, i.e. (name, value) pairs are equal. If a value contained in
the content is an array, the value comparison is done as if by calling
the
deepEqualsmethod for arrays of object reference types or the appropriate overloading ofArrays.equals(e1,e2)for arrays of primitive types
This ensures that this
equalsmethod works properly for obj parameters which are different implementations of theCompositeDatainterface, with the restrictions mentioned in theequalsmethod of thejava.util.Collectioninterface.- Overrides:
equalsin classObject- Parameters:
obj- the object to be compared for equality with thisCompositeDatainstance.- Returns:
trueif the specified object is equal to thisCompositeDatainstance.- See Also:
Object.hashCode()
-
hashCode
int hashCode()
Returns the hash code value for thisCompositeDatainstance.The hash code of a
CompositeDatainstance is the sum of the hash codes of all elements of information used inequalscomparisons (ie: its composite type and all the item values).This ensures that
t1.equals(t2)implies thatt1.hashCode()==t2.hashCode()for any twoCompositeDatainstancest1andt2, as required by the general contract of the methodObject.hashCode().Each item value's hash code is added to the returned hash code. If an item value is an array, its hash code is obtained as if by calling the
deepHashCodemethod for arrays of object reference types or the appropriate overloading ofArrays.hashCode(e)for arrays of primitive types.- Overrides:
hashCodein classObject- Returns:
- the hash code value for this
CompositeDatainstance - See Also:
Object.equals(java.lang.Object)
-
toString
String toString()
Returns a string representation of thisCompositeDatainstance.The string representation consists of the name of the implementing class, the string representation of the composite type of this instance, and the string representation of the contents (ie list the itemName=itemValue mappings).
-
-