KickJava   Java API By Example, From Geeks To Geeks.

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


1 package org.grlea.logBridge.impl;
2
3 // $Id: ProtomatterLogBridgeFactory.java,v 1.1 2005/03/02 10:46:04 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 com.protomatter.syslog.util.logging.Level;
22 import com.protomatter.syslog.util.logging.Logger;
23
24 /**
25  * <p>A {@link LogBridgeFactory} implementation for
26  * <a HREF="http://protomatter.sourceforge.net/" target="_blank">Protomatter Syslog</a>.</p>
27  *
28  * <p>Log Bridge levels convert to Promatter's levels as follows:
29  * <table>
30  * <tr><th>Log Bridge</th> <th>J2SE Level</th></tr>
31  * <tr><td>Error</td> <td>{@link Level#SEVERE}</td></tr>
32  * <tr><td>Warning</td> <td>{@link Level#WARNING}</td></tr>
33  * <tr><td>Info</td> <td>{@link Level#INFO}</td></tr>
34  * <tr><td>Debug</td> <td>{@link Level#FINE}</td></tr>
35  * <tr><td>Verbose</td> <td>{@link Level#FINER}</td></tr>
36  * <tr><td>Tracing</td> <td>{@link Level#FINEST}</td></tr>
37  * </table>
38  * </p>
39  *
40  * @author grlea
41  * @version $Revision: 1.1 $
42  */

43 public class
44 ProtomatterLogBridgeFactory
45 implements LogBridgeFactory
46 {
47    public
48    ProtomatterLogBridgeFactory()
49    {
50    }
51
52    public LogBridge
53    getLogBridge(Class JavaDoc sourceClass)
54    {
55       return new Bridge(Logger.getLogger(sourceClass.getName()));
56    }
57
58    private static final class
59    Bridge
60    implements LogBridge
61    {
62       private static final Level ERROR = Level.SEVERE;
63       private static final Level WARN = Level.WARNING;
64       private static final Level INFO = Level.INFO;
65       private static final Level DEBUG = Level.FINE;
66       private static final Level VERBOSE = Level.FINER;
67       private static final Level TRACE = Level.FINEST;
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.isLoggable(ERROR);
81       }
82
83       public boolean
84       isWarnEnabled()
85       {
86          return logger.isLoggable(WARN);
87       }
88
89       public boolean
90       isInfoEnabled()
91       {
92          return logger.isLoggable(INFO);
93       }
94
95       public boolean
96       isDebugEnabled()
97       {
98          return logger.isLoggable(DEBUG);
99       }
100
101       public boolean
102       isVerboseEnabled()
103       {
104          return logger.isLoggable(VERBOSE);
105       }
106
107       public boolean
108       isTracingEnabled()
109       {
110          return logger.isLoggable(TRACE);
111       }
112
113       public void
114       error(String JavaDoc message)
115       {
116          logger.severe(message);
117       }
118
119       public void
120       error(String JavaDoc objectName, Object JavaDoc value)
121       {
122          if (isErrorEnabled())
123             logger.log(ERROR, objectName + ": {0}", 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.warning(message);
136       }
137
138       public void
139       warn(String JavaDoc objectName, Object JavaDoc value)
140       {
141          if (isWarnEnabled())
142             logger.log(WARN, objectName + ": {0}", 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 + ": {0}", 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.fine(message);
174       }
175
176       public void
177       debug(String JavaDoc objectName, Object JavaDoc value)
178       {
179          if (isDebugEnabled())
180             logger.log(DEBUG, objectName + ": {0}", 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.finer(message);
193       }
194
195       public void
196       verbose(String JavaDoc objectName, Object JavaDoc value)
197       {
198          if (isVerboseEnabled())
199             logger.log(VERBOSE, objectName + ": {0}", 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.entering(logger.getName(), methodName);
212       }
213
214       public void
215       exit(String JavaDoc methodName)
216       {
217          logger.exiting(logger.getName(), methodName);
218       }
219    }
220 }
Popular Tags