Interface OpenMBeanInfo

All Known Implementing Classes:
OpenMBeanInfoSupport

public interface OpenMBeanInfo

Describes an Open MBean: an Open MBean is recognized as such if its getMBeanInfo() method returns an instance of a class which implements the OpenMBeanInfo interface, typically OpenMBeanInfoSupport.

This interface declares the same methods as the class MBeanInfo. A class implementing this interface (typically OpenMBeanInfoSupport) should extend MBeanInfo.

The getAttributes(), getOperations() and getConstructors() methods of the implementing class should return at runtime an array of instances of a subclass of MBeanAttributeInfo, MBeanOperationInfo or MBeanConstructorInfo respectively which implement the OpenMBeanAttributeInfo, OpenMBeanOperationInfo or OpenMBeanConstructorInfo interface respectively.

Since:
1.5
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(Object obj)
    Compares the specified obj parameter with this OpenMBeanInfo instance for equality.
    MBeanAttributeInfo[] getAttributes()
    Returns an array of OpenMBeanAttributeInfo instances describing each attribute in the open MBean described by this OpenMBeanInfo instance.
    String getClassName()
    Returns the fully qualified Java class name of the open MBean instances this OpenMBeanInfo describes.
    MBeanConstructorInfo[] getConstructors()
    Returns an array of OpenMBeanConstructorInfo instances describing each constructor in the open MBean described by this OpenMBeanInfo instance.
    String getDescription()
    Returns a human readable description of the type of open MBean instances this OpenMBeanInfo describes.
    MBeanNotificationInfo[] getNotifications()
    Returns an array of MBeanNotificationInfo instances describing each notification emitted by the open MBean described by this OpenMBeanInfo instance.
    MBeanOperationInfo[] getOperations()
    Returns an array of OpenMBeanOperationInfo instances describing each operation in the open MBean described by this OpenMBeanInfo instance.
    int hashCode()
    Returns the hash code value for this OpenMBeanInfo instance.
    String toString()
    Returns a string representation of this OpenMBeanInfo instance.
  • Method Details

    • getClassName

      String getClassName()
      Returns the fully qualified Java class name of the open MBean instances this OpenMBeanInfo describes.
      Returns:
      the class name.
    • getDescription

      String getDescription()
      Returns a human readable description of the type of open MBean instances this OpenMBeanInfo describes.
      Returns:
      the description.
    • getAttributes

      MBeanAttributeInfo[] getAttributes()
      Returns an array of OpenMBeanAttributeInfo instances describing each attribute in the open MBean described by this OpenMBeanInfo instance. Each instance in the returned array should actually be a subclass of MBeanAttributeInfo which implements the OpenMBeanAttributeInfo interface (typically OpenMBeanAttributeInfoSupport).
      Returns:
      the attribute array.
    • getOperations

      MBeanOperationInfo[] getOperations()
      Returns an array of OpenMBeanOperationInfo instances describing each operation in the open MBean described by this OpenMBeanInfo instance. Each instance in the returned array should actually be a subclass of MBeanOperationInfo which implements the OpenMBeanOperationInfo interface (typically OpenMBeanOperationInfoSupport).
      Returns:
      the operation array.
    • getConstructors

      MBeanConstructorInfo[] getConstructors()
      Returns an array of OpenMBeanConstructorInfo instances describing each constructor in the open MBean described by this OpenMBeanInfo instance. Each instance in the returned array should actually be a subclass of MBeanConstructorInfo which implements the OpenMBeanConstructorInfo interface (typically OpenMBeanConstructorInfoSupport).
      Returns:
      the constructor array.
    • getNotifications

      MBeanNotificationInfo[] getNotifications()
      Returns an array of MBeanNotificationInfo instances describing each notification emitted by the open MBean described by this OpenMBeanInfo instance.
      Returns:
      the notification array.
    • equals

      boolean equals​(Object obj)
      Compares the specified obj parameter with this OpenMBeanInfo instance for equality.

      Returns true if and only if all of the following statements are true:

      • obj is non null,
      • obj also implements the OpenMBeanInfo interface,
      • their class names are equal
      • their infos on attributes, constructors, operations and notifications are equal
      This ensures that this equals method works properly for obj parameters which are different implementations of the OpenMBeanInfo interface.

      Overrides:
      equals in class Object
      Parameters:
      obj - the object to be compared for equality with this OpenMBeanInfo instance;
      Returns:
      true if the specified object is equal to this OpenMBeanInfo instance.
      See Also:
      Object.hashCode(), HashMap
    • hashCode

      int hashCode()
      Returns the hash code value for this OpenMBeanInfo instance.

      The hash code of an OpenMBeanInfo instance is the sum of the hash codes of all elements of information used in equals comparisons (ie: its class name, and its infos on attributes, constructors, operations and notifications, where the hashCode of each of these arrays is calculated by a call to new java.util.HashSet(java.util.Arrays.asList(this.getSignature)).hashCode()).

      This ensures that t1.equals(t2) implies that t1.hashCode()==t2.hashCode() for any two OpenMBeanInfo instances t1 and t2, as required by the general contract of the method Object.hashCode().

      Overrides:
      hashCode in class Object
      Returns:
      the hash code value for this OpenMBeanInfo instance
      See Also:
      Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)
    • toString

      String toString()
      Returns a string representation of this OpenMBeanInfo instance.

      The string representation consists of the name of this class (ie javax.management.openmbean.OpenMBeanInfo), the MBean class name, and the string representation of infos on attributes, constructors, operations and notifications of the described MBean.

      Overrides:
      toString in class Object
      Returns:
      a string representation of this OpenMBeanInfo instance