javax.management.openmbean
Class CompositeTypejava.lang.Object javax.management.openmbean.OpenType javax.management.openmbean.CompositeType
- All Implemented Interfaces:
- Serializable
- public class CompositeType
- extends OpenType
- implements Serializable
The
CompositeType
class is the open type class whose instances describe the types ofCompositeData
values.
- Since:
- JMX 1.1
- Version:
- 3.14 02/10/01
- Author:
- Sun Microsystems, Inc.
- See Also:
- Serialized Form
Field Summary
Fields inherited from class javax.management.openmbean.OpenType ALLOWED_CLASSNAMES
Constructor Summary
CompositeType(String typeName, String description, String[] itemNames, String[] itemDescriptions, OpenType[] itemTypes)
Constructs aCompositeType
instance, checking for the validity of the given parameters.
Method Summary boolean containsKey(String itemName)
Returnstrue
if thisCompositeType
instance defines an item whose name is itemName.boolean equals(Object obj)
Compares the specifiedobj
parameter with thisCompositeType
instance for equality.String getDescription(String itemName)
Returns the description of the item whose name is itemName, ornull
if thisCompositeType
instance does not define any item whose name is itemName.OpenType getType(String itemName)
Returns the open type of the item whose name is itemName, ornull
if thisCompositeType
instance does not define any item whose name is itemName.int hashCode()
Returns the hash code value for thisCompositeType
instance.boolean isValue(Object obj)
Tests whether obj is a value which could be described by thisCompositeType
instance.Set keySet()
Returns an unmodifiable Set view of all the item names defined by thisCompositeType
instance.String toString()
Returns a string representation of thisCompositeType
instance.
Methods inherited from class javax.management.openmbean.OpenType getClassName, getDescription, getTypeName, isArray
Methods inherited from class java.lang.Object clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Constructor Detail CompositeType
public CompositeType(String typeName, String description, String[] itemNames, String[] itemDescriptions, OpenType[] itemTypes) throws OpenDataException
- Constructs a
CompositeType
instance, 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
CompositeType
instance.The Java class name of composite data values this composite type represents (ie the class name returned by the getClassName method) is set to the string value returned by
CompositeData.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
CompositeType
instance; 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 aCompositeType
instance 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
CompositeType
instance; should be of the same size as itemNames; no element can be a null or 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
CompositeType
instance; 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 Detail containsKey
public boolean containsKey(String itemName)
- Returns
true
if thisCompositeType
instance defines an item whose name is itemName.
- Parameters:
- itemName - the name of the item.
- Returns:
- true if an item of this name is present.
getDescription
public String getDescription(String itemName)
- Returns the description of the item whose name is itemName, or
null
if thisCompositeType
instance does not define any item whose name is itemName.
- Parameters:
- itemName - the name of the item.
- Returns:
- the description.
getType
public OpenType getType(String itemName)
- Returns the open type of the item whose name is itemName, or
null
if thisCompositeType
instance does not define any item whose name is itemName.
- Parameters:
- itemName - the name of the time.
- Returns:
- the type.
keySet
public Set keySet()
- Returns an unmodifiable Set view of all the item names defined by this
CompositeType
instance. The set's iterator will return the item names in ascending order.
- Returns:
- a Set of String.
isValue
public boolean isValue(Object obj)
- Tests whether obj is a value which could be described by this
CompositeType
instance.If obj is null or is not an instance of
javax.management.openmbean.CompositeData
,isValue
returnsfalse
. If obj is an instance ofjavax.management.openmbean.CompositeData
, its composite type is tested for equality with thisCompositeType
instance, andisValue
returnstrue
if and only ifequals
returnstrue
.
- Specified by:
- isValue in class OpenType
- Parameters:
- obj - the value whose open type is to be tested for equality with this
CompositeType
instance.- Returns:
true
if obj is a value for this composite type,false
otherwise.
equals
public boolean equals(Object obj)
- Compares the specified
obj
parameter with thisCompositeType
instance for equality.Two
CompositeType
instances 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:
- equals in class OpenType
- Parameters:
- obj - the object to be compared for equality with this
CompositeType
instance; if obj isnull
,equals
returnsfalse
.- Returns:
true
if the specified object is equal to thisCompositeType
instance.
hashCode
public int hashCode()
- Returns the hash code value for this
CompositeType
instance.The hash code of a
CompositeType
instance is the sum of the hash codes of all elements of information used inequals
comparisons (ie: name, items names, items types). This ensures thatt1.equals(t2)
implies thatt1.hashCode()==t2.hashCode()
for any twoCompositeType
instancest1
andt2
, as required by the general contract of the methodObject.hashCode
.As
CompositeType
instances 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.
- Specified by:
- hashCode in class OpenType
- Returns:
- the hash code value for this
CompositeType
instance
toString
public String toString()
- Returns a string representation of this
CompositeType
instance.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
CompositeType
instances 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:
- toString in class OpenType
- Returns:
- a string representation of this
CompositeType
instance
Submit a bug or featureCopyright 2003 Sun Microsystems, Inc. All rights reserved.