01: /*
02: * Copyright (C) The MX4J Contributors.
03: * All rights reserved.
04: *
05: * This software is distributed under the terms of the MX4J License version 1.0.
06: * See the terms of the MX4J License in the documentation provided with this software.
07: */
08:
09: package javax.management;
10:
11: import java.io.Serializable;
12:
13: /**
14: * The metadata class for a parameter of MBean constructors and operations.
15: *
16: * @version $Revision: 1.11 $
17: */
18: // Change not needed, workaround to a TCK bug only to achieve TCK compliance
19: // public class MBeanParameterInfo extends MBeanFeatureInfo implements Cloneable
20: public class MBeanParameterInfo extends MBeanFeatureInfo implements
21: Cloneable, Serializable {
22: private static final long serialVersionUID = 7432616882776782338L;
23:
24: /**
25: * @serial The parameter type
26: */
27: private String type;
28:
29: /**
30: * Creates a new MBeanParameterInfo
31: *
32: * @param name The parameter name
33: * @param type The parameter type
34: * @param description The parameter description
35: */
36: public MBeanParameterInfo(String name, String type,
37: String description) {
38: super (name, description);
39: this .type = type;
40: }
41:
42: public Object clone() {
43: try {
44: return super .clone();
45: } catch (CloneNotSupportedException ignored) {
46: return null;
47: }
48: }
49:
50: /**
51: * Returns the parameter type
52: *
53: * @return
54: */
55: public String getType() {
56: return type;
57: }
58:
59: public int hashCode() {
60: int hash = super .hashCode();
61: String t = getType();
62: if (t != null)
63: hash = 29 * hash + t.hashCode();
64: return hash;
65: }
66:
67: public boolean equals(Object obj) {
68: if (!super .equals(obj))
69: return false;
70: if (!(obj instanceof MBeanParameterInfo))
71: return false;
72:
73: MBeanParameterInfo other = (MBeanParameterInfo) obj;
74: String this Type = getType();
75: String otherType = other.getType();
76: if (this Type != null ? !this Type.equals(otherType)
77: : otherType != null)
78: return false;
79:
80: return true;
81: }
82: }
|