- java.lang.Object
-
- javax.management.MBeanFeatureInfo
-
- javax.management.MBeanAttributeInfo
-
- javax.management.openmbean.OpenMBeanAttributeInfoSupport
-
- All Implemented Interfaces:
Serializable
,Cloneable
,DescriptorRead
,OpenMBeanAttributeInfo
,OpenMBeanParameterInfo
public class OpenMBeanAttributeInfoSupport extends MBeanAttributeInfo implements OpenMBeanAttributeInfo
Describes an attribute of an open MBean.- Since:
- 1.5
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class javax.management.MBeanFeatureInfo
description, name
-
-
Constructor Summary
Constructors Constructor Description OpenMBeanAttributeInfoSupport(String name, String description, OpenType<?> openType, boolean isReadable, boolean isWritable, boolean isIs)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
anddescription
, and the specified read/write access properties.OpenMBeanAttributeInfoSupport(String name, String description, OpenType<?> openType, boolean isReadable, boolean isWritable, boolean isIs, Descriptor descriptor)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
, read/write access properties, andDescriptor
.OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
anddefaultValue
, and the specified read/write access properties.OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue, Comparable<T> minValue, Comparable<T> maxValue)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean, with the specifiedname
,openType
,description
,defaultValue
,minValue
andmaxValue
.OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue, T[] legalValues)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
,defaultValue
andlegalValues
, and the specified read/write access properties.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object obj)
Compares the specifiedobj
parameter with thisOpenMBeanAttributeInfoSupport
instance for equality.Object
getDefaultValue()
Returns the default value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.Set<?>
getLegalValues()
Returns an unmodifiable Set of legal values for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.Comparable<?>
getMaxValue()
Returns the maximal value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.Comparable<?>
getMinValue()
Returns the minimal value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.OpenType<?>
getOpenType()
Returns the open type for the values of the attribute described by thisOpenMBeanAttributeInfoSupport
instance.boolean
hasDefaultValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null default value for the described attribute,false
otherwise.int
hashCode()
Returns the hash code value for thisOpenMBeanAttributeInfoSupport
instance.boolean
hasLegalValues()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null set of legal values for the described attribute,false
otherwise.boolean
hasMaxValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null maximal value for the described attribute,false
otherwise.boolean
hasMinValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null minimal value for the described attribute,false
otherwise.boolean
isValue(Object obj)
Tests whetherobj
is a valid value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance.String
toString()
Returns a string representation of thisOpenMBeanAttributeInfoSupport
instance.-
Methods inherited from class javax.management.MBeanAttributeInfo
clone, getType, isIs, isReadable, isWritable
-
Methods inherited from class javax.management.MBeanFeatureInfo
getDescription, getDescriptor, getName
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface javax.management.openmbean.OpenMBeanAttributeInfo
isIs, isReadable, isWritable
-
Methods inherited from interface javax.management.openmbean.OpenMBeanParameterInfo
getDescription, getName
-
-
-
-
Constructor Detail
-
OpenMBeanAttributeInfoSupport
public OpenMBeanAttributeInfoSupport(String name, String description, OpenType<?> openType, boolean isReadable, boolean isWritable, boolean isIs)
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
anddescription
, and the specified read/write access properties.- Parameters:
name
- cannot be a null or empty string.description
- cannot be a null or empty string.openType
- cannot be null.isReadable
-true
if the attribute has a getter exposed for management.isWritable
-true
if the attribute has a setter exposed for management.isIs
-true
if the attribute's getter is of the formisXXX
.- Throws:
IllegalArgumentException
- ifname
ordescription
are null or empty string, oropenType
is null.
-
OpenMBeanAttributeInfoSupport
public OpenMBeanAttributeInfoSupport(String name, String description, OpenType<?> openType, boolean isReadable, boolean isWritable, boolean isIs, Descriptor descriptor)
Constructs an
OpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
, read/write access properties, andDescriptor
.The
descriptor
can contain entries that will define the values returned by certain methods of this class, as explained in the package description.- Parameters:
name
- cannot be a null or empty string.description
- cannot be a null or empty string.openType
- cannot be null.isReadable
-true
if the attribute has a getter exposed for management.isWritable
-true
if the attribute has a setter exposed for management.isIs
-true
if the attribute's getter is of the formisXXX
.descriptor
- The descriptor for the attribute. This may be null which is equivalent to an empty descriptor.- Throws:
IllegalArgumentException
- ifname
ordescription
are null or empty string, oropenType
is null, or the descriptor entries are invalid as described in the package description.- Since:
- 1.6
-
OpenMBeanAttributeInfoSupport
public OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue) throws OpenDataException
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
anddefaultValue
, and the specified read/write access properties.- Type Parameters:
T
- allows the compiler to check that thedefaultValue
, if non-null, has the correct Java type for the givenopenType
.- Parameters:
name
- cannot be a null or empty string.description
- cannot be a null or empty string.openType
- cannot be null.isReadable
-true
if the attribute has a getter exposed for management.isWritable
-true
if the attribute has a setter exposed for management.isIs
-true
if the attribute's getter is of the formisXXX
.defaultValue
- must be a valid value for theopenType
specified for this attribute; default value not supported forArrayType
andTabularType
; can be null, in which case it means that no default value is set.- Throws:
IllegalArgumentException
- ifname
ordescription
are null or empty string, oropenType
is null.OpenDataException
- ifdefaultValue
is not a valid value for the specifiedopenType
, ordefaultValue
is non null andopenType
is anArrayType
or aTabularType
.
-
OpenMBeanAttributeInfoSupport
public OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue, T[] legalValues) throws OpenDataException
Constructs an
OpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean with the specifiedname
,openType
,description
,defaultValue
andlegalValues
, and the specified read/write access properties.The contents of
legalValues
are copied, so subsequent modifications of the array referenced bylegalValues
have no impact on thisOpenMBeanAttributeInfoSupport
instance.- Type Parameters:
T
- allows the compiler to check that thedefaultValue
andlegalValues
, if non-null, have the correct Java type for the givenopenType
.- Parameters:
name
- cannot be a null or empty string.description
- cannot be a null or empty string.openType
- cannot be null.isReadable
-true
if the attribute has a getter exposed for management.isWritable
-true
if the attribute has a setter exposed for management.isIs
-true
if the attribute's getter is of the formisXXX
.defaultValue
- must be a valid value for theopenType
specified for this attribute; default value not supported forArrayType
andTabularType
; can be null, in which case it means that no default value is set.legalValues
- each contained value must be valid for theopenType
specified for this attribute; legal values not supported forArrayType
andTabularType
; can be null or empty.- Throws:
IllegalArgumentException
- ifname
ordescription
are null or empty string, oropenType
is null.OpenDataException
- ifdefaultValue
is not a valid value for the specifiedopenType
, or one value inlegalValues
is not valid for the specifiedopenType
, ordefaultValue
is non null andopenType
is anArrayType
or aTabularType
, orlegalValues
is non null and non empty andopenType
is anArrayType
or aTabularType
, orlegalValues
is non null and non empty anddefaultValue
is not contained inlegalValues
.
-
OpenMBeanAttributeInfoSupport
public OpenMBeanAttributeInfoSupport(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue, Comparable<T> minValue, Comparable<T> maxValue) throws OpenDataException
Constructs anOpenMBeanAttributeInfoSupport
instance, which describes the attribute of an open MBean, with the specifiedname
,openType
,description
,defaultValue
,minValue
andmaxValue
. It is possible to specify minimal and maximal values only for an open type whose values areComparable
.- Type Parameters:
T
- allows the compiler to check that thedefaultValue
,minValue
, andmaxValue
, if non-null, have the correct Java type for the givenopenType
.- Parameters:
name
- cannot be a null or empty string.description
- cannot be a null or empty string.openType
- cannot be null.isReadable
-true
if the attribute has a getter exposed for management.isWritable
-true
if the attribute has a setter exposed for management.isIs
-true
if the attribute's getter is of the formisXXX
.defaultValue
- must be a valid value for theopenType
specified for this attribute; default value not supported forArrayType
andTabularType
; can be null, in which case it means that no default value is set.minValue
- must be valid for theopenType
specified for this attribute; can be null, in which case it means that no minimal value is set.maxValue
- must be valid for theopenType
specified for this attribute; can be null, in which case it means that no maximal value is set.- Throws:
IllegalArgumentException
- ifname
ordescription
are null or empty string, oropenType
is null.OpenDataException
- ifdefaultValue
,minValue
ormaxValue
is not a valid value for the specifiedopenType
, ordefaultValue
is non null andopenType
is anArrayType
or aTabularType
, or bothminValue
andmaxValue
are non-null andminValue.compareTo(maxValue) > 0
istrue
, or bothdefaultValue
andminValue
are non-null andminValue.compareTo(defaultValue) > 0
istrue
, or bothdefaultValue
andmaxValue
are non-null anddefaultValue.compareTo(maxValue) > 0
istrue
.
-
-
Method Detail
-
getOpenType
public OpenType<?> getOpenType()
Returns the open type for the values of the attribute described by thisOpenMBeanAttributeInfoSupport
instance.- Specified by:
getOpenType
in interfaceOpenMBeanParameterInfo
- Returns:
- the open type.
-
getDefaultValue
public Object getDefaultValue()
Returns the default value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.- Specified by:
getDefaultValue
in interfaceOpenMBeanParameterInfo
- Returns:
- the default value.
-
getLegalValues
public Set<?> getLegalValues()
Returns an unmodifiable Set of legal values for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.- Specified by:
getLegalValues
in interfaceOpenMBeanParameterInfo
- Returns:
- the set of legal values.
-
getMinValue
public Comparable<?> getMinValue()
Returns the minimal value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.- Specified by:
getMinValue
in interfaceOpenMBeanParameterInfo
- Returns:
- the minimum value.
-
getMaxValue
public Comparable<?> getMaxValue()
Returns the maximal value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance, if specified, ornull
otherwise.- Specified by:
getMaxValue
in interfaceOpenMBeanParameterInfo
- Returns:
- the maximum value.
-
hasDefaultValue
public boolean hasDefaultValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null default value for the described attribute,false
otherwise.- Specified by:
hasDefaultValue
in interfaceOpenMBeanParameterInfo
- Returns:
- true if there is a default value.
-
hasLegalValues
public boolean hasLegalValues()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null set of legal values for the described attribute,false
otherwise.- Specified by:
hasLegalValues
in interfaceOpenMBeanParameterInfo
- Returns:
- true if there is a set of legal values.
-
hasMinValue
public boolean hasMinValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null minimal value for the described attribute,false
otherwise.- Specified by:
hasMinValue
in interfaceOpenMBeanParameterInfo
- Returns:
- true if there is a minimum value.
-
hasMaxValue
public boolean hasMaxValue()
Returnstrue
if thisOpenMBeanAttributeInfoSupport
instance specifies a non-null maximal value for the described attribute,false
otherwise.- Specified by:
hasMaxValue
in interfaceOpenMBeanParameterInfo
- Returns:
- true if there is a maximum value.
-
isValue
public boolean isValue(Object obj)
Tests whetherobj
is a valid value for the attribute described by thisOpenMBeanAttributeInfoSupport
instance.- Specified by:
isValue
in interfaceOpenMBeanParameterInfo
- Parameters:
obj
- the object to be tested.- Returns:
true
ifobj
is a valid value for the parameter described by thisOpenMBeanAttributeInfoSupport
instance,false
otherwise.
-
equals
public boolean equals(Object obj)
Compares the specifiedobj
parameter with thisOpenMBeanAttributeInfoSupport
instance for equality.Returns
true
if and only if all of the following statements are true:obj
is non null,obj
also implements theOpenMBeanAttributeInfo
interface,- their names are equal
- their open types are equal
- their access properties (isReadable, isWritable and isIs) are equal
- their default, min, max and legal values are equal.
equals
method works properly forobj
parameters which are different implementations of theOpenMBeanAttributeInfo
interface.If
obj
also implementsDescriptorRead
, then itsgetDescriptor()
method must also return the same value as for this object.- Specified by:
equals
in interfaceOpenMBeanAttributeInfo
- Specified by:
equals
in interfaceOpenMBeanParameterInfo
- Overrides:
equals
in classMBeanAttributeInfo
- Parameters:
obj
- the object to be compared for equality with thisOpenMBeanAttributeInfoSupport
instance.- Returns:
true
if the specified object is equal to thisOpenMBeanAttributeInfoSupport
instance.- See Also:
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
Returns the hash code value for this
OpenMBeanAttributeInfoSupport
instance.The hash code of an
OpenMBeanAttributeInfoSupport
instance is the sum of the hash codes of all elements of information used inequals
comparisons (ie: its name, its open type, its default, min, max and legal values, and its Descriptor).This ensures that
t1.equals(t2)
implies thatt1.hashCode()==t2.hashCode()
for any twoOpenMBeanAttributeInfoSupport
instancest1
andt2
, as required by the general contract of the methodObject.hashCode()
.However, note that another instance of a class implementing the
OpenMBeanAttributeInfo
interface may be equal to thisOpenMBeanAttributeInfoSupport
instance as defined byequals(java.lang.Object)
, but may have a different hash code if it is calculated differently.As
OpenMBeanAttributeInfoSupport
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 interfaceOpenMBeanAttributeInfo
- Specified by:
hashCode
in interfaceOpenMBeanParameterInfo
- Overrides:
hashCode
in classMBeanAttributeInfo
- Returns:
- the hash code value for this
OpenMBeanAttributeInfoSupport
instance - See Also:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
toString
public String toString()
Returns a string representation of thisOpenMBeanAttributeInfoSupport
instance.The string representation consists of the name of this class (i.e.
javax.management.openmbean.OpenMBeanAttributeInfoSupport
), the string representation of the name and open type of the described parameter, the string representation of its default, min, max and legal values and the string representation of its descriptor.As
OpenMBeanAttributeInfoSupport
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 interfaceOpenMBeanAttributeInfo
- Specified by:
toString
in interfaceOpenMBeanParameterInfo
- Overrides:
toString
in classMBeanAttributeInfo
- Returns:
- a string representation of this
OpenMBeanAttributeInfoSupport
instance.
-
-