diff -urEbwB hamcrest-1.3/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java --- hamcrest-1.3/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java 2019-01-01 15:27:38.332599832 +0100 +++ hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java 2019-01-01 15:29:19.560043471 +0100 @@ -4,8 +4,10 @@ import com.thoughtworks.qdox.model.JavaClass; import com.thoughtworks.qdox.model.JavaMethod; import com.thoughtworks.qdox.model.JavaParameter; -import com.thoughtworks.qdox.model.Type; +import com.thoughtworks.qdox.model.JavaType; +import com.thoughtworks.qdox.model.impl.DefaultJavaClass; +import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.regex.Pattern; @@ -56,15 +58,15 @@ JavaMethod methodSource = findMethodInSource(factoryMethod); if (methodSource != null) { factoryMethod.setJavaDoc(createJavaDocComment(methodSource)); - JavaParameter[] parametersFromSource + List parametersFromSource = methodSource.getParameters(); List parametersFromReflection = factoryMethod.getParameters(); - if (parametersFromReflection.size() == parametersFromSource.length) { - for (int i = 0; i < parametersFromSource.length; i++) { + if (parametersFromReflection.size() == parametersFromSource.size()) { + for (int i = 0; i < parametersFromSource.size(); i++) { parametersFromReflection.get(i).setName( - parametersFromSource[i].getName()); + parametersFromSource.get(i).getName()); } } } @@ -79,18 +81,18 @@ // Note, this doesn't always work - it struggles with some kinds of generics. // This seems to cover most cases though. List params = factoryMethod.getParameters(); - Type[] types = new Type[params.size()]; + List types = new ArrayList(params.size()); boolean varArgs = false; - for (int i = 0; i < types.length; i++) { + for (int i = 0; i < params.size(); i++) { String type = params.get(i).getType(); varArgs = VARARGS_REGEX.matcher(type).find(); // QDox ignores varargs and generics, so we strip them out to help QDox. type = GENERIC_REGEX.matcher(type).replaceAll(""); type = VARARGS_REGEX.matcher(type).replaceAll(""); - types[i] = new Type(type); + types.add(new DefaultJavaClass(type)); } - JavaMethod[] methods = classSource.getMethodsBySignature(factoryMethod.getName(), types, false, varArgs); - return methods.length == 1 ? methods[0] : null; + List methods = classSource.getMethodsBySignature(factoryMethod.getName(), types, false, varArgs); + return methods.size() == 1 ? methods.get(0) : null; } /** @@ -98,8 +100,8 @@ */ private static String createJavaDocComment(JavaMethod methodSource) { String comment = methodSource.getComment(); - DocletTag[] tags = methodSource.getTags(); - if ((comment == null || comment.trim().length() == 0) && tags.length == 0) { + List tags = methodSource.getTags(); + if ((comment == null || comment.trim().length() == 0) && tags.size() == 0) { return null; } StringBuilder result = new StringBuilder(); Only in hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator: QDoxFactoryReader.java.orig Only in hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator: QDoxFactoryReader.java.rej diff -urEbwB hamcrest-1.3/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java --- hamcrest-1.3/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java 2019-01-01 15:27:38.332599832 +0100 +++ hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java 2019-01-01 15:29:19.556043651 +0100 @@ -1,6 +1,6 @@ package org.hamcrest.generator; -import com.thoughtworks.qdox.JavaDocBuilder; +import com.thoughtworks.qdox.JavaProjectBuilder; import com.thoughtworks.qdox.model.JavaClass; import java.io.File; @@ -16,7 +16,7 @@ */ public class QDox { - private final JavaDocBuilder javaDocBuilder = new JavaDocBuilder(); + private final JavaProjectBuilder javaDocBuilder = new JavaProjectBuilder(); public void addSourceTree(File sourceDir) { javaDocBuilder.addSourceTree(sourceDir); Only in hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator: QDox.java.orig Only in hamcrest-1.3.new/hamcrest-generator/src/main/java/org/hamcrest/generator: QDox.java.rej