All Downloads are FREE. Search and download functionalities are using the official Maven repository.

js.log4j.LevelMap Maven / Gradle / Ivy

package js.log4j;

import js.log.LogLevel;

import org.apache.log4j.Level;

/**
 * Maps j(s)-lib logger levels to log4j {@link Level}. Current implementation is based on log4j. In
 * order to match j(s)-lib levels there are two log4j custom levels: {@link LevelEx#TRACE} and
 * {@link LevelEx#BUG}.
 * 
 * @author Iulian Rotaru
 */
final class LevelMap {
	/** Levels map is actually a log4j levels list organized on j(s)-lib levels order. */
	private static final Level[] LEVEL_MAP = new Level[] {
			//
			LevelEx.TRACE, // LogLevel.TRACE
			Level.DEBUG, // LogLevel.DEBUG
			Level.INFO, // LogLevel.INFO
			Level.WARN, // LogLevel.WARN
			Level.ERROR, // LogLevel.ERROR
			Level.FATAL, // LogLevel.FATAL
			LevelEx.BUG, // LogLevel.BUG
			Level.OFF // LogLevel.OFF
	};

	/**
	 * Get log4j level assigned to j(s)-lib level.
	 * 
	 * @param logLevel j(s)-lib log level.
	 * @return log4j level.
	 */
	static Level log4jLevel(LogLevel logLevel) {
		return LEVEL_MAP[logLevel.ordinal()];
	}

	/** Forbid default constructor synthesis. */
	private LevelMap() {
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy