merged 1.1 branch into head
[mir.git] / source / mir / log / LoggerWrapper.java
1 /*
2  * Copyright (C) 2005 The Mir-coders group
3  *
4  * This file is part of Mir.
5  *
6  * Mir is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * Mir is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Mir; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  *
20  * In addition, as a special exception, The Mir-coders gives permission to link
21  * the code of this program with  any library licensed under the Apache Software License.
22  * You must obey the GNU General Public License in all respects for all of the code used
23  * other than the above mentioned libraries.  If you modify this file, you may extend this
24  * exception to your version of the file, but you are not obligated to do so.
25  * If you do not wish to do so, delete this exception statement from your version.
26  */
27 package mir.log;
28
29 import java.io.PrintWriter;
30
31 public class LoggerWrapper {
32   private Object object;
33   public final static int DEBUG_MESSAGE = 1;
34   public final static int INFO_MESSAGE = 2;
35   public final static int WARN_MESSAGE = 3;
36   public final static int ERROR_MESSAGE = 4;
37   public final static int FATAL_MESSAGE = 5;
38
39   public LoggerWrapper( Object anObject ) {
40     object = anObject;
41   }
42
43   public void debug( String aMessage ) {
44     LoggerEngine.debug(object, aMessage);
45   }
46
47   public void info( String aMessage ) {
48     LoggerEngine.info(object, aMessage);
49   }
50
51   public void warn( String aMessage ) {
52     LoggerEngine.warn(object, aMessage);
53   }
54
55   public void warn(String aMessage, Throwable anException) {
56     LoggerEngine.warn(object, aMessage, anException);
57   }
58
59   public void error( String aMessage ) {
60     LoggerEngine.error(object, aMessage);
61   }
62
63   public void error(String aMessage, Throwable anException) {
64     LoggerEngine.error(object, aMessage, anException);
65   }
66
67   public void fatal( String aMessage ) {
68     LoggerEngine.fatal(object, aMessage);
69   }
70
71   public void message( int aType, String aMessage) {
72     switch(aType) {
73       case DEBUG_MESSAGE:
74         debug(aMessage);
75         break;
76       case INFO_MESSAGE:
77         info(aMessage);
78         break;
79       case WARN_MESSAGE:
80         warn(aMessage);
81         break;
82       case ERROR_MESSAGE:
83         error(aMessage);
84         break;
85       case FATAL_MESSAGE:
86         fatal(aMessage);
87         break;
88       default:
89         warn("LoggerWrapper.message: Unknown message type ("+aType+") for message '" + aMessage + "'");
90     }
91   }
92
93   public PrintWriter asPrintWriter(int aMessageType) {
94     return new PrintWriter(new LoggerToWriterAdapter(this, aMessageType));
95   }
96 }
97