Code with Finding: |
class XDom {
private boolean invokeOnSetter(Object object, Element element, String nodeName,
Object bean) {
Pair<Method, Wrapper> pair =
Reflect.findSetterForTag(object.getClass(), nodeName, bean);
List<Object[]> allParameters = null;
if (pair != null) {
Method m = pair.first();
try {
if (pair.second() != null) {
allParameters = pair.second().getParameters(element);
} else {
allParameters = Lists.newArrayList();
allParameters.add(new Object[] { bean });
}
for (Object[] p : allParameters) {
m.invoke(object, p);
}
return true;
} catch (IllegalArgumentException e) {
System.out.println("Parameters: " + allParameters);
e.printStackTrace();
} catch (IllegalAccessException | InvocationTargetException e) {
e.printStackTrace();
}
}
return false;
}
}
|