- Level-handling fixed
git-svn-id: https://svn.code.sf.net/p/libusbjava/code/trunk@84 94ad28fe-ef68-46b1-9651-e7ae4fcf1c4c
This commit is contained in:
@@ -1,12 +1,41 @@
|
||||
package ch.ntb.usb.logger;
|
||||
|
||||
import java.util.logging.ConsoleHandler;
|
||||
import java.util.logging.Handler;
|
||||
import java.util.logging.Level;
|
||||
|
||||
public class LogUtil {
|
||||
|
||||
|
||||
public static UsbLogger ch_ntb_usb;
|
||||
|
||||
static {
|
||||
// set all loglevels here
|
||||
ch_ntb_usb = UsbLogger.getLogger("ch.ntb.usb");
|
||||
ch_ntb_usb.setLevel(LogLevel.OFF);
|
||||
ch_ntb_usb = getLogger("ch.ntb.usb", LogLevel.OFF);
|
||||
}
|
||||
|
||||
public static void setLevel(UsbLogger logger, Level loglevel) {
|
||||
Handler[] h = logger.getHandlers();
|
||||
for (int i = 0; i < h.length; i++) {
|
||||
h[i].setLevel(loglevel);
|
||||
}
|
||||
logger.setLevel(loglevel);
|
||||
}
|
||||
|
||||
private static void initLevel(UsbLogger logger, Level loglevel) {
|
||||
Handler[] h = logger.getHandlers();
|
||||
for (int i = 0; i < h.length; i++) {
|
||||
logger.removeHandler(h[i]);
|
||||
}
|
||||
Handler console = new ConsoleHandler();
|
||||
console.setLevel(loglevel);
|
||||
logger.addHandler(console);
|
||||
logger.setLevel(loglevel);
|
||||
logger.setUseParentHandlers(false);
|
||||
}
|
||||
|
||||
private static UsbLogger getLogger(String name, Level loglevel) {
|
||||
UsbLogger logger = UsbLogger.getLogger(name);
|
||||
initLevel(logger, loglevel);
|
||||
return logger;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user