public class OpenMBeanOperationInfoSupport extends MBeanOperationInfo implements OpenMBeanOperationInfo
Describes an operation of an Open MBean.
ACTION, ACTION_INFO, INFO, UNKNOWN
description, name
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.
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
.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
.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.
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.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
.public OpenType<?> getReturnOpenType()
Returns the open type of the values returned by the operation described by this OpenMBeanOperationInfo
instance.
getReturnOpenType
in interface OpenMBeanOperationInfo
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,equals
method works properly for obj
parameters which are different implementations of the OpenMBeanOperationInfo
interface.equals
in interface OpenMBeanOperationInfo
equals
in class MBeanOperationInfo
obj
- the object to be compared for equality with this OpenMBeanOperationInfoSupport
instance;true
if the specified object is equal to this OpenMBeanOperationInfoSupport
instance.Object.hashCode()
, HashMap
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.
hashCode
in interface OpenMBeanOperationInfo
hashCode
in class MBeanOperationInfo
OpenMBeanOperationInfoSupport
instanceObject.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
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.
toString
in interface OpenMBeanOperationInfo
toString
in class MBeanOperationInfo
OpenMBeanOperationInfoSupport
instance
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.