package es.ejie.frmk.infraestructura.logs.accesos;

/**
 * Interface del Log específico para guardar datos relativos a accesos.
 */
public interface Q70LogAccesosInterface {

	/**
	 * Devuelve true si el Log está activado. 
	 * 
	 * @return True si el Log está activado. False, en caso contrario.
	 */
	public boolean isEnabled();

	/**
	 * Graba una entrada en el Q70Log de accesos
	 * @param codigoFN   Codigo de la funcion de Negocio
	 * @param dataSource DataSource con el que se ha realizado el acceso.
	 * @param tabla		 Q70Tabla a la que se ha accedido
	 * @param sql		 sql que se ha ejecutado
	 * @param tipoAcceso Tipo de Acceso (TIPO_ACCESO_LECTURA, TIPO_ACCESO_MODIFICACION, TIPO_ACCESO_BORRADO, TIPO_ACCESO_INSERT)
	 * @param SQLCode	 Codigo de de respuesta de la base de datos.
	 */
	public void log(String codigoFN, String dataSource, String tabla, String sql,String tipoAcceso, String SQLCode);
	}
