package org.apache.logging.log4j.spi;

import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.MessageFactory;

public class ExtendedLoggerWrapper extends AbstractLogger {
   private static final long serialVersionUID = 1L;
   protected final ExtendedLogger logger;

   public ExtendedLoggerWrapper(ExtendedLogger logger, String name, MessageFactory messageFactory) {
      super(name, messageFactory);
      this.logger = logger;
   }

   public Level getLevel() {
      return this.logger.getLevel();
   }

   public boolean isEnabled(Level level, Marker marker, Message message, Throwable t) {
      return this.logger.isEnabled(level, marker, message, t);
   }

   public boolean isEnabled(Level level, Marker marker, Object message, Throwable t) {
      return this.logger.isEnabled(level, marker, message, t);
   }

   public boolean isEnabled(Level level, Marker marker, String message) {
      return this.logger.isEnabled(level, marker, message);
   }

   public boolean isEnabled(Level level, Marker marker, String message, Object... params) {
      return this.logger.isEnabled(level, marker, message, params);
   }

   public boolean isEnabled(Level level, Marker marker, String message, Throwable t) {
      return this.logger.isEnabled(level, marker, message, t);
   }

   public void logMessage(String fqcn, Level level, Marker marker, Message message, Throwable t) {
      this.logger.logMessage(fqcn, level, marker, message, t);
   }
}
