public static Method<JavaClass> getFieldAccessor(final Field<JavaClass> field) { if (field == null) { throw new IllegalArgumentException("The parameter 'field' cannot be null"); } final JavaClass javaClass = field.getOrigin(); final String accessorMethodSuffix = getAccessorMethodSuffix(field); Method<JavaClass> method = null; if (field.isType(Boolean.class) || field.isType(Boolean.TYPE) || field.isType(boolean.class)) { method = javaClass.getMethod(IS_PREFIX + accessorMethodSuffix); } if (method == null) { method = javaClass.getMethod(GET_PREFIX + accessorMethodSuffix); } return method; }
@Override public List<Resource<?>> getOptionalResources() { List<Resource<?>> result = new ArrayList<Resource<?>>(); JavaClass entity = (JavaClass) field.getOrigin(); String methodNameSuffix = Strings.capitalize(field.getName()); // Condition to remove getField() if (entity.hasMethodSignature("get" + methodNameSuffix)) { Method<JavaClass> method = entity.getMethod("get" + methodNameSuffix); result.add(new JavaMethodResource(this.getParent(), method)); } // Condition to remove setField() if (entity.hasMethodSignature("set" + methodNameSuffix, field.getQualifiedType())) { Method<JavaClass> method = entity.getMethod("set" + methodNameSuffix, field.getQualifiedType()); result.add(new JavaMethodResource(this.getParent(), method)); } return result; }
public void updateToString(final JavaClass targetEntity) { if (targetEntity.hasMethodSignature("toString")) { targetEntity.removeMethod(targetEntity.getMethod("toString")); } List<Field<JavaClass>> fields = new ArrayList<Field<JavaClass>>(); for (Field<JavaClass> f : targetEntity.getFields()) { if (!"id".equals(f.getName()) && !"version".equals(f.getName()) && (f.getTypeInspector().isPrimitive() || Types.isJavaLang(f.getType()))) { fields.add(f); } } if (!fields.isEmpty()) { Refactory.createToStringFromFields(targetEntity, fields); } }
/** * Copied from FieldPlugin */ private static void updateToString(final JavaClass targetEntity) { if (targetEntity.hasMethodSignature("toString")) { targetEntity.removeMethod(targetEntity.getMethod("toString")); } List<Field<JavaClass>> fields = new ArrayList<Field<JavaClass>>(); for (Field<JavaClass> f : targetEntity.getFields()) { if (!"version".equals(f.getName()) && (f.getTypeInspector().isPrimitive() || Types.isJavaLang(f.getType()))) { fields.add(f); } } if (!fields.isEmpty()) { Refactory.createToStringFromFields(targetEntity, fields); } }
if (javaClass.hasMethodSignature(beginName) && (javaClass.getMethod(beginName).getParameters().size() == 0)) javaClass.removeMethod(javaClass.getMethod(beginName)); if (javaClass.hasMethodSignature(endName) && (javaClass.getMethod(endName).getParameters().size() == 0)) javaClass.removeMethod(javaClass.getMethod(endName));