Remove proprietary Logging class and added Java Logging util class

This commit is contained in:
Ziver Koc 2010-05-18 20:38:02 +00:00
parent 06a9d49a40
commit afac27d828
4 changed files with 66 additions and 288 deletions

View file

@ -0,0 +1,66 @@
package zutil.log;
import java.util.logging.Formatter;
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
* Utility functions for the standard Java Logger
*
* @author Ziver
*/
public class LogUtil {
private LogUtil(){}
/**
* @return a new Logger for the calling class
*/
public static Logger getLogger(){
return Logger.getLogger(getCalingClass());
}
/**
* @return the parent class other than Logger in the stack
*/
public static String getCalingClass(){
StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
for(int i=1; i<stackTraceElements.length ;++i){
String name = stackTraceElements[i].getClassName();
//name = name.substring( name.lastIndexOf('.')+1 );
if( !name.equals( LogUtil.class.getName() ) )
return name;
}
return null;
}
/**
* Sets the global log formatter to the specified one
*
* @param f is the formatter class
*/
public static void setGlobalFormatter(Formatter f){
Logger root = Logger.getLogger("");
for (Handler handler : root.getHandlers()) {
handler.setFormatter(f);
}
}
/**
* Sets the global log level
*/
public static void setGlobalLogLevel(Level level){
setLevel("", level);
}
/**
* Sets the log level for a specified logger
*/
public static void setLevel(String name, Level level){
Logger root = Logger.getLogger("");
root.setLevel(level);
for (Handler handler : root.getHandlers()) {
handler.setLevel(level);
}
}
}