in src/main/java/org/apache/log4j/config/PropertyGetter.java [71:98]
void getProperties(PropertyCallback callback, String prefix) {
for (int i = 0; i < props.length; i++) {
Method getter = props[i].getReadMethod();
if (getter == null) continue;
if (!isHandledType(getter.getReturnType())) {
//System.err.println("Ignoring " + props[i].getName() +" " + getter.getReturnType());
continue;
}
String name = props[i].getName();
try {
Object result = getter.invoke(obj, NULL_ARG);
//System.err.println("PROP " + name +": " + result);
if (result != null) {
callback.foundProperty(obj, prefix, name, result);
}
} catch (IllegalAccessException ex) {
LogLog.warn("Failed to get value of property " + name);
} catch (InvocationTargetException ex) {
if (ex.getTargetException() instanceof InterruptedException
|| ex.getTargetException() instanceof InterruptedIOException) {
Thread.currentThread().interrupt();
}
LogLog.warn("Failed to get value of property " + name);
} catch (RuntimeException ex) {
LogLog.warn("Failed to get value of property " + name);
}
}
}