blob: d071d2a995f529ef4f7443183b318a3aaeee5759 [file] [log] [blame]
/*
* Copyright 2006 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.gwt.dev.shell.tomcat;
import com.google.gwt.core.ext.TreeLogger;
/**
* Maps Tomcat's commons logger onto the GWT shell's tree logger.
*/
public class CommonsLoggerAdapter implements org.apache.commons.logging.Log {
private TreeLogger log;
/**
* @param name unused
*/
public CommonsLoggerAdapter(String name) {
// NOTE: this is ugly, but I don't know of any other way to get a
// non-static log to which we can delegate.
//
log = EmbeddedTomcatServer.sTomcat.getLogger();
}
public void debug(Object message) {
doLog(TreeLogger.SPAM, message, null);
}
public void debug(Object message, Throwable t) {
doLog(TreeLogger.SPAM, message, t);
}
public void error(Object message) {
doLog(TreeLogger.WARN, message, null);
}
public void error(Object message, Throwable t) {
doLog(TreeLogger.WARN, message, t);
}
public void fatal(Object message) {
doLog(TreeLogger.WARN, message, null);
}
public void fatal(Object message, Throwable t) {
doLog(TreeLogger.WARN, message, t);
}
public void info(Object message) {
// Intentionally low-level to us.
doLog(TreeLogger.TRACE, message, null);
}
public void info(Object message, Throwable t) {
// Intentionally low-level to us.
doLog(TreeLogger.TRACE, message, t);
}
public boolean isDebugEnabled() {
return log.isLoggable(TreeLogger.SPAM);
}
public boolean isErrorEnabled() {
return log.isLoggable(TreeLogger.WARN);
}
public boolean isFatalEnabled() {
return log.isLoggable(TreeLogger.WARN);
}
public boolean isInfoEnabled() {
// Intentionally low-level to us.
return log.isLoggable(TreeLogger.TRACE);
}
public boolean isTraceEnabled() {
// Intentionally low-level to us.
return log.isLoggable(TreeLogger.SPAM);
}
public boolean isWarnEnabled() {
return log.isLoggable(TreeLogger.WARN);
}
public void trace(Object message) {
// Intentionally low-level to us.
doLog(TreeLogger.DEBUG, message, null);
}
public void trace(Object message, Throwable t) {
// Intentionally low-level to us.
doLog(TreeLogger.DEBUG, message, t);
}
public void warn(Object message) {
doLog(TreeLogger.WARN, message, null);
}
public void warn(Object message, Throwable t) {
doLog(TreeLogger.WARN, message, t);
}
private void doLog(TreeLogger.Type type, Object message, Throwable t) {
String msg = message.toString();
log.log(type, msg, t);
}
}