in fxcop-agent/src/jetbrains/buildServer/fxcop/agent/FxCopFileProcessor.java [86:117]
private void handleChildren() {
while (myStream.hasMoreChildren()) {
myStream.moveDown();
final String nodeName = myStream.getNodeName();
try {
Method handler = getHandlerMethod(nodeName);
//handler.setAccessible(true);
handler.invoke(this);
} catch (NoSuchMethodException e) {
myLogger.message(getMessage(nodeName) + ": Unknown tag '" + nodeName + "'");
} catch (InvocationTargetException e) {
Loggers.AGENT.debug(getMessage(nodeName), e);
String additionalDetails = "";
if (!StringUtil.isEmpty(e.getMessage())) {
additionalDetails += e.toString();
}
if (e.getTargetException() != null) {
additionalDetails += (StringUtil.isEmpty(additionalDetails) ? "" : ", caused by: ") + e.getTargetException().toString();
}
myLogger.error(getMessage(nodeName) + (StringUtil.isEmpty(additionalDetails) ? "" : ": " + additionalDetails));
} catch (IllegalAccessException e) {
Loggers.AGENT.debug(getMessage(nodeName), e);
myLogger.error(getMessage(nodeName) + ":" + e.toString());
} catch (RuntimeException e) {
// Java 9
if (!"java.lang.reflect.InaccessibleObjectException".equals(e.getClass().getName())) throw e;
myLogger.message(getMessage(nodeName) + ": Unknown tag '" + nodeName + "'");
}
myStream.moveUp();
}
}