Skip to content

Commit 8d66a4a

Browse files
committed
minor change
1 parent 63ebe8e commit 8d66a4a

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

src/main/java/org/xmlobjects/XMLObjects.java

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
import javax.xml.namespace.QName;
3636
import java.lang.reflect.Method;
3737
import java.lang.reflect.Modifier;
38-
import java.lang.reflect.Type;
3938
import java.util.*;
4039
import java.util.concurrent.ConcurrentHashMap;
4140
import java.util.stream.Collectors;
@@ -295,34 +294,31 @@ private Class<?> findObjectType(ObjectSerializer<?> serializer) throws XMLObject
295294
for (Method method : clazz.getDeclaredMethods()) {
296295
if (!method.isSynthetic() && Modifier.isPublic(method.getModifiers())) {
297296
Class<?> candidateType = null;
298-
Type[] parameters;
297+
Class<?>[] parameters;
299298

300299
switch (method.getName()) {
301300
case "createElement":
302-
parameters = method.getGenericParameterTypes();
301+
parameters = method.getParameterTypes();
303302
if (parameters.length == 2
304-
&& parameters[0] instanceof Class<?>
305303
&& parameters[1] == Namespaces.class) {
306-
candidateType = (Class<?>) parameters[0];
304+
candidateType = parameters[0];
307305
}
308306
break;
309307
case "initializeElement":
310-
parameters = method.getGenericParameterTypes();
308+
parameters = method.getParameterTypes();
311309
if (parameters.length == 4
312310
&& parameters[0] == Element.class
313-
&& parameters[1] instanceof Class<?>
314311
&& parameters[2] == Namespaces.class
315312
&& parameters[3] == XMLWriter.class) {
316-
candidateType = (Class<?>) parameters[1];
313+
candidateType = parameters[1];
317314
}
318315
break;
319316
case "writeChildElements":
320-
parameters = method.getGenericParameterTypes();
317+
parameters = method.getParameterTypes();
321318
if (parameters.length == 3
322-
&& parameters[0] instanceof Class<?>
323319
&& parameters[1] == Namespaces.class
324320
&& parameters[2] == XMLWriter.class) {
325-
candidateType = (Class<?>) parameters[0];
321+
candidateType = parameters[0];
326322
}
327323
break;
328324
}
@@ -338,12 +334,12 @@ private Class<?> findObjectType(ObjectSerializer<?> serializer) throws XMLObject
338334
}
339335
}
340336

341-
if (objectType == null) {
337+
if (objectType != null) {
338+
return objectType;
339+
} else {
342340
throw new XMLObjectsException("The serializer " + clazz.getName() + " must implement " +
343341
"at least one of the methods createElement, initializeElement, and writeChildElements.");
344342
}
345-
346-
return objectType;
347343
}
348344

349345
private static class BuilderInfo {

0 commit comments

Comments
 (0)