javax.management
public class: MBeanConstructorInfo [javadoc |
source]
java.lang.Object
javax.management.MBeanFeatureInfo
javax.management.MBeanConstructorInfo
All Implemented Interfaces:
Cloneable, DescriptorRead, Serializable
Direct Known Subclasses:
ModelMBeanConstructorInfo, OpenMBeanConstructorInfoSupport
Describes a constructor exposed by an MBean. Instances of this
class are immutable. Subclasses may be mutable but this is not
recommended.
Field Summary |
---|
static final long | serialVersionUID | |
static final MBeanConstructorInfo[] | NO_CONSTRUCTORS | |
Constructor: |
public MBeanConstructorInfo(String description,
Constructor<?> constructor) {
this(constructor.getName(), description,
constructorSignature(constructor),
Introspector.descriptorForElement(constructor));
}
Constructs an MBeanConstructorInfo object. The
Descriptor of the constructed object will include
fields contributed by any annotations on the {@code
Constructor} object that contain the DescriptorKey
meta-annotation. Parameters:
description - A human readable description of the operation.
constructor - The java.lang.reflect.Constructor
object describing the MBean constructor.
|
public MBeanConstructorInfo(String name,
String description,
MBeanParameterInfo[] signature) {
this(name, description, signature, null);
}
Constructs an MBeanConstructorInfo object. Parameters:
name - The name of the constructor.
signature - MBeanParameterInfo objects
describing the parameters(arguments) of the constructor. This
may be null with the same effect as a zero-length array.
description - A human readable description of the constructor.
|
public MBeanConstructorInfo(String name,
String description,
MBeanParameterInfo[] signature,
Descriptor descriptor) {
super(name, description, descriptor);
if (signature == null || signature.length == 0)
signature = MBeanParameterInfo.NO_PARAMS;
else
signature = signature.clone();
this.signature = signature;
this.arrayGettersSafe =
MBeanInfo.arrayGettersSafe(this.getClass(),
MBeanConstructorInfo.class);
}
Constructs an MBeanConstructorInfo object. Parameters:
name - The name of the constructor.
signature - MBeanParameterInfo objects
describing the parameters(arguments) of the constructor. This
may be null with the same effect as a zero-length array.
description - A human readable description of the constructor.
descriptor - The descriptor for the constructor. This may be null
which is equivalent to an empty descriptor.
- since:
1.6 -
|
Methods from java.lang.Object: |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method from javax.management.MBeanConstructorInfo Detail: |
public Object clone() {
try {
return super.clone() ;
} catch (CloneNotSupportedException e) {
// should not happen as this class is cloneable
return null;
}
}
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.
|
public boolean equals(Object o) {
if (o == this)
return true;
if (!(o instanceof MBeanConstructorInfo))
return false;
MBeanConstructorInfo p = (MBeanConstructorInfo) o;
return (p.getName().equals(getName()) &&
p.getDescription().equals(getDescription()) &&
Arrays.equals(p.fastGetSignature(), fastGetSignature()) &&
p.getDescriptor().equals(getDescriptor()));
}
Compare this MBeanConstructorInfo to another. |
public MBeanParameterInfo[] getSignature() {
if (signature.length == 0)
return signature;
else
return signature.clone();
}
Returns the list of parameters for this constructor. 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.
|
public int hashCode() {
int hash = getName().hashCode();
MBeanParameterInfo[] sig = fastGetSignature();
for (int i = 0; i < sig.length; i++)
hash ^= sig[i].hashCode();
return hash;
}
|
public String toString() {
return
getClass().getName() + "[" +
"description=" + getDescription() + ", " +
"name=" + getName() + ", " +
"signature=" + Arrays.asList(fastGetSignature()) + ", " +
"descriptor=" + getDescriptor() +
"]";
}
|