Class MBeanOperationInfo

java.lang.Object
javax.management.MBeanFeatureInfo
javax.management.MBeanOperationInfo
All Implemented Interfaces:
Serializable, Cloneable, DescriptorRead
Direct Known Subclasses:
ModelMBeanOperationInfo, OpenMBeanOperationInfoSupport

public class MBeanOperationInfo extends MBeanFeatureInfo implements Cloneable
Describes a management operation exposed by an MBean. Instances of this class are immutable. Subclasses may be mutable but this is not recommended.
Since:
1.5
See Also:
  • Field Details

    • INFO

      public static final int INFO
      Indicates that the operation is read-like: it returns information but does not change any state.
      See Also:
    • ACTION

      public static final int ACTION
      Indicates that the operation is write-like: it has an effect but does not return any information from the MBean.
      See Also:
    • ACTION_INFO

      public static final int ACTION_INFO
      Indicates that the operation is both read-like and write-like: it has an effect, and it also returns information from the MBean.
      See Also:
    • UNKNOWN

      public static final int UNKNOWN
      Indicates that the impact of the operation is unknown or cannot be expressed using one of the other values.
      See Also:
  • Constructor Details

    • MBeanOperationInfo

      public MBeanOperationInfo(String description, Method method)
      Constructs an MBeanOperationInfo object. The Descriptor of the constructed object will include fields contributed by any annotations on the Method object that contain the DescriptorKey meta-annotation.
      Parameters:
      description - A human readable description of the operation.
      method - The java.lang.reflect.Method object describing the MBean operation.
    • MBeanOperationInfo

      public MBeanOperationInfo(String name, String description, MBeanParameterInfo[] signature, String type, int impact)
      Constructs an MBeanOperationInfo object.
      Parameters:
      name - The name of the method.
      description - A human readable description of the operation.
      signature - MBeanParameterInfo objects describing the parameters(arguments) of the method. This may be null with the same effect as a zero-length array.
      type - The type of the method's return value.
      impact - The impact of the method, one of INFO, ACTION, ACTION_INFO, UNKNOWN.
    • MBeanOperationInfo

      public MBeanOperationInfo(String name, String description, MBeanParameterInfo[] signature, String type, int impact, Descriptor descriptor)
      Constructs an MBeanOperationInfo object.
      Parameters:
      name - The name of the method.
      description - A human readable description of the operation.
      signature - MBeanParameterInfo objects describing the parameters(arguments) of the method. This may be null with the same effect as a zero-length array.
      type - The type of the method's return value.
      impact - The impact of the method, one of INFO, ACTION, ACTION_INFO, UNKNOWN.
      descriptor - The descriptor for the operation. This may be null which is equivalent to an empty descriptor.
      Throws:
      IllegalArgumentException - if impact is not one of ACTION, ACTION_INFO, INFO or UNKNOWN.
      Since:
      1.6
  • Method Details

    • 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:
    • getReturnType

      public String getReturnType()
      Returns the type of the method's return value.
      Returns:
      the return type.
    • getSignature

      public MBeanParameterInfo[] getSignature()

      Returns the list of parameters for this operation. Each parameter is described by an MBeanParameterInfo object.

      The returned array is a shallow copy of the internal array, which means that it is a copy of the internal array of references to the MBeanParameterInfo objects but that each referenced MBeanParameterInfo object is not copied.

      Returns:
      An array of MBeanParameterInfo objects.
    • getImpact

      public int getImpact()
      Returns the impact of the method, one of INFO, ACTION, ACTION_INFO, UNKNOWN.
      Returns:
      the impact code.
    • toString

      public String toString()
      Description copied from class: Object
      Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.
      Overrides:
      toString in class Object
      Returns:
      a string representation of the object
    • equals

      public boolean equals(Object o)
      Compare this MBeanOperationInfo to another.
      Overrides:
      equals in class MBeanFeatureInfo
      Parameters:
      o - the object to compare to.
      Returns:
      true if and only if o is an MBeanOperationInfo such that its MBeanFeatureInfo.getName(), getReturnType(), MBeanFeatureInfo.getDescription(), getImpact(), MBeanFeatureInfo.getDescriptor() and getSignature() values are equal (not necessarily identical) to those of this MBeanConstructorInfo. Two signature arrays are equal if their elements are pairwise equal.
      See Also:
    • hashCode

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

      The general contract of hashCode is:

      • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
      • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
      • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
      Overrides:
      hashCode in class MBeanFeatureInfo
      Returns:
      a hash code value for this object
      See Also: