/**
* @(#) NivelLog.java
*/
package com.tarisan.log;
import org.apache.log4j.Level;
/**
* Niveles adicionales de log para la aplicación Tarisan.
* @author Dpto. Informática.
* @version 1.0, 24/09/2003
*/
public class NivelLog extends Level
{
/**
* Valor entero del Log correspondiente a la Inicialización.
*/
public final static int INIT_INT = 99999;
/**
* Valor del Log correspondiente a la Inicialización.
*/
final static public NivelLog INIT = new NivelLog(INIT_INT, "INIT", 0);
/**
* Constructor.
* @param level El nivel de log.
* @param levelStr La cadena correspondiente al nivel.
* @param syslogEquivalent
*/
protected NivelLog(int level, String levelStr, int syslogEquivalent)
{
super(level, levelStr, syslogEquivalent);
}
/**
* Convierte la cadena pasada como argumento a un nivel (instancia de la clase Level).
* Si falla la conversión retorna el valor por defecto {@link LogTarisan#DEF_LOG_NIVEL}.
* @param sArg La cadena correspondiente al nivel.
* @return El nivel correspondiente a la cadena.
*/
public static Level toLevel(String sArg)
{
return (Level)toLevel(sArg, Level.toLevel(LogTarisan.DEF_LOG_NIVEL));
// return (Level)toLevel(sArg, NivelLog.ERROR);
}
/**
* Convierte el entero pasado como argumento a un nivel (instancia de la clase Level).
* Si falla la conversión retorna el valor por defecto {@link LogTarisan#DEF_LOG_NIVEL}.
* @param val El entero correspondiente al nivel.
* @return El nivel correspondiente al entero.
*/
public static Level toLevel(int val)
{
return (Level)toLevel(val, Level.toLevel(LogTarisan.DEF_LOG_NIVEL));
// return (Level)toLevel(val, NivelLog.ERROR);
}
/**
* Convierte el entero pasado como argumento a un nivel (instancia de la clase Level).
* Si falla la conversión retorna el valor por defecto especificado.
* @param val El entero correspondiente al nivel.
* @param defaultLevel El nivel por defecto a retornar en caso de fallo.
* @return El nivel correspondiente al entero.
*/
public static Level toLevel(int val, Level defaultLevel)
{
switch(val)
{
case ALL_INT: return NivelLog.ALL;
case DEBUG_INT: return NivelLog.DEBUG;
case INFO_INT: return NivelLog.INFO;
case WARN_INT: return NivelLog.WARN;
case ERROR_INT: return NivelLog.ERROR;
case FATAL_INT: return NivelLog.FATAL;
case INIT_INT: return NivelLog.INIT;
case OFF_INT: return NivelLog.OFF;
default: return defaultLevel;
}
}
/**
* Convierte la cadena pasada como argumento a un nivel (instancia de la clase Level).
* Si falla la conversión retorna el valor por defecto especificado.
* @param sArg La cadena correspondiente al nivel.
* @param defaultLevel El nivel por defecto a retornar en caso de fallo.
* @return El nivel correspondiente a la cadena.
*/
public static Level toLevel(String sArg, Level defaultLevel)
{
if(sArg == null)
return defaultLevel;
String s = sArg.toUpperCase();
if(s.equals("ALL")) return NivelLog.ALL;
if(s.equals("DEBUG")) return NivelLog.DEBUG;
if(s.equals("INFO")) return NivelLog.INFO;
if(s.equals("WARN")) return NivelLog.WARN;
if(s.equals("ERROR")) return NivelLog.ERROR;
if(s.equals("FATAL")) return NivelLog.FATAL;
if(s.equals("INIT")) return NivelLog.INIT;
if(s.equals("OFF")) return NivelLog.OFF;
return defaultLevel;
}
}