javax.management.modelmbean
Class ModelMBeanAttributeInfo

java.lang.Object
  |
  +--javax.management.MBeanFeatureInfo
        |
        +--javax.management.MBeanAttributeInfo
              |
              +--javax.management.modelmbean.ModelMBeanAttributeInfo

public class ModelMBeanAttributeInfo
extends MBeanAttributeInfo
implements DescriptorAccess, java.lang.Cloneable

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:

	name           : attribute name
	descriptorType : must be "attribute"
	value          : current value for attribute
	default        : default value for attribute
	displayName    : name of attribute to be used in displays
	getMethod      : name of operation descriptor for get method
	setMethod      : name of operation descriptor for set method
	protocolMap    : object which implements the ProtocolMap interface: map of protocol names and protocol hints
	persistPolicy  : OnUpdate|OnTimer|NoMoreOftenThan|Always|Never
	persistPeriod  : seconds - frequency of persist cycle. Used when persistPolicy is"OnTimer" or "NoMoreOftenThan".
	currencyTimeLimit : how long value is valid, <0 never, =0 always, >0 seconds
	lastUpdatedTimeStamp : when value was set
	iterable       : T - object value supports Iterable interface, F - does not support Iterable interface
	visibility     : 1-4 where 1: always visible 4: rarely visible
	presentationString : xml formatted string to allow presentation of data
 

The default descriptor contains the name and descriptorType fields.

See Also:
Serialized Form

Field Summary
(package private)  Descriptor attrDescriptor
           
 
Fields inherited from class javax.management.MBeanAttributeInfo
NO_ATTRIBUTES
 
Fields inherited from class javax.management.MBeanFeatureInfo
description, name
 
Constructor Summary
ModelMBeanAttributeInfo(ModelMBeanAttributeInfo inInfo)
          Constructs a new ModelMBeanAttributeInfo object from this ModelMBeanAttributeInfo Object.
ModelMBeanAttributeInfo(java.lang.String name, java.lang.String description, java.lang.reflect.Method getter, java.lang.reflect.Method setter)
          Constructs a ModelMBeanAttributeInfo object with a default descriptor.
ModelMBeanAttributeInfo(java.lang.String name, java.lang.String description, java.lang.reflect.Method getter, java.lang.reflect.Method setter, Descriptor descriptor)
          Constructs a ModelMBeanAttributeInfo object.
ModelMBeanAttributeInfo(java.lang.String name, java.lang.String type, java.lang.String description, boolean isReadable, boolean isWritable, boolean isIs)
          Constructs a ModelMBeanAttributeInfo object with a default descriptor.
ModelMBeanAttributeInfo(java.lang.String name, java.lang.String type, java.lang.String description, boolean isReadable, boolean isWritable, boolean isIs, Descriptor descriptor)
          Constructs a ModelMBeanAttributeInfo object with a default descriptor.
 
Method Summary
(package private) static void ()
           
 java.lang.Object clone()
          Creates and returns a new ModelMBeanAttributeInfo which is a duplicate of this ModelMBeanAttributeInfo.
 Descriptor getDescriptor()
          Gets a copy of the associated Descriptor for the ModelMBeanAttributeInfo.
 void setDescriptor(Descriptor inDescriptor)
          Sets associated Descriptor (full replace) for the ModelMBeanAttributeDescriptor.
 java.lang.String toString()
          Returns a human readable version of the ModelMBeanAttributeInfo instance
 
Methods inherited from class javax.management.MBeanAttributeInfo
equals, getType, hashCode, isIs, isReadable, isWritable
 
Methods inherited from class javax.management.MBeanFeatureInfo
getDescription, getName
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

attrDescriptor

Descriptor attrDescriptor
Constructor Detail

ModelMBeanAttributeInfo

public ModelMBeanAttributeInfo(java.lang.String name,
                               java.lang.String description,
                               java.lang.reflect.Method getter,
                               java.lang.reflect.Method setter)
                        throws IntrospectionException
Constructs a ModelMBeanAttributeInfo object with a default descriptor.
Parameters:
name - The name of the attribute.
description - A human readable description of the attribute. Optional.
getter - The method used for reading the attribute value. May be null if the property is write-only.
setter - The method used for writing the attribute value. May be null if the attribute is read-only.
Throws:
IntrospectionException - There is a consistency problem in the definition of this attribute.

ModelMBeanAttributeInfo

public ModelMBeanAttributeInfo(java.lang.String name,
                               java.lang.String description,
                               java.lang.reflect.Method getter,
                               java.lang.reflect.Method setter,
                               Descriptor descriptor)
                        throws IntrospectionException
Constructs a ModelMBeanAttributeInfo object.
Parameters:
name - The name of the attribute.
description - A human readable description of the attribute. Optional.
getter - The method used for reading the attribute value. May be null if the property is write-only.
setter - The method used for writing the attribute value. May be null if the attribute is read-only.
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.
Throws:
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".

ModelMBeanAttributeInfo

public ModelMBeanAttributeInfo(java.lang.String name,
                               java.lang.String type,
                               java.lang.String description,
                               boolean isReadable,
                               boolean isWritable,
                               boolean isIs)
Constructs a ModelMBeanAttributeInfo object with a default descriptor.
Parameters:
name - The name of the attribute
type - The type or class name of the attribute
description - A human readable description of the attribute.
isReadable - True if the attribute has a getter method, false otherwise.
isWritable - True if the attribute has a setter method, false otherwise.
isIs - True if the attribute has an "is" getter, false otherwise.

ModelMBeanAttributeInfo

public ModelMBeanAttributeInfo(java.lang.String name,
                               java.lang.String type,
                               java.lang.String description,
                               boolean isReadable,
                               boolean isWritable,
                               boolean isIs,
                               Descriptor descriptor)
Constructs a ModelMBeanAttributeInfo object with a default descriptor.
Parameters:
name - The name of the attribute
type - The type or class name of the attribute
description - A human readable description of the attribute.
isReadable - True if the attribute has a getter method, false otherwise.
isWritable - True if the attribute has a setter method, false otherwise.
isIs - True if the attribute has an "is" getter, false otherwise.
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.
Throws:
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".

ModelMBeanAttributeInfo

public ModelMBeanAttributeInfo(ModelMBeanAttributeInfo inInfo)
Constructs a new ModelMBeanAttributeInfo object from this ModelMBeanAttributeInfo Object. A default descriptor will be created.
Parameters:
inInfo - the ModelMBeanAttributeInfo to be duplicated
Method Detail

static void ()

getDescriptor

public Descriptor getDescriptor()
Gets a copy of the associated Descriptor for the ModelMBeanAttributeInfo.
Specified by:
getDescriptor in interface DescriptorAccess
Returns:
Descriptor associated with the ModelMBeanAttributeInfo object.
See Also:
setDescriptor(javax.management.Descriptor)

setDescriptor

public void setDescriptor(Descriptor inDescriptor)
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.
Specified by:
setDescriptor in interface DescriptorAccess
Parameters:
inDescriptor - replaces the Descriptor associated with the ModelMBeanAttributeInfo
Throws:
RuntimeOperationsException - Wraps an IllegalArgumentException for an invalid Descriptor
See Also:
getDescriptor()

clone

public java.lang.Object clone()
Creates and returns a new ModelMBeanAttributeInfo which is a duplicate of this ModelMBeanAttributeInfo.
Overrides:
clone in class MBeanAttributeInfo
Throws:
RuntimeOperationsException - for illegal value for field Names or field Values. If the descriptor construction fails for any reason, this exception will be thrown.

toString

public java.lang.String toString()
Returns a human readable version of the ModelMBeanAttributeInfo instance
Overrides:
toString in class MBeanAttributeInfo
Tags copied from class: MBeanAttributeInfo
Returns:
MBeanAttributeInfo is returned as a String