javax.management.openmbean
Class ArrayTypejava.lang.Object javax.management.openmbean.OpenType javax.management.openmbean.ArrayType
- All Implemented Interfaces:
- Serializable
- public class ArrayType
- extends OpenType
- implements Serializable
The
ArrayType
class is the open type class whose instances describe all open data values which are n-dimensional arrays of open data values.
- Since:
- JMX 1.1
- Version:
- 3.13 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
ArrayType(int dimension, OpenType elementType)
Constructs an ArrayType instance describing open data values which are arrays with dimension dimension of elements whose open type is elementType.
Method Summary boolean equals(Object obj)
Compares the specifiedobj
parameter with thisArrayType
instance for equality.int getDimension()
Returns the dimension of arrays described by this ArrayType instance.OpenType getElementOpenType()
Returns the open type of element values contained in the arrays described by this ArrayType instance.int hashCode()
Returns the hash code value for thisArrayType
instance.boolean isValue(Object obj)
Tests whether obj is a value for thisArrayType
instance.String toString()
Returns a string representation of thisArrayType
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 ArrayType
public ArrayType(int dimension, OpenType elementType) throws OpenDataException
- Constructs an ArrayType instance describing open data values which are arrays with dimension dimension of elements whose open type is elementType.
When invoked on an ArrayType instance, the getClassName method returns the class name of the array instances it describes (following the rules defined by the
getName
method ofjava.lang.Class
), not the class name of the array elements (which is returned by a call to getElementOpenType().getClassName()).The internal field corresponding to the type name of this
ArrayType
instance is also set to the class name of the array instances it describes. In other words, the methodsgetClassName
andgetTypeName
return the same string value. The internal field corresponding to the description of thisArrayType
instance is set to a string value which follows the following template:
<dimension>-dimension array of <element_class_name>As an example, the following piece of code:
would produce the following output:ArrayType t = new ArrayType(3, SimpleType.STRING); System.out.println("array class name = "+ t.getClassName()); System.out.println("element class name = "+ t.getElementOpenType().getClassName()); System.out.println("array type name = "+ t.getTypeName()); System.out.println("array type description = "+ t.getDescription());array class name = [[[java.lang.String; element class name = java.lang.String array type name = [[[java.lang.String; array type description = 3-dimension array of java.lang.String
- Parameters:
- dimension - the dimension of arrays described by this ArrayType instance; must be greater than or equal to 1.
- elementType - the open type of element values contained in the arrays described by this ArrayType instance; must be an instance of either SimpleType, CompositeType or TabularType.
- Throws:
- IllegalArgumentException - if dimension is not a positive integer
- OpenDataException - if elementType is an instance of ArrayType
Method Detail getDimension
public int getDimension()
- Returns the dimension of arrays described by this ArrayType instance.
- Returns:
- the dimension.
getElementOpenType
public OpenType getElementOpenType()
- Returns the open type of element values contained in the arrays described by this ArrayType instance.
- Returns:
- the element type.
isValue
public boolean isValue(Object obj)
- Tests whether obj is a value for this
ArrayType
instance.This method returns
true
if and only if obj is not null, obj is an array and any one of the following is true:
- if this
ArrayType
instance describes an array of SimpleType elements, obj's class name is the same as the className field defined for thisArrayType
instance (ie the class name returned by the getClassName method, which includes the dimension information),
- if this
ArrayType
instance describes an array of classes implementing the TabularData interface or the CompositeData interface, obj is assignable to such a declared array, and each element contained in obj is either null or a valid value for the element's open type specified by thisArrayType
instance.
- Specified by:
- isValue in class OpenType
- Parameters:
- obj - the object to be tested.
- Returns:
true
if obj is a value for thisArrayType
instance.
equals
public boolean equals(Object obj)
- Compares the specified
obj
parameter with thisArrayType
instance for equality.Two
ArrayType
instances are equal if and only if they describes array instances which have the same dimension and elements' open type.
- Specified by:
- equals in class OpenType
- Parameters:
- obj - the object to be compared for equality with this
ArrayType
instance; if obj isnull
or is not an instance of the classArrayType
,equals
returnsfalse
.- Returns:
true
if the specified object is equal to thisArrayType
instance.
hashCode
public int hashCode()
- Returns the hash code value for this
ArrayType
instance.The hash code of a
ArrayType
instance is the sum of the hash codes of all elements of information used inequals
comparisons (ie: dimension and elements' type). This ensures thatt1.equals(t2)
implies thatt1.hashCode()==t2.hashCode()
for any twoArrayType
instancest1
andt2
, as required by the general contract of the methodObject.hashCode
.As
ArrayType
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
ArrayType
instance
toString
public String toString()
- Returns a string representation of this
ArrayType
instance.The string representation consists of the name of this class (ie
javax.management.openmbean.ArrayType
), the type name, the dimension and elements' type defined for this instance,As
ArrayType
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
ArrayType
instance
Submit a bug or featureCopyright 2003 Sun Microsystems, Inc. All rights reserved.