HADOOP-16717. Remove GenericsUtil isLog4jLogger dependency on Log4jLoggerAdapter. Contributed by Xieming Li.

(cherry picked from commit da9435182a8fccec743406e089325655138d9de8)
(cherry picked from commit 06a2e4ccded279381ce65add79e926e6d2679fc0)
This commit is contained in:
Akira Ajisaka 2019-11-25 14:36:27 +09:00 committed by Akira Ajisaka
parent 65783db095
commit 072958324c

View File

@ -25,7 +25,6 @@
import org.apache.hadoop.classification.InterfaceStability;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.impl.Log4jLoggerAdapter;
/**
* Contains utility methods for dealing with Java Generics.
@ -85,6 +84,11 @@ public static boolean isLog4jLogger(Class<?> clazz) {
return false;
}
Logger log = LoggerFactory.getLogger(clazz);
return log instanceof Log4jLoggerAdapter;
try {
Class log4jClass = Class.forName("org.slf4j.impl.Log4jLoggerAdapter");
return log4jClass.isInstance(log);
} catch (ClassNotFoundException e) {
return false;
}
}
}