Constructs an
OpenMBeanAttributeInfoSupport
instance,
which describes the attribute of an open MBean, with the
specified
name
,
openType
,
description
,
defaultValue
,
minValue
and
maxValue
.
It is possible to specify minimal and maximal values only for
an open type whose values are
Comparable
.
Parameters:
-
name - cannot be a null or empty string.
-
description - cannot be a null or empty string.
-
openType - cannot be null.
-
isReadable - {@code true} if the attribute has a getter
exposed for management.
-
isWritable - {@code true} if the attribute has a setter
exposed for management.
-
isIs - {@code true} if the attribute's getter is of the
form
isXXX.
-
defaultValue - must be a valid value for the {@code
openType} specified for this attribute; default value not
supported for {@code ArrayType} and {@code TabularType}; can be
null, in which case it means that no default value is set.
-
minValue - must be valid for the {@code openType}
specified for this attribute; can be null, in which case it
means that no minimal value is set.
-
maxValue - must be valid for the {@code openType}
specified for this attribute; can be null, in which case it
means that no maximal value is set.
-
T - allows the compiler to check that the {@code
defaultValue}, {@code minValue}, and {@code maxValue}, if
non-null, have the correct Java type for the given {@code
openType}.
Throws:
-
IllegalArgumentException - if {@code name} or {@code
description} are null or empty string, or {@code openType} is
null.
-
OpenDataException - if {@code defaultValue}, {@code
minValue} or {@code maxValue} is not a valid value for the
specified {@code openType}, or {@code defaultValue} is non null
and {@code openType} is an {@code ArrayType} or a {@code
TabularType}, or both {@code minValue} and {@code maxValue} are
non-null and {@code minValue.compareTo(maxValue) > 0} is {@code
true}, or both {@code defaultValue} and {@code minValue} are
non-null and {@code minValue.compareTo(defaultValue) > 0} is
{@code true}, or both {@code defaultValue} and {@code maxValue}
are non-null and {@code defaultValue.compareTo(maxValue) > 0}
is {@code true}.