001package org.intellimate.izou.util; 002 003import org.intellimate.izou.main.Main; 004 005/** 006 * This interface provides an instance of main 007 * 008 * @author Leander Kurscheidt 009 * @version 1.0 010 */ 011public interface MainProvider { 012 /** 013 * returns the instance of Main 014 * @return Main 015 */ 016 Main getMain(); 017 018 /** 019 * Used to log messages at debug level 020 * @param msg the message 021 * @param e the Throwable 022 */ 023 void debug(String msg, Throwable e); 024 025 /** 026 * Used to log messages at debug level 027 * @param msg the message 028 */ 029 void debug(String msg); 030 031 /** 032 * Used to log messages at error level 033 * @param msg the message 034 * @param e the Throwable 035 */ 036 void error(String msg, Throwable e); 037 038 /** 039 * Used to log messages at error level 040 * @param msg the message 041 */ 042 void error(String msg); 043 044 /** 045 * Used to log messages at fatal level 046 * @param msg the message 047 * @param e the Throwable 048 */ 049 void fatal(String msg, Throwable e); 050 051 /** 052 * Used to log messages at fatal level 053 * @param msg the message 054 */ 055 void fatal(String msg); 056}