package m05bClasses;

/* Fecha Creacion 24/11/2005 */

import java.util.Date;

import org.apache.log4j.Logger;

/**
 * Clase que define la salida del Log en un fichero definido en la configuracion
 * de la aplicacion.
 */
public class m05bFileLog {
	// String fileName = "/datos/m05b/log/salida.txt"; // falta definirlo en la
	// configuracion de la aplicacion.
	private static Logger logger = Logger.getLogger(m05bFileLog.class);;

	public void addTraza(String user, String source, String message,
			int nivelTraza) {
		// try {
		m05bComun miComun = new m05bComun();
		int nivelAplic = Integer.valueOf(miComun.leerPropiedad("Log.Nivel"))
				.intValue();
		if (nivelTraza <= nivelAplic) {
			/*
			 * BufferedWriter bw = new BufferedWriter(new FileWriter(fileName,
			 * true)); StringBuffer salida = new StringBuffer("");
			 */
			if (user == null)
				user = "";
			if (!(user.equals(m05bConstantes.LOG_NO_USER))) {
				logger.info("");
				logger.info("");
				logger.info(" ***  ORIGEN: " + source + "  --  USUARIO: "
						+ user + "  --  "
						+ new Date(System.currentTimeMillis()) + "  *** ");
			}
			logger.info(message);
			// salida.close();
		}

		// } catch (java.io.IOException ioex) {
		// }
	}

	public void addTraza(Throwable e) {
		/*StackTraceElement[] stackTraceElements = Thread.currentThread()
				.getStackTrace();*/
		logger.error("error",e);/*
		logger.error(e.getMessage());
		for (StackTraceElement stackTrace : stackTraceElements) {
			logger.error(stackTrace.getClassName() + "  "
					+ stackTrace.getMethodName() + " "
					+ stackTrace.getLineNumber());
		}*/
	}
}