aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/itmill/toolkit/Log.java
blob: 1f3acd11dfd14a06023519cb75b26dbf1c0888b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
/* *************************************************************************
 
 IT Mill Toolkit 

 Development of Browser User Interfaces Made Easy

 Copyright (C) 2000-2006 IT Mill Ltd
 
 *************************************************************************

 This product is distributed under commercial license that can be found
 from the product package on license.pdf. Use of this product might 
 require purchasing a commercial license from IT Mill Ltd. For guidelines 
 on usage, see licensing-guidelines.html

 *************************************************************************
 
 For more information, contact:
 
 IT Mill Ltd                           phone: +358 2 4802 7180
 Ruukinkatu 2-4                        fax:   +358 2 4802 7181
 20540, Turku                          email:  info@itmill.com
 Finland                               company www: www.itmill.com
 
 Primary source for information and releases: www.itmill.com

 ********************************************************************** */

package com.itmill.toolkit;

/**
 * <p>
 * Class providing centralized logging services. The logger defines five message
 * types, and provides methods to create messages of those types. These types
 * are:
 * </p>
 * 
 * <ul>
 * <li> <code>info</code> - Useful information generated during normal
 * operation of the application.
 * <li> <code>warning</code> - An error situation has occurred, but the
 * operation was able to finish succesfully.
 * <li> <code>error</code> - An error situation which prevented the operation
 * from finishing succesfully.
 * <li> <code>debug</code> - Internal information from the application meant
 * for developers.
 * <li> <code>exception</code> - A Java exception reported using the logger.
 * Includes the exception stack trace and a possible free-form message.
 * </ul>
 * 
 * <p>
 * Currently the class offers logging only to the standard output.
 * </p>
 * 
 * @author IT Mill Ltd.
 * @version
 * @VERSION@
 * @since 5.0
 */
public class Log {

	private static boolean useStdOut = true;

	private static String LOG_MSG_INFO = "[INFO]";

	private static String LOG_MSG_ERROR = "[ERROR]";

	private static String LOG_MSG_WARN = "[WARNING]";

	private static String LOG_MSG_DEBUG = "[DEBUG]";

	private static String LOG_MSG_EXCEPT = "[EXCEPTION]";

	/**
	 * Logs the <code>warning</code> message.
	 * 
	 * @param message
	 *            the Message String to be logged.
	 */
	public static synchronized void warn(java.lang.String message) {
		if (Log.useStdOut)
			System.out.println(LOG_MSG_WARN + " " + message);
	}

	/**
	 * Logs the <code>debug</code> message.
	 * 
	 * @param message
	 *            the Message String to be logged.
	 */
	public static synchronized void debug(java.lang.String message) {
		if (Log.useStdOut)
			System.out.println(LOG_MSG_DEBUG + " " + message);
	}

	/**
	 * Logs an <code>info</code> message.
	 * 
	 * @param message
	 *            the Message String to be logged.
	 */
	public static synchronized void info(java.lang.String message) {
		if (Log.useStdOut)
			System.out.println(LOG_MSG_INFO + " " + message);
	}

	/**
	 * Logs the Java exception and an accompanying error message.
	 * 
	 * @param message
	 *            the Message String to be logged.
	 * @param e
	 *            the Exception to be logged.
	 */
	public static synchronized void except(java.lang.String message, Exception e) {
		if (Log.useStdOut) {
			System.out.println(LOG_MSG_EXCEPT + " " + message);
			e.printStackTrace();
		}
	}

	/**
	 * Logs the <code>error</code> message.
	 * 
	 * @param message
	 *            the Message String to be logged.
	 */
	public static synchronized void error(java.lang.String message) {
		if (Log.useStdOut)
			System.out.println(LOG_MSG_ERROR + " " + message);
	}
}