Class OpenMBeanOperationInfoSupport

java.lang.Object
javax.management.MBeanFeatureInfo
javax.management.MBeanOperationInfo
javax.management.openmbean.OpenMBeanOperationInfoSupport
All Implemented Interfaces:
Serializable, Cloneable, DescriptorRead, OpenMBeanOperationInfo

public class OpenMBeanOperationInfoSupport extends MBeanOperationInfo implements OpenMBeanOperationInfo
Describes an operation of an Open MBean.
Since:
1.5
See Also:
  • Field Summary

    Fields declared in class MBeanOperationInfo

    ACTION, ACTION_INFO, INFO, UNKNOWN
    Modifier and Type
    Field
    Description
    static final int
    Indicates that the operation is write-like: it has an effect but does not return any information from the MBean.
    static final int
    Indicates that the operation is both read-like and write-like: it has an effect, and it also returns information from the MBean.
    static final int
    Indicates that the operation is read-like: it returns information but does not change any state.
    static final int
    Indicates that the impact of the operation is unknown or cannot be expressed using one of the other values.

    Fields declared in class MBeanFeatureInfo

    description, name
    Modifier and Type
    Field
    Description
    protected String
    The human-readable description of the feature.
    protected String
    The name of the feature.
  • Constructor Summary

    Constructors
    Constructor
    Description
    OpenMBeanOperationInfoSupport(String name, String description, OpenMBeanParameterInfo[] signature, OpenType<?> returnOpenType, int impact)
    Constructs an OpenMBeanOperationInfoSupport instance, which describes the operation of a class of open MBeans, with the specified name, description, signature, returnOpenType and impact.
    OpenMBeanOperationInfoSupport(String name, String description, OpenMBeanParameterInfo[] signature, OpenType<?> returnOpenType, int impact, Descriptor descriptor)
    Constructs an OpenMBeanOperationInfoSupport instance, which describes the operation of a class of open MBeans, with the specified name, description, signature, returnOpenType, impact, and descriptor.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Compares the specified obj parameter with this OpenMBeanOperationInfoSupport instance for equality.
    Returns the open type of the values returned by the operation described by this OpenMBeanOperationInfo instance.
    int
    Returns the hash code value for this OpenMBeanOperationInfoSupport instance.
    Returns a string representation of this OpenMBeanOperationInfoSupport instance.

    Methods declared in class MBeanOperationInfo

    clone, getImpact, getReturnType, getSignature
    Modifier and Type
    Method
    Description
    Returns a shallow clone of this instance.
    int
    Returns the impact of the method, one of INFO, ACTION, ACTION_INFO, UNKNOWN.
    Returns the type of the method's return value.
    Returns the list of parameters for this operation.

    Methods declared in class MBeanFeatureInfo

    getDescription, getDescriptor, getName
    Modifier and Type
    Method
    Description
    Returns the human-readable description of the feature.
    Returns the descriptor for the feature.
    Returns the name of the feature.

    Methods declared in class Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

    Methods declared in interface OpenMBeanOperationInfo

    getDescription, getImpact, getName, getReturnType, getSignature
    Modifier and Type
    Method
    Description
    Returns a human readable description of the operation described by this OpenMBeanOperationInfo instance.
    int
    Returns an int constant qualifying the impact of the operation described by this OpenMBeanOperationInfo instance.
    Returns the name of the operation described by this OpenMBeanOperationInfo instance.
    Returns the fully qualified Java class name of the values returned by the operation described by this OpenMBeanOperationInfo instance.
    Returns an array of OpenMBeanParameterInfo instances describing each parameter in the signature of the operation described by this OpenMBeanOperationInfo instance.
  • Constructor Details

    • OpenMBeanOperationInfoSupport

      public OpenMBeanOperationInfoSupport(String name, String description, OpenMBeanParameterInfo[] signature, OpenType<?> returnOpenType, int impact)

      Constructs an OpenMBeanOperationInfoSupport instance, which describes the operation of a class of open MBeans, with the specified name, description, signature, returnOpenType and impact.

      The signature array parameter is internally copied, so that subsequent changes to the array referenced by signature have no effect on this instance.

      Parameters:
      name - cannot be a null or empty string.
      description - cannot be a null or empty string.
      signature - can be null or empty if there are no parameters to describe.
      returnOpenType - cannot be null: use SimpleType.VOID for operations that return nothing.
      impact - must be one of ACTION, ACTION_INFO, INFO, or UNKNOWN.
      Throws:
      IllegalArgumentException - if name or description are null or empty string, or returnOpenType is null, or impact is not one of ACTION, ACTION_INFO, INFO, or UNKNOWN.
      ArrayStoreException - If signature is not an array of instances of a subclass of MBeanParameterInfo.
    • OpenMBeanOperationInfoSupport

      public OpenMBeanOperationInfoSupport(String name, String description, OpenMBeanParameterInfo[] signature, OpenType<?> returnOpenType, int impact, Descriptor descriptor)

      Constructs an OpenMBeanOperationInfoSupport instance, which describes the operation of a class of open MBeans, with the specified name, description, signature, returnOpenType, impact, and descriptor.

      The signature array parameter is internally copied, so that subsequent changes to the array referenced by signature have no effect on this instance.

      Parameters:
      name - cannot be a null or empty string.
      description - cannot be a null or empty string.
      signature - can be null or empty if there are no parameters to describe.
      returnOpenType - cannot be null: use SimpleType.VOID for operations that return nothing.
      impact - must be one of ACTION, ACTION_INFO, INFO, or UNKNOWN.
      descriptor - The descriptor for the operation. This may be null, which is equivalent to an empty descriptor.
      Throws:
      IllegalArgumentException - if name or description are null or empty string, or returnOpenType is null, or impact is not one of ACTION, ACTION_INFO, INFO, or UNKNOWN.
      ArrayStoreException - If signature is not an array of instances of a subclass of MBeanParameterInfo.
      Since:
      1.6
  • Method Details

    • getReturnOpenType

      public OpenType<?> getReturnOpenType()
      Returns the open type of the values returned by the operation described by this OpenMBeanOperationInfo instance.
      Specified by:
      getReturnOpenType in interface OpenMBeanOperationInfo
      Returns:
      the return type.
    • equals

      public boolean equals(Object obj)

      Compares the specified obj parameter with this OpenMBeanOperationInfoSupport instance for equality.

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

      • obj is non null,
      • obj also implements the OpenMBeanOperationInfo interface,
      • their names are equal
      • their signatures are equal
      • their return open types are equal
      • their impacts are equal
      This ensures that this equals method works properly for obj parameters which are different implementations of the OpenMBeanOperationInfo interface.
      Specified by:
      equals in interface OpenMBeanOperationInfo
      Overrides:
      equals in class MBeanOperationInfo
      Parameters:
      obj - the object to be compared for equality with this OpenMBeanOperationInfoSupport instance;
      Returns:
      true if the specified object is equal to this OpenMBeanOperationInfoSupport instance.
      See Also:
    • hashCode

      public int hashCode()

      Returns the hash code value for this OpenMBeanOperationInfoSupport instance.

      The hash code of an OpenMBeanOperationInfoSupport instance is the sum of the hash codes of all elements of information used in equals comparisons (ie: its name, return open type, impact and signature, where the signature hashCode is calculated by a call to java.util.Arrays.asList(this.getSignature).hashCode()).

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

      However, note that another instance of a class implementing the OpenMBeanOperationInfo interface may be equal to this OpenMBeanOperationInfoSupport instance as defined by equals(java.lang.Object), but may have a different hash code if it is calculated differently.

      As OpenMBeanOperationInfoSupport instances are immutable, the hash code for this instance is calculated once, on the first call to hashCode, and then the same value is returned for subsequent calls.

      Specified by:
      hashCode in interface OpenMBeanOperationInfo
      Overrides:
      hashCode in class Object
      Returns:
      the hash code value for this OpenMBeanOperationInfoSupport instance
      See Also:
    • toString

      public String toString()

      Returns a string representation of this OpenMBeanOperationInfoSupport instance.

      The string representation consists of the name of this class (ie javax.management.openmbean.OpenMBeanOperationInfoSupport), and the name, signature, return open type and impact of the described operation and the string representation of its descriptor.

      As OpenMBeanOperationInfoSupport instances are immutable, the string representation for this instance is calculated once, on the first call to toString, and then the same value is returned for subsequent calls.

      Specified by:
      toString in interface OpenMBeanOperationInfo
      Overrides:
      toString in class Object
      Returns:
      a string representation of this OpenMBeanOperationInfoSupport instance