KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > grlea > logBridge > impl > SimpleLogBridgeFactory


1 package org.grlea.logBridge.impl;
2
3 // $Id: SimpleLogBridgeFactory.java,v 1.1 2005/03/02 10:46:04 grlea Exp $
4
// Copyright (c) 2005 Graham Lea. All rights reserved.
5

6 // Licensed under the Apache License, Version 2.0 (the "License");
7
// you may not use this file except in compliance with the License.
8
// You may obtain a copy of the License at
9
//
10
// http://www.apache.org/licenses/LICENSE-2.0
11
//
12
// Unless required by applicable law or agreed to in writing, software
13
// distributed under the License is distributed on an "AS IS" BASIS,
14
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
// See the License for the specific language governing permissions and
16
// limitations under the License.
17

18 import org.grlea.log.DebugLevel;
19 import org.grlea.log.SimpleLog;
20 import org.grlea.log.SimpleLogger;
21 import org.grlea.logBridge.LogBridge;
22 import org.grlea.logBridge.LogBridgeFactory;
23
24 /**
25  * <p>A {@link org.grlea.logBridge.LogBridgeFactory} implementation for
26  * <a HREF="http://simple-log.dev.java.net/" target="_blank">Simple Log</a>.</p>
27  *
28  * <p>Log Bridge levels convert to Simple Log's levels as follows:
29  * <table>
30  * <tr><th>Log Bridge</th> <th>Simple Log DebugLevel</th></tr>
31  * <tr><td>Error</td> <td>{@link DebugLevel#L2_ERROR}</td></tr>
32  * <tr><td>Warning</td> <td>{@link DebugLevel#L3_WARN}</td></tr>
33  * <tr><td>Info</td> <td>{@link DebugLevel#L4_INFO}</td></tr>
34  * <tr><td>Debug</td> <td>{@link DebugLevel#L5_DEBUG}</td></tr>
35  * <tr><td>Verbose</td> <td>{@link DebugLevel#L6_VERBOSE}</td></tr>
36  * <tr><td>Tracing</td> <td>{@link SimpleLogger#entry} / {@link SimpleLogger#exit exit}</td></tr>
37  * </table>
38  * </p>
39  *
40  * @author grlea
41  * @version $Revision: 1.1 $
42  */

43 public class
44 SimpleLogBridgeFactory
45 implements LogBridgeFactory
46 {
47    private final SimpleLog log;
48
49    public
50    SimpleLogBridgeFactory()
51    {
52       this(SimpleLog.defaultInstance());
53    }
54
55    public
56    SimpleLogBridgeFactory(SimpleLog log)
57    {
58       this.log = log;
59    }
60
61    public LogBridge
62    getLogBridge(Class JavaDoc sourceClass)
63    {
64       return new Bridge(new SimpleLogger(log, sourceClass));
65    }
66
67    private static final class
68    Bridge
69    implements LogBridge
70    {
71       private static final DebugLevel ERROR = DebugLevel.L2_ERROR;
72       private static final DebugLevel WARN = DebugLevel.L3_WARN;
73       private static final DebugLevel INFO = DebugLevel.L4_INFO;
74       private static final DebugLevel DEBUG = DebugLevel.L5_DEBUG;
75       private static final DebugLevel VERBOSE = DebugLevel.L6_VERBOSE;
76
77       private final SimpleLogger logger;
78
79       public
80       Bridge(SimpleLogger logger)
81       {
82          this.logger = logger;
83       }
84
85       public boolean
86       isErrorEnabled()
87       {
88          return logger.wouldLog(ERROR);
89       }
90
91       public boolean
92       isWarnEnabled()
93       {
94          return logger.wouldLog(WARN);
95       }
96
97       public boolean
98       isInfoEnabled()
99       {
100          return logger.wouldLog(INFO);
101       }
102
103       public boolean
104       isDebugEnabled()
105       {
106          return logger.wouldLog(DEBUG);
107       }
108
109       public boolean
110       isVerboseEnabled()
111       {
112          return logger.wouldLog(VERBOSE);
113       }
114
115       public boolean
116       isTracingEnabled()
117       {
118          return logger.isTracing();
119       }
120
121       public void
122       error(String JavaDoc message)
123       {
124          logger.error(message);
125       }
126
127       public void
128       error(String JavaDoc objectName, Object JavaDoc value)
129       {
130          logger.dbo(ERROR, objectName, value);
131       }
132
133       public void
134       error(Throwable JavaDoc error)
135       {
136          logger.dbe(ERROR, error);
137       }
138
139       public void
140       warn(String JavaDoc message)
141       {
142          logger.warn(message);
143       }
144
145       public void
146       warn(String JavaDoc objectName, Object JavaDoc value)
147       {
148          logger.dbo(WARN, objectName, value);
149       }
150
151       public void
152       warn(Throwable JavaDoc error)
153       {
154          logger.dbe(WARN, error);
155       }
156
157       public void
158       info(String JavaDoc message)
159       {
160          logger.info(message);
161       }
162
163       public void
164       info(String JavaDoc objectName, Object JavaDoc value)
165       {
166          logger.dbo(INFO, objectName, value);
167       }
168
169       public void
170       info(Throwable JavaDoc error)
171       {
172          logger.dbe(INFO, error);
173       }
174
175       public void
176       debug(String JavaDoc message)
177       {
178          logger.debug(message);
179       }
180
181       public void
182       debug(String JavaDoc objectName, Object JavaDoc value)
183       {
184          logger.dbo(DEBUG, objectName, value);
185       }
186
187       public void
188       debug(Throwable JavaDoc error)
189       {
190          logger.dbe(DEBUG, error);
191       }
192
193       public void
194       verbose(String JavaDoc message)
195       {
196          logger.verbose(message);
197       }
198
199       public void
200       verbose(String JavaDoc objectName, Object JavaDoc value)
201       {
202          logger.dbo(VERBOSE, objectName, value);
203       }
204
205       public void
206       verbose(Throwable JavaDoc error)
207       {
208          logger.dbe(VERBOSE, error);
209       }
210
211       public void
212       entry(String JavaDoc methodName)
213       {
214          logger.entry(methodName);
215       }
216
217       public void
218       exit(String JavaDoc methodName)
219       {
220          logger.exit(methodName);
221       }
222    }
223 }
Popular Tags