From 5342d90532b498d533c745d048957bb381a4fb00 Mon Sep 17 00:00:00 2001 From: boretti Date: Sun, 22 Apr 2018 09:58:35 +0200 Subject: [PATCH] quality --- .../FactoryAnnotatedElementMirror.java | 40 +++++++++---------- ...MatchersAnnotatedElementMatcherMirror.java | 1 - ...rovidesMatchersAnnotatedElementMirror.java | 32 +++++---------- 3 files changed, 31 insertions(+), 42 deletions(-) diff --git a/src/main/java/ch/powerunit/extensions/matchers/factoryprocessor/FactoryAnnotatedElementMirror.java b/src/main/java/ch/powerunit/extensions/matchers/factoryprocessor/FactoryAnnotatedElementMirror.java index 66dd66e77..3539b43e7 100644 --- a/src/main/java/ch/powerunit/extensions/matchers/factoryprocessor/FactoryAnnotatedElementMirror.java +++ b/src/main/java/ch/powerunit/extensions/matchers/factoryprocessor/FactoryAnnotatedElementMirror.java @@ -71,6 +71,12 @@ public String getSeeValue() { return result; } + public String getParam() { + String param = element.getParameters().stream() + .map((ve) -> ve.asType().toString() + " " + ve.getSimpleName().toString()).collect(joining(",")); + return element.isVarArgs() ? param.replaceAll(VAR_ARG_REGEX, "...") : param; + } + private String convertParameterForSee(VariableElement ve) { Element e = processingEnv.getTypeUtils().asElement(ve.asType()); if (e == null || ve.asType().getKind() == TypeKind.TYPEVAR) { @@ -87,29 +93,23 @@ private String getJavadoc() { } private String getGeneric() { - return new StringBuilder("<") - .append(element.getTypeParameters() - .stream().map( - (ve) -> ve.getSimpleName().toString() - + (ve.getBounds().isEmpty() ? "" - : (" extends " + ve.getBounds().stream().map(Object::toString) - .collect(joining("&"))))) - .collect(joining(","))) - .append("> ").toString(); + if (!element.getTypeParameters().isEmpty()) { + return new StringBuilder("<") + .append(element.getTypeParameters().stream() + .map((ve) -> ve.getSimpleName().toString() + + (ve.getBounds().isEmpty() ? "" + : (" extends " + ve.getBounds().stream().map(Object::toString) + .collect(joining("&"))))) + .collect(joining(","))) + .append("> ").toString(); + } else { + return ""; + } } private String getDeclaration() { - StringBuilder sb = new StringBuilder(); - if (!element.getTypeParameters().isEmpty()) { - sb.append(getGeneric()); - } - sb.append(element.getReturnType().toString()).append(" ").append(element.getSimpleName().toString()) - .append("("); - String param = element.getParameters().stream() - .map((ve) -> ve.asType().toString() + " " + ve.getSimpleName().toString()).collect(joining(",")); - sb.append(element.isVarArgs() ? param.replaceAll(VAR_ARG_REGEX, "...") : param); - sb.append(")"); - return sb.toString(); + return String.format("%1$s%2$s %3$s(%4$s)", getGeneric(), element.getReturnType(), element.getSimpleName(), + getParam()); } public String generateFactory() { diff --git a/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMatcherMirror.java b/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMatcherMirror.java index 8f9d5c49c..663855ff3 100644 --- a/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMatcherMirror.java +++ b/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMatcherMirror.java @@ -31,7 +31,6 @@ import java.util.List; import java.util.Optional; -import javax.annotation.processing.ProcessingEnvironment; import javax.lang.model.element.TypeElement; import ch.powerunit.extensions.matchers.provideprocessor.fields.AbstractFieldDescription; diff --git a/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMirror.java b/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMirror.java index cb9e657fe..351e7dea9 100644 --- a/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMirror.java +++ b/src/main/java/ch/powerunit/extensions/matchers/provideprocessor/ProvidesMatchersAnnotatedElementMirror.java @@ -169,23 +169,27 @@ public DSLMethod generateParentDSLStarter() { + "With(matcherOnParent);"); } - public DSLMethod generateNoParentValueDSLStarter() { + public DSLMethod generatParentValueDSLStarter(String argumentForParentBuilder) { + String genericNoParent = getSimpleNameOfGeneratedInterfaceMatcherWithGenericNoParent(); String javadoc = generateDefaultJavaDoc(Optional.empty(), Optional.of("other the other object to be used as a reference."), Optional.of("the DSL matcher"), true, false); List lines = new ArrayList<>(); - lines.add(getSimpleNameOfGeneratedInterfaceMatcherWithGenericNoParent() + " m=new " - + getSimpleNameOfGeneratedImplementationMatcherWithGenericNoParent() + "();"); + lines.add(genericNoParent + " m=new " + getSimpleNameOfGeneratedImplementationMatcherWithGenericNoParent() + "(" + + argumentForParentBuilder + ");"); lines.addAll(fields.stream().map(f -> " " + f.getFieldCopy("m", "other") + ";").collect(toList())); lines.add("return m;"); return new DSLMethod(javadoc, - fullGeneric + " " + getFullyQualifiedNameOfGeneratedClass() + "." - + getSimpleNameOfGeneratedInterfaceMatcherWithGenericNoParent() + " " + methodShortClassName - + "WithSameValue", + fullGeneric + " " + getFullyQualifiedNameOfGeneratedClass() + "." + genericNoParent + " " + + methodShortClassName + "WithSameValue", new String[] { getFullyQualifiedNameOfClassAnnotatedWithProvideMatcherWithGeneric(), "other" }, lines.toArray(new String[0])); } + public DSLMethod generateNoParentValueDSLStarter() { + return generatParentValueDSLStarter(""); + } + public ProvidesMatchersAnnotatedElementMirror getParentMirror() { return roundMirror.getByName(((TypeElement) roundMirror.getProcessingEnv().getTypeUtils() .asElement(typeElementForClassAnnotatedWithProvideMatcher.getSuperclass())).getQualifiedName() @@ -196,21 +200,7 @@ public DSLMethod generateParentValueDSLStarter() { ProvidesMatchersAnnotatedElementMirror parentMirror = getParentMirror(); String argumentForParentBuilder = parentMirror.getFullyQualifiedNameOfGeneratedClass() + "." + parentMirror.methodShortClassName + "WithSameValue(other)"; - String javadoc = generateDefaultJavaDoc(Optional.empty(), - Optional.of("other the other object to be used as a reference."), Optional.of("the DSL matcher"), true, - false); - List lines = new ArrayList<>(); - lines.add(getSimpleNameOfGeneratedInterfaceMatcherWithGenericNoParent() + " m=new " - + getSimpleNameOfGeneratedImplementationMatcherWithGenericNoParent() + "(" + argumentForParentBuilder - + ");"); - lines.addAll(fields.stream().map(f -> " " + f.getFieldCopy("m", "other") + ";").collect(toList())); - lines.add("return m;"); - return new DSLMethod(javadoc, - fullGeneric + " " + getFullyQualifiedNameOfGeneratedClass() + "." - + getSimpleNameOfGeneratedInterfaceMatcherWithGenericNoParent() + " " + methodShortClassName - + "WithSameValue", - new String[] { getFullyQualifiedNameOfClassAnnotatedWithProvideMatcherWithGeneric(), "other" }, - lines.toArray(new String[0])); + return generatParentValueDSLStarter(argumentForParentBuilder); } public DSLMethod generateParentInSameRoundWithChaningDSLStarter() {