Java™ Platform
Standard Ed. 6

javax.management
Class MBeanAttributeInfo

java.lang.Object
  extended by javax.management.MBeanFeatureInfo
      extended by javax.management.MBeanAttributeInfo
All Implemented Interfaces:
Serializable, Cloneable, DescriptorRead
Direct Known Subclasses:
ModelMBeanAttributeInfo, OpenMBeanAttributeInfoSupport

public class MBeanAttributeInfo
extends MBeanFeatureInfo
implements Cloneable

Describes an MBean attribute exposed for management. Instances of this class are immutable. Subclasses may be mutable but this is not recommended.

Since:
1.5
See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.management.MBeanFeatureInfo
description, name
 
Constructor Summary
MBeanAttributeInfo(String name, String description, Method getter, Method setter)
          This constructor takes the name of a simple attribute, and Method objects for reading and writing the attribute.
MBeanAttributeInfo(String name, String type, String description, boolean isReadable, boolean isWritable, boolean isIs)
          Constructs an MBeanAttributeInfo object.
MBeanAttributeInfo(String name, String type, String description, boolean isReadable, boolean isWritable, boolean isIs, Descriptor descriptor)
          Constructs an MBeanAttributeInfo object.
 
Method Summary
 Object clone()
          Returns a shallow clone of this instance.
 boolean equals(Object o)
          Compare this MBeanAttributeInfo to another.
 String getType()
          Returns the class name of the attribute.
 int hashCode()
          Returns a hash code value for the object.
 boolean isIs()
          Indicates if this attribute has an "is" getter.
 boolean isReadable()
          Whether the value of the attribute can be read.
 boolean isWritable()
          Whether new values can be written to the attribute.
 String toString()
          Returns a string representation of the object.
 
Methods inherited from class javax.management.MBeanFeatureInfo
getDescription, getDescriptor, getName
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MBeanAttributeInfo

public MBeanAttributeInfo(String name,
                          String type,
                          String description,
                          boolean isReadable,
                          boolean isWritable,
                          boolean isIs)
Constructs an MBeanAttributeInfo object.

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 this attribute has an "is" getter, false otherwise.
Throws:
IllegalArgumentException - if isIs is true but isReadable is not, or if isIs is true and type is not boolean or java.lang.Boolean. (New code should always use boolean rather than java.lang.Boolean.)

MBeanAttributeInfo

public MBeanAttributeInfo(String name,
                          String type,
                          String description,
                          boolean isReadable,
                          boolean isWritable,
                          boolean isIs,
                          Descriptor descriptor)
Constructs an MBeanAttributeInfo object.

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 this attribute has an "is" getter, false otherwise.
descriptor - The descriptor for the attribute. This may be null which is equivalent to an empty descriptor.
Throws:
IllegalArgumentException - if isIs is true but isReadable is not, or if isIs is true and type is not boolean or java.lang.Boolean. (New code should always use boolean rather than java.lang.Boolean.)
Since:
1.6

MBeanAttributeInfo

public MBeanAttributeInfo(String name,
                          String description,
                          Method getter,
                          Method setter)
                   throws IntrospectionException

This constructor takes the name of a simple attribute, and Method objects for reading and writing the attribute. 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 - The programmatic name of the attribute.
description - A human readable description of the attribute.
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.
Method Detail

clone

public Object clone()

Returns a shallow clone of this instance. The clone is obtained by simply calling super.clone(), thus calling the default native shallow cloning mechanism implemented by Object.clone(). No deeper cloning of any internal field is made.

Since this class is immutable, cloning is chiefly of interest to subclasses.

Overrides:
clone in class Object
Returns:
a clone of this instance.
See Also:
Cloneable

getType

public String getType()
Returns the class name of the attribute.

Returns:
the class name.

isReadable

public boolean isReadable()
Whether the value of the attribute can be read.

Returns:
True if the attribute can be read, false otherwise.

isWritable

public boolean isWritable()
Whether new values can be written to the attribute.

Returns:
True if the attribute can be written to, false otherwise.

isIs

public boolean isIs()
Indicates if this attribute has an "is" getter.

Returns:
true if this attribute has an "is" getter.

toString

public String toString()
Description copied from class: Object
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Overrides:
toString in class Object
Returns:
a string representation of the object.

equals

public boolean equals(Object o)
Compare this MBeanAttributeInfo to another.

Overrides:
equals in class MBeanFeatureInfo
Parameters:
o - the object to compare to.
Returns:
true if and only if o is an MBeanAttributeInfo such that its MBeanFeatureInfo.getName(), getType(), MBeanFeatureInfo.getDescription(), isReadable(), isWritable(), and isIs() values are equal (not necessarily identical) to those of this MBeanAttributeInfo.
See Also:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
Description copied from class: Object
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

The general contract of hashCode is:

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)

Overrides:
hashCode in class MBeanFeatureInfo
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.