JavaTM 2 Platform
Standard Ed. 5.0

javax.management.openmbean
Class OpenMBeanOperationInfoSupport

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

public class OpenMBeanOperationInfoSupport
extends MBeanOperationInfo
implements OpenMBeanOperationInfo, Serializable

Describes an operation of an Open MBean.

Since:
1.5
See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.management.MBeanOperationInfo
ACTION, ACTION_INFO, INFO, UNKNOWN
 
Fields inherited from class javax.management.MBeanFeatureInfo
description, name
 
Constructor Summary
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.
 
Method Summary
 boolean equals(Object obj)
          Compares the specified obj parameter with this OpenMBeanOperationInfoSupport instance for equality.
 OpenType getReturnOpenType()
          Returns the open type of the values returned by the operation described by this OpenMBeanOperationInfo instance.
 int hashCode()
          Returns the hash code value for this OpenMBeanOperationInfoSupport instance.
 String toString()
          Returns a string representation of this OpenMBeanOperationInfoSupport instance.
 
Methods inherited from class javax.management.MBeanOperationInfo
clone, getImpact, getReturnType, getSignature
 
Methods inherited from class javax.management.MBeanFeatureInfo
getDescription, getName
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.management.openmbean.OpenMBeanOperationInfo
getDescription, getImpact, getName, getReturnType, getSignature
 

Constructor Detail

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 - can be only one of ACTION, ACTION_INFO or INFO.
Throws:
IllegalArgumentException - if name or description are null or empty string, or returnOpenType is null, or impact is not one of ACTION, ACTION_INFO or INFO.
ArrayStoreException - If signature is not an array of instances of a subclass of MBeanParameterInfo.
Method Detail

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:

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:
Object.hashCode(), Hashtable

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 MBeanOperationInfo
Returns:
the hash code value for this OpenMBeanOperationInfoSupport instance
See Also:
Object.equals(java.lang.Object), Hashtable

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.

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

JavaTM 2 Platform
Standard Ed. 5.0

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

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