1 package com.aragost.javahg.log;
2
3 /**
4 * General interface for logging. This interface is used by each JavaHG class
5 * for logging. A implementation of the logger interface can be retrieved
6 * by {@link LoggerFactory#getLogger(java.lang.Class)}.
7 *
8 */
9 public interface Logger {
10
11 /**
12 * Logs a debugging message - detailed debugging information that can be
13 * used for identifying problems without a debugger, e.g. entry/exit points,
14 * user errors, recoverable errors, algorithm steps. The application
15 * performance is significantly reduced when this logging level is enabled.
16 * Not for production use.
17 *
18 * @param msg
19 * The message to log.
20 */
21 public void debug(String msg);
22
23 /**
24 * Logs a debugging message - detailed debugging information that can be
25 * used for identifying problems without a debugger, e.g. entry/exit points,
26 * user errors, recoverable errors, algorithm steps. The application
27 * performance is significantly reduced when this logging level is enabled.
28 * Not for production use.
29 *
30 * @param msg
31 * The message to log.
32 */
33 public void debug(String msg, Object... args);
34
35 public void debug(String msg, Throwable thrown);
36
37 /**
38 * Logs an informational message - information about application progress,
39 * e.g. configuration values, service startup/shutdown.
40 *
41 * @param message
42 * The message to log.
43 */
44 public void info(String msg);
45
46 public void info(String msg, Object... args);
47
48 public void info(String msg, Throwable thrown);
49
50 public void warn(String msg);
51
52 public void warn(String msg, Object... args);
53
54 public void warn(String msg, Throwable thrown);
55
56 public void error(String msg);
57
58 public void error(String msg, Object... args);
59
60 public void error(String msg, Throwable thrown);
61
62 public boolean isInfoEnabled();
63
64 public boolean isDebugEnabled();
65
66 public boolean isWarnEnabled();
67
68 public boolean isErrorEnabled();
69 }