KickJava   Java API By Example, From Geeks To Geeks.

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


1 package org.grlea.logBridge.impl;
2
3 // $Id: JLoLogBridgeFactory.java,v 1.1 2005/03/02 10:46:03 grlea Exp $
4
// Copyright (c) 2004 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.logBridge.LogBridge;
19 import org.grlea.logBridge.LogBridgeFactory;
20
21 import org.jzonic.jlo.LogManager;
22 import org.jzonic.jlo.Logger;
23 import org.jzonic.jlo.Target;
24
25 /**
26  * <p>A {@link LogBridgeFactory} implementation for
27  * <a HREF="http://jlo.jzonic.org/" target="_blank">jLo</a>.</p>
28  *
29  * <p>Log Bridge levels convert to jLo's targets as follows:
30  * <table>
31  * <tr><th>Log Bridge</th> <th>jLo Target</th></tr>
32  * <tr><td>Error</td> <td>{@link Target#error}</td></tr>
33  * <tr><td>Warning</td> <td>{@link Target#warn}</td></tr>
34  * <tr><td>Info</td> <td>{@link Target#info}</td></tr>
35  * <tr><td>Debug</td> <td>{@link Target#debug}</td></tr>
36  * <tr><td>Verbose</td> <td>{@link Target#all}</td></tr>
37  * <tr><td>Tracing</td> <td>{@link Target#trace}</td></tr>
38  * </table>
39  * </p>
40  *
41  * @author grlea
42  * @version $Revision: 1.1 $
43  */

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