1 8 9 15 package jfun.yan; 16 17 import java.util.Map ; 18 19 27 public class ComponentInfo { 28 private final int num_params; 29 private final Map props; 30 private final Map params; 31 private final Class rtype; 32 33 40 public ComponentInfo(final int num_params, final Map params, final Map props, 41 final Class rtype) { 42 this.num_params = num_params; 43 this.props = props; 44 this.params = params; 45 this.rtype = rtype; 46 } 47 56 public int getParameterCount() { 57 return num_params; 58 } 59 64 public Map getParameters() { 65 return params; 66 } 67 71 public Map getProperties() { 72 return props; 73 } 74 78 public Class getComponentType(){ 79 return rtype; 80 } 81 82 public boolean equals(Object obj) { 83 if(obj instanceof ComponentInfo){ 84 final ComponentInfo other = (ComponentInfo)obj; 85 return num_params==other.num_params && rtype.equals(other.rtype) 86 && params.equals(other.params) && props.equals(other.props); 87 } 88 else return false; 89 } 90 public int hashCode() { 91 return hcode(rtype)+31*(hcode(params)+31*hcode(props)); 92 } 93 public String toString() { 94 return "type = " + jfun.util.Misc.getTypeName(rtype) + "\n" 95 + "parameters = " + params + "\n" 96 + "properties = " + props; 97 } 98 private int hcode(Object obj){ 99 return (obj==null)?0:obj.hashCode(); 100 } 101 } 102 | Popular Tags |