APIdia Launch Partner
Top Description Fields Constructors Methods
javax.management.modelmbean

public Class ModelMBeanAttributeInfo

extends MBeanAttributeInfo
implements DescriptorAccess
Class Inheritance
All Implemented Interfaces
javax.management.DescriptorAccess, javax.management.DescriptorRead
Static Imports
com.sun.jmx.defaults.JmxProperties.MODELMBEAN_LOGGER

The ModelMBeanAttributeInfo object describes an attribute of the ModelMBean. It is a subclass of MBeanAttributeInfo with the addition of an associated Descriptor and an implementation of the DescriptorAccess interface.

The fields in the descriptor are defined, but not limited to, the following. Note that when the Type in this table is Number, a String that is the decimal representation of a Long can also be used.

ModelMBeanAttributeInfo Fields
NameTypeMeaning
nameString Attribute name.
descriptorTypeString Must be "attribute".
valueObject Current (cached) value for attribute.
defaultObject Default value for attribute.
displayNameString Name of attribute to be used in displays.
getMethodString Name of operation descriptor for get method.
setMethodString Name of operation descriptor for set method.
protocolMapDescriptor See the section "Protocol Map Support" in the JMX specification document. Mappings must be appropriate for the attribute and entries can be updated or augmented at runtime.
persistPolicyString One of: OnUpdate|OnTimer|NoMoreOftenThan|OnUnregister|Always|Never. See the section "MBean Descriptor Fields" in the JMX specification document.
persistPeriodNumber Frequency of persist cycle in seconds. Used when persistPolicy is "OnTimer" or "NoMoreOftenThan".
currencyTimeLimitNumber How long value is valid: <0 never, =0 always, >0 seconds.
lastUpdatedTimeStampNumber When value was set.
visibilityNumber 1-4 where 1: always visible, 4: rarely visible.
presentationStringString XML formatted string to allow presentation of data.

The default descriptor contains the name, descriptorType and displayName fields. The default value of the name and displayName fields is the name of the attribute.

Note

because of inconsistencies in previous versions of this specification, it is recommended not to use negative or zero values for currencyTimeLimit. To indicate that a cached value is never valid, omit the currencyTimeLimit field. To indicate that it is always valid, use a very large number for this field.

The serialVersionUID of this class is 6181543027787327345L.

Since
1.5

Field Summary

Modifier and TypeField and Description
private Descriptor
private static final String
private static final ObjectStreamField[]
private static final long

Constructor Summary

AccessConstructor and Description
public
ModelMBeanAttributeInfo(String
The name of the attribute.
name
,
String
A human readable description of the attribute. Optional.
description
,
Method
The method used for reading the attribute value. May be null if the property is write-only.
getter
,
Method
The method used for writing the attribute value. May be null if the attribute is read-only.
setter
)

Constructs a ModelMBeanAttributeInfo object with a default descriptor.

public
ModelMBeanAttributeInfo(String
The name of the attribute.
name
,
String
A human readable description of the attribute. Optional.
description
,
Method
The method used for reading the attribute value. May be null if the property is write-only.
getter
,
Method
The method used for writing the attribute value. May be null if the attribute is read-only.
setter
,
Descriptor
An instance of Descriptor containing the appropriate metadata for this instance of the Attribute. If it is null, then a default descriptor will be created. If the descriptor does not contain the field "displayName" this field is added in the descriptor with its default value.
descriptor
)

Constructs a ModelMBeanAttributeInfo object.

public
ModelMBeanAttributeInfo(String
The name of the attribute
name
,
String
The type or class name of the attribute
type
,
String
A human readable description of the attribute.
description
,
boolean
True if the attribute has a getter method, false otherwise.
isReadable
,
boolean
True if the attribute has a setter method, false otherwise.
isWritable
,
boolean
True if the attribute has an "is" getter, false otherwise.
isIs
)

Constructs a ModelMBeanAttributeInfo object with a default descriptor.

public
ModelMBeanAttributeInfo(String
The name of the attribute
name
,
String
The type or class name of the attribute
type
,
String
A human readable description of the attribute.
description
,
boolean
True if the attribute has a getter method, false otherwise.
isReadable
,
boolean
True if the attribute has a setter method, false otherwise.
isWritable
,
boolean
True if the attribute has an "is" getter, false otherwise.
isIs
,
Descriptor
An instance of Descriptor containing the appropriate metadata for this instance of the Attribute. If it is null then a default descriptor will be created. If the descriptor does not contain the field "displayName" this field is added in the descriptor with its default value.
descriptor
)

Constructs a ModelMBeanAttributeInfo object.

public
ModelMBeanAttributeInfo(ModelMBeanAttributeInfo
the ModelMBeanAttributeInfo to be duplicated
inInfo
)

Constructs a new ModelMBeanAttributeInfo object from this ModelMBeanAttributeInfo Object.

Method Summary

Modifier and TypeMethod and Description
public Object
clone()

Overrides javax.management.MBeanAttributeInfo.clone.

Creates and returns a new ModelMBeanAttributeInfo which is a duplicate of this ModelMBeanAttributeInfo.

public Descriptor

Returns:

Descriptor associated with the ModelMBeanAttributeInfo object.
getDescriptor
()

Overrides javax.management.MBeanFeatureInfo.getDescriptor.

Implements javax.management.DescriptorRead.getDescriptor.

Gets a copy of the associated Descriptor for the ModelMBeanAttributeInfo.

private void
public void
setDescriptor(Descriptor
replaces the Descriptor associated with the ModelMBeanAttributeInfo
inDescriptor
)

Implements javax.management.DescriptorAccess.setDescriptor.

Sets associated Descriptor (full replace) for the ModelMBeanAttributeDescriptor.

public String
toString()

Overrides javax.management.MBeanAttributeInfo.toString.

Returns a human-readable version of the ModelMBeanAttributeInfo instance.

private Descriptor
validDescriptor(final Descriptor
Descriptor to be checked, or null which is equivalent to an empty Descriptor.
in
)

Clones the passed in Descriptor, sets default values, and checks for validity.

private void
Inherited from javax.management.MBeanAttributeInfo:
equalsgetTypehashCodeisIsisReadableisWritable

Field Detail

attrDescriptorback to summary
private Descriptor attrDescriptor
currClassback to summary
private static final String currClass
serialPersistentFieldsback to summary
private static final ObjectStreamField[] serialPersistentFields
Serial Fields:
attrDescriptor:Descriptor
The Descriptor containing the metadata corresponding to this attribute
serialVersionUIDback to summary
private static final long serialVersionUID

Hides javax.management.MBeanAttributeInfo.serialVersionUID.

Constructor Detail

ModelMBeanAttributeInfoback to summary
public ModelMBeanAttributeInfo(String name, String description, Method getter, Method setter) throws IntrospectionException

Constructs a ModelMBeanAttributeInfo object with a default descriptor. The Descriptor of the constructed object will include fields contributed by any annotations on the Method objects that contain the DescriptorKey meta-annotation.

Parameters
name:String

The name of the attribute.

description:String

A human readable description of the attribute. Optional.

getter:Method

The method used for reading the attribute value. May be null if the property is write-only.

setter:Method

The method used for writing the attribute value. May be null if the attribute is read-only.

Exceptions
IntrospectionException:
There is a consistency problem in the definition of this attribute.
ModelMBeanAttributeInfoback to summary
public ModelMBeanAttributeInfo(String name, String description, Method getter, Method setter, Descriptor descriptor) throws IntrospectionException

Constructs a ModelMBeanAttributeInfo object. The Descriptor of the constructed object will include fields contributed by any annotations on the Method objects that contain the DescriptorKey meta-annotation.

Parameters
name:String

The name of the attribute.

description:String

A human readable description of the attribute. Optional.

getter:Method

The method used for reading the attribute value. May be null if the property is write-only.

setter:Method

The method used for writing the attribute value. May be null if the attribute is read-only.

descriptor:Descriptor

An instance of Descriptor containing the appropriate metadata for this instance of the Attribute. If it is null, then a default descriptor will be created. If the descriptor does not contain the field "displayName" this field is added in the descriptor with its default value.

Exceptions
IntrospectionException:
There is a consistency problem in the definition of this attribute.
RuntimeOperationsException:
Wraps an IllegalArgumentException. The descriptor is invalid, or descriptor field "name" is not equal to name parameter, or descriptor field "descriptorType" is not equal to "attribute".
ModelMBeanAttributeInfoback to summary
public ModelMBeanAttributeInfo(String name, String type, String description, boolean isReadable, boolean isWritable, boolean isIs)

Constructs a ModelMBeanAttributeInfo object with a default descriptor.

Parameters
name:String

The name of the attribute

type:String

The type or class name of the attribute

description:String

A human readable description of the attribute.

isReadable:boolean

True if the attribute has a getter method, false otherwise.

isWritable:boolean

True if the attribute has a setter method, false otherwise.

isIs:boolean

True if the attribute has an "is" getter, false otherwise.

ModelMBeanAttributeInfoback to summary
public ModelMBeanAttributeInfo(String name, String type, String description, boolean isReadable, boolean isWritable, boolean isIs, Descriptor descriptor)

Constructs a ModelMBeanAttributeInfo object.

Parameters
name:String

The name of the attribute

type:String

The type or class name of the attribute

description:String

A human readable description of the attribute.

isReadable:boolean

True if the attribute has a getter method, false otherwise.

isWritable:boolean

True if the attribute has a setter method, false otherwise.

isIs:boolean

True if the attribute has an "is" getter, false otherwise.

descriptor:Descriptor

An instance of Descriptor containing the appropriate metadata for this instance of the Attribute. If it is null then a default descriptor will be created. If the descriptor does not contain the field "displayName" this field is added in the descriptor with its default value.

Exceptions
RuntimeOperationsException:
Wraps an IllegalArgumentException. The descriptor is invalid, or descriptor field "name" is not equal to name parameter, or descriptor field "descriptorType" is not equal to "attribute".
ModelMBeanAttributeInfoback to summary
public ModelMBeanAttributeInfo(ModelMBeanAttributeInfo inInfo)

Constructs a new ModelMBeanAttributeInfo object from this ModelMBeanAttributeInfo Object. A default descriptor will be created.

Parameters
inInfo:ModelMBeanAttributeInfo

the ModelMBeanAttributeInfo to be duplicated

Method Detail

cloneback to summary
public Object clone()

Overrides javax.management.MBeanAttributeInfo.clone.

Creates and returns a new ModelMBeanAttributeInfo which is a duplicate of this ModelMBeanAttributeInfo.

Annotations
@Override
Exceptions
RuntimeOperationsException:
for illegal value for field Names or field Values. If the descriptor construction fails for any reason, this exception will be thrown.
getDescriptorback to summary
public Descriptor getDescriptor()

Overrides javax.management.MBeanFeatureInfo.getDescriptor.

Implements javax.management.DescriptorRead.getDescriptor.

Gets a copy of the associated Descriptor for the ModelMBeanAttributeInfo.

Returns:Descriptor

Descriptor associated with the ModelMBeanAttributeInfo object.

See Also
setDescriptor
readObjectback to summary
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException

Hides javax.management.MBeanFeatureInfo.readObject.

Deserializes a ModelMBeanAttributeInfo from an ObjectInputStream.

setDescriptorback to summary
public void setDescriptor(Descriptor inDescriptor)

Implements javax.management.DescriptorAccess.setDescriptor.

Sets associated Descriptor (full replace) for the ModelMBeanAttributeDescriptor. If the new Descriptor is null, then the associated Descriptor reverts to a default descriptor. The Descriptor is validated before it is assigned. If the new Descriptor is invalid, then a RuntimeOperationsException wrapping an IllegalArgumentException is thrown.

Parameters
inDescriptor:Descriptor

replaces the Descriptor associated with the ModelMBeanAttributeInfo

Exceptions
RuntimeOperationsException:
Wraps an IllegalArgumentException for an invalid Descriptor
See Also
getDescriptor
toStringback to summary
public String toString()

Overrides javax.management.MBeanAttributeInfo.toString.

Returns a human-readable version of the ModelMBeanAttributeInfo instance.

Annotations
@Override
validDescriptorback to summary
private Descriptor validDescriptor(final Descriptor in) throws RuntimeOperationsException

Clones the passed in Descriptor, sets default values, and checks for validity. If the Descriptor is invalid (for instance by having the wrong "name"), this indicates programming error and a RuntimeOperationsException will be thrown. The following fields will be defaulted if they are not already set: displayName=this.getName(),name=this.getName(),descriptorType = "attribute"

Parameters
in:Descriptor

Descriptor to be checked, or null which is equivalent to an empty Descriptor.

Exceptions
RuntimeOperationsException:
if Descriptor is invalid
writeObjectback to summary
private void writeObject(ObjectOutputStream out) throws IOException

Hides javax.management.MBeanFeatureInfo.writeObject.

Serializes a ModelMBeanAttributeInfo to an ObjectOutputStream.