- 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:
schlaepfer
2006-01-12 08:12:12 +00:00
parent 77c16954d8
commit 43488b9413

View File

@@ -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;
}
}