public static String getGetterWithCastMethod( Class<?> methodType, String methodToDecorate, String fieldName) { return String.format( " public %s %s() {\n %s\n}\n", filterTypeName(methodType), StringTool.getGetterName(fieldName), getDecoratorBody(methodType, methodToDecorate, fieldName)); }
public static String getPublicGetterMethod(String fieldType, String fieldName) { String getterName = StringTool.getGetterName(fieldName); if ("getClass".equals(getterName)) { return null; } return String.format( "\n public %s %s() {\n return %s;\n }\n", fieldType, getterName, fieldName); }
public static String getHashCodeMethod(Set<String> fields) { StringBuilder buf = new StringBuilder(); buf.append("\n public int hashCode() {\n"); buf.append(" HashCodeBuilder builder = new HashCodeBuilder();\n"); for (String field : fields) { String getter = StringTool.getGetterName(field) + "()"; buf.append(String.format(" builder.append(%s);\n", getter)); } buf.append(" return builder.toHashCode();\n"); buf.append(" }\n"); return buf.toString(); }
public static String getEqualsMethod(String simpleClassName, Set<String> fields) { StringBuilder buf = new StringBuilder(); buf.append("\n public boolean equals(Object obj) {\n"); buf.append(" EqualsBuilder builder = new EqualsBuilder();\n"); buf.append(String.format(" if (!(obj instanceof %s)) {;\n", simpleClassName)); buf.append(" return false;\n"); buf.append(" }\n"); buf.append(String.format(" %s another = (%s)obj;\n", simpleClassName, simpleClassName)); for (String field : fields) { String getter = StringTool.getGetterName(field) + "()"; buf.append(String.format(" builder.append(another.%s,%s);\n", getter, getter)); } buf.append(" return builder.isEquals();\n"); buf.append(" }\n"); return buf.toString(); }
public static String getToStringMethod(String simpleClassName, Map<String, Class<?>> fields) { StringBuilder buf = new StringBuilder(); buf.append("\n public String toString() {\n"); buf.append(" StringBuilder builder = new StringBuilder();\n"); buf.append(String.format(" builder.append(\"%s {\");\n", simpleClassName)); for (Entry<String, Class<?>> field : fields.entrySet()) { buf.append(String.format(" builder.append(\" %s=\");\n", field.getKey())); String getter = StringTool.getGetterName(field.getKey()) + "()"; if (field.getValue().isArray()) { buf.append(String.format(" builder.append(ArrayUtils.toString(%s));\n", getter)); } else { buf.append(String.format(" builder.append(%s);\n", getter)); } } buf.append(" builder.append(\" }\");\n"); buf.append(" return builder.toString();\n"); buf.append(" }\n"); return buf.toString(); }