- All Implemented Interfaces:
- Serializable
CompositeType class is the open type class
 whose instances describe the types of CompositeData values.- Since:
- 1.5
- See Also:
- 
Field SummaryFields declared in class javax.management.openmbean.OpenTypeALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionbooleancontainsKey(String itemName) Returnstrueif thisCompositeTypeinstance defines an item whose name is itemName.booleanCompares the specifiedobjparameter with thisCompositeTypeinstance for equality.getDescription(String itemName) Returns the description of the item whose name is itemName, ornullif thisCompositeTypeinstance does not define any item whose name is itemName.OpenType<?> Returns the open type of the item whose name is itemName, ornullif thisCompositeTypeinstance does not define any item whose name is itemName.inthashCode()Returns the hash code value for thisCompositeTypeinstance.booleanTests whether obj is a value which could be described by thisCompositeTypeinstance.keySet()Returns an unmodifiable Set view of all the item names defined by thisCompositeTypeinstance.toString()Returns a string representation of thisCompositeTypeinstance.Methods declared in class javax.management.openmbean.OpenTypegetClassName, getDescription, getTypeName, isArray
- 
Constructor Details- 
CompositeTypepublic CompositeType(String typeName, String description, String[] itemNames, String[] itemDescriptions, OpenType<?>[] itemTypes) throws OpenDataException Constructs aCompositeTypeinstance, checking for the validity of the given parameters. The validity constraints are described below for each parameter.Note that the contents of the three array parameters itemNames, itemDescriptions and itemTypes are internally copied so that any subsequent modification of these arrays by the caller of this constructor has no impact on the constructed CompositeTypeinstance.The Java class name of composite data values this composite type represents (ie the class name returned by the getClassNamemethod) is set to the string value returned byCompositeData.class.getName().- Parameters:
- typeName- The name given to the composite type this instance represents; cannot be a null or empty string.
- description- The human readable description of the composite type this instance represents; cannot be a null or empty string.
- itemNames- The names of the items contained in the composite data values described by this- CompositeTypeinstance; cannot be null and should contain at least one element; no element can be a null or empty string. Note that the order in which the item names are given is not important to differentiate a- CompositeTypeinstance from another; the item names are internally stored sorted in ascending alphanumeric order.
- itemDescriptions- The descriptions, in the same order as itemNames, of the items contained in the composite data values described by this- CompositeTypeinstance; should be of the same size as itemNames; no element can be null or an empty string.
- itemTypes- The open type instances, in the same order as itemNames, describing the items contained in the composite data values described by this- CompositeTypeinstance; should be of the same size as itemNames; no element can be null.
- Throws:
- IllegalArgumentException- If typeName or description is a null or empty string, or itemNames or itemDescriptions or itemTypes is null, or any element of itemNames or itemDescriptions is a null or empty string, or any element of itemTypes is null, or itemNames or itemDescriptions or itemTypes are not of the same size.
- OpenDataException- If itemNames contains duplicate item names (case sensitive, but leading and trailing whitespaces removed).
 
 
- 
- 
Method Details- 
containsKeyReturnstrueif thisCompositeTypeinstance defines an item whose name is itemName.- Parameters:
- itemName- the name of the item.
- Returns:
- true if an item of this name is present.
 
- 
getDescriptionReturns the description of the item whose name is itemName, ornullif thisCompositeTypeinstance does not define any item whose name is itemName.- Parameters:
- itemName- the name of the item.
- Returns:
- the description.
 
- 
getTypeReturns the open type of the item whose name is itemName, ornullif thisCompositeTypeinstance does not define any item whose name is itemName.- Parameters:
- itemName- the name of the time.
- Returns:
- the type.
 
- 
keySetReturns an unmodifiable Set view of all the item names defined by thisCompositeTypeinstance. The set's iterator will return the item names in ascending order.
- 
isValueTests whether obj is a value which could be described by thisCompositeTypeinstance.If obj is null or is not an instance of javax.management.openmbean.CompositeData,isValuereturnsfalse.If obj is an instance of javax.management.openmbean.CompositeData, then letctbe itsCompositeTypeas returned byCompositeData.getCompositeType(). The result is true ifthisis assignable fromct. This means that:- this.getTypeName()equals- ct.getTypeName(), and
- there are no item names present in thisthat are not also present inct, and
- for every item in this, its type is assignable from the type of the corresponding item inct.
 A TabularTypeis assignable from anotherTabularTypeif they have the same typeName and index name list, and the row type of the first is assignable from the row type of the second.An ArrayTypeis assignable from anotherArrayTypeif they have the same dimension; and both are primitive arrays or neither is; and the element type of the first is assignable from the element type of the second.In every other case, an OpenTypeis assignable from anotherOpenTypeonly if they are equal.These rules mean that extra items can be added to a CompositeDatawithout making it invalid for aCompositeTypethat does not have those items.- Specified by:
- isValuein class- OpenType<CompositeData>
- Parameters:
- obj- the value whose open type is to be tested for compatibility with this- CompositeTypeinstance.
- Returns:
- trueif obj is a value for this composite type,- falseotherwise.
 
- 
equalsCompares the specifiedobjparameter with thisCompositeTypeinstance for equality.Two CompositeTypeinstances are equal if and only if all of the following statements are true:- their type names are equal
- their items' names and types are equal
 - Specified by:
- equalsin class- OpenType<CompositeData>
- Parameters:
- obj- the object to be compared for equality with this- CompositeTypeinstance; if obj is- null,- equalsreturns- false.
- Returns:
- trueif the specified object is equal to this- CompositeTypeinstance.
- See Also:
 
- 
hashCodepublic int hashCode()Returns the hash code value for thisCompositeTypeinstance.The hash code of a CompositeTypeinstance is the sum of the hash codes of all elements of information used inequalscomparisons (ie: name, items names, items types). This ensures thatt1.equals(t2)implies thatt1.hashCode()==t2.hashCode()for any twoCompositeTypeinstancest1andt2, as required by the general contract of the methodObject.hashCode().As CompositeTypeinstances are immutable, the hash code for this instance is calculated once, on the first call tohashCode, and then the same value is returned for subsequent calls.
- 
toStringReturns a string representation of thisCompositeTypeinstance.The string representation consists of the name of this class (ie javax.management.openmbean.CompositeType), the type name for this instance, and the list of the items names and types string representation of this instance.As CompositeTypeinstances are immutable, the string representation for this instance is calculated once, on the first call totoString, and then the same value is returned for subsequent calls.- Specified by:
- toStringin class- OpenType<CompositeData>
- Returns:
- a string representation of this CompositeTypeinstance
 
 
-