1 | // SECTION-START[License Header] |
2 | // <editor-fold defaultstate="collapsed" desc=" Generated License "> |
3 | /* |
4 | * Java Object Management and Configuration |
5 | * Copyright (C) Christian Schulte, 2005-206 |
6 | * All rights reserved. |
7 | * |
8 | * Redistribution and use in source and binary forms, with or without |
9 | * modification, are permitted provided that the following conditions |
10 | * are met: |
11 | * |
12 | * o Redistributions of source code must retain the above copyright |
13 | * notice, this list of conditions and the following disclaimer. |
14 | * |
15 | * o Redistributions in binary form must reproduce the above copyright |
16 | * notice, this list of conditions and the following disclaimer in |
17 | * the documentation and/or other materials provided with the |
18 | * distribution. |
19 | * |
20 | * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, |
21 | * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY |
22 | * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL |
23 | * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT, |
24 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT |
25 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
26 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
27 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
28 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
29 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
30 | * |
31 | * $JOMC$ |
32 | * |
33 | */ |
34 | // </editor-fold> |
35 | // SECTION-END |
36 | package org.jomc.logging.ri.commons; |
37 | |
38 | import java.util.logging.Level; |
39 | import org.apache.commons.logging.Log; |
40 | import org.apache.commons.logging.LogFactory; |
41 | |
42 | // SECTION-START[Documentation] |
43 | // <editor-fold defaultstate="collapsed" desc=" Generated Documentation "> |
44 | /** |
45 | * Object management and configuration logging system implementation backed by Apache Commons Logging. |
46 | * |
47 | * <dl> |
48 | * <dt><b>Identifier:</b></dt><dd>org.jomc.logging.ri.commons.CommonsLogger</dd> |
49 | * <dt><b>Name:</b></dt><dd>JOMC Logging ⁑ Commons Logging</dd> |
50 | * <dt><b>Specifications:</b></dt> |
51 | * <dd>org.jomc.logging.Logger @ 1.1</dd> |
52 | * <dd>org.jomc.spi.Listener @ 1.0</dd> |
53 | * <dt><b>Abstract:</b></dt><dd>No</dd> |
54 | * <dt><b>Final:</b></dt><dd>No</dd> |
55 | * <dt><b>Stateless:</b></dt><dd>Yes</dd> |
56 | * </dl> |
57 | * |
58 | * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 1.0 |
59 | * @version 1.3 |
60 | */ |
61 | // </editor-fold> |
62 | // SECTION-END |
63 | // SECTION-START[Annotations] |
64 | // <editor-fold defaultstate="collapsed" desc=" Generated Annotations "> |
65 | @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.5", comments = "See http://www.jomc.org/jomc/1.5/jomc-tools-1.5" ) |
66 | // </editor-fold> |
67 | // SECTION-END |
68 | public final class CommonsLogger |
69 | implements |
70 | org.jomc.logging.Logger, |
71 | org.jomc.spi.Listener |
72 | { |
73 | // SECTION-START[Constructors] |
74 | // <editor-fold defaultstate="collapsed" desc=" Generated Constructors "> |
75 | /** Creates a new {@code CommonsLogger} instance. */ |
76 | @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.5", comments = "See http://www.jomc.org/jomc/1.5/jomc-tools-1.5" ) |
77 | public CommonsLogger() |
78 | { |
79 | // SECTION-START[Default Constructor] |
80 | super(); |
81 | // SECTION-END |
82 | } |
83 | // </editor-fold> |
84 | // SECTION-END |
85 | // SECTION-START[Logger] |
86 | |
87 | public boolean isConfigEnabled() |
88 | { |
89 | return this.getLogger().isDebugEnabled(); |
90 | } |
91 | |
92 | public void config( final String message ) |
93 | { |
94 | this.getLogger().debug( message ); |
95 | } |
96 | |
97 | public void config( final Throwable throwable ) |
98 | { |
99 | this.getLogger().debug( throwable.getMessage(), throwable ); |
100 | } |
101 | |
102 | public void config( final String message, final Throwable throwable ) |
103 | { |
104 | this.getLogger().debug( message, throwable ); |
105 | } |
106 | |
107 | public boolean isDebugEnabled() |
108 | { |
109 | return this.getLogger().isDebugEnabled(); |
110 | } |
111 | |
112 | public void debug( final String message ) |
113 | { |
114 | this.getLogger().debug( message ); |
115 | } |
116 | |
117 | public void debug( final Throwable throwable ) |
118 | { |
119 | this.getLogger().debug( throwable.getMessage(), throwable ); |
120 | } |
121 | |
122 | public void debug( final String message, final Throwable throwable ) |
123 | { |
124 | this.getLogger().debug( message, throwable ); |
125 | } |
126 | |
127 | public boolean isErrorEnabled() |
128 | { |
129 | return this.getLogger().isErrorEnabled(); |
130 | } |
131 | |
132 | public void error( final String message ) |
133 | { |
134 | this.getLogger().error( message ); |
135 | } |
136 | |
137 | public void error( final Throwable throwable ) |
138 | { |
139 | this.getLogger().error( throwable.getMessage(), throwable ); |
140 | } |
141 | |
142 | public void error( final String message, final Throwable throwable ) |
143 | { |
144 | this.getLogger().error( message, throwable ); |
145 | } |
146 | |
147 | public boolean isFatalEnabled() |
148 | { |
149 | return this.getLogger().isFatalEnabled(); |
150 | } |
151 | |
152 | public void fatal( final String message ) |
153 | { |
154 | this.getLogger().fatal( message ); |
155 | } |
156 | |
157 | public void fatal( final Throwable throwable ) |
158 | { |
159 | this.getLogger().fatal( throwable.getMessage(), throwable ); |
160 | } |
161 | |
162 | public void fatal( final String message, final Throwable throwable ) |
163 | { |
164 | this.getLogger().fatal( message, throwable ); |
165 | } |
166 | |
167 | public boolean isInfoEnabled() |
168 | { |
169 | return this.getLogger().isInfoEnabled(); |
170 | } |
171 | |
172 | public void info( final String message ) |
173 | { |
174 | this.getLogger().info( message ); |
175 | } |
176 | |
177 | public void info( final Throwable throwable ) |
178 | { |
179 | this.getLogger().info( throwable.getMessage(), throwable ); |
180 | } |
181 | |
182 | public void info( final String message, final Throwable throwable ) |
183 | { |
184 | this.getLogger().info( message, throwable ); |
185 | } |
186 | |
187 | public boolean isTraceEnabled() |
188 | { |
189 | return this.getLogger().isTraceEnabled(); |
190 | } |
191 | |
192 | public void trace( final String message ) |
193 | { |
194 | this.getLogger().trace( message ); |
195 | } |
196 | |
197 | public void trace( final Throwable throwable ) |
198 | { |
199 | this.getLogger().trace( throwable.getMessage(), throwable ); |
200 | } |
201 | |
202 | public void trace( final String message, final Throwable throwable ) |
203 | { |
204 | this.getLogger().trace( message, throwable ); |
205 | } |
206 | |
207 | public boolean isWarnEnabled() |
208 | { |
209 | return this.getLogger().isWarnEnabled(); |
210 | } |
211 | |
212 | public void warn( final String message ) |
213 | { |
214 | this.getLogger().warn( message ); |
215 | } |
216 | |
217 | public void warn( final Throwable throwable ) |
218 | { |
219 | this.getLogger().warn( throwable.getMessage(), throwable ); |
220 | } |
221 | |
222 | public void warn( final String message, final Throwable throwable ) |
223 | { |
224 | this.getLogger().warn( message, throwable ); |
225 | } |
226 | |
227 | // SECTION-END |
228 | // SECTION-START[Listener] |
229 | public void onLog( final Level level, final String message, final Throwable throwable ) |
230 | { |
231 | if ( level != null ) |
232 | { |
233 | if ( level.intValue() <= Level.FINEST.intValue() ) |
234 | { |
235 | this.getObjectManagementLogger().trace( message, throwable ); |
236 | } |
237 | else if ( level.intValue() <= Level.FINER.intValue() ) |
238 | { |
239 | this.getObjectManagementLogger().debug( message, throwable ); |
240 | } |
241 | else if ( level.intValue() <= Level.FINE.intValue() ) |
242 | { |
243 | this.getObjectManagementLogger().debug( message, throwable ); |
244 | } |
245 | else if ( level.intValue() <= Level.CONFIG.intValue() ) |
246 | { |
247 | this.getObjectManagementLogger().config( message, throwable ); |
248 | } |
249 | else if ( level.intValue() <= Level.INFO.intValue() ) |
250 | { |
251 | this.getObjectManagementLogger().info( message, throwable ); |
252 | } |
253 | else if ( level.intValue() <= Level.WARNING.intValue() ) |
254 | { |
255 | this.getObjectManagementLogger().warn( message, throwable ); |
256 | } |
257 | else if ( level.intValue() <= Level.SEVERE.intValue() ) |
258 | { |
259 | this.getObjectManagementLogger().error( message, throwable ); |
260 | } |
261 | else if ( level.intValue() < Level.OFF.intValue() ) |
262 | { |
263 | this.getObjectManagementLogger().fatal( message, throwable ); |
264 | } |
265 | } |
266 | } |
267 | |
268 | // SECTION-END |
269 | // SECTION-START[CommonsLogger] |
270 | /** |
271 | * Gets the commons logging logger backing the instance. |
272 | * |
273 | * @return The commons logging logger backing the instance.. |
274 | * |
275 | * @see #getName() |
276 | * @see LogFactory#getLog(java.lang.String) |
277 | */ |
278 | public Log getLogger() |
279 | { |
280 | return LogFactory.getLog( this.getName() ); |
281 | } |
282 | |
283 | // SECTION-END |
284 | // SECTION-START[Dependencies] |
285 | // <editor-fold defaultstate="collapsed" desc=" Generated Dependencies "> |
286 | /** |
287 | * Gets the {@code <ObjectManagementLogger>} dependency. |
288 | * <p> |
289 | * This method returns the {@code <JOMC Logging ⁑ Commons Logging>} object of the {@code <org.jomc.logging.Logger>} specification at specification level 1.1. |
290 | * That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance. |
291 | * </p> |
292 | * <p><strong>Properties:</strong> |
293 | * <table border="1" width="100%" cellpadding="3" cellspacing="0"> |
294 | * <tr class="TableSubHeadingColor"> |
295 | * <th align="left" scope="col" nowrap><b>Name</b></th> |
296 | * <th align="left" scope="col" nowrap><b>Type</b></th> |
297 | * <th align="left" scope="col" nowrap><b>Documentation</b></th> |
298 | * </tr> |
299 | * <tr class="TableRow"> |
300 | * <td align="left" valign="top" nowrap>{@code <name>}</td> |
301 | * <td align="left" valign="top" nowrap>{@code java.lang.String}</td> |
302 | * <td align="left" valign="top">Name of the logger object management events are logged with.</td> |
303 | * </tr> |
304 | * </table> |
305 | * </p> |
306 | * <dl> |
307 | * <dt><b>Final:</b></dt><dd>No</dd> |
308 | * </dl> |
309 | * @return Logger object management events are logged with. |
310 | * @throws org.jomc.ObjectManagementException if getting the dependency instance fails. |
311 | */ |
312 | @SuppressWarnings("unused") |
313 | @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.5", comments = "See http://www.jomc.org/jomc/1.5/jomc-tools-1.5" ) |
314 | private org.jomc.logging.Logger getObjectManagementLogger() |
315 | { |
316 | final org.jomc.logging.Logger _d = (org.jomc.logging.Logger) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ObjectManagementLogger" ); |
317 | assert _d != null : "'ObjectManagementLogger' dependency not found."; |
318 | return _d; |
319 | } |
320 | // </editor-fold> |
321 | // SECTION-END |
322 | // SECTION-START[Properties] |
323 | // <editor-fold defaultstate="collapsed" desc=" Generated Properties "> |
324 | /** |
325 | * Gets the value of the {@code <name>} property. |
326 | * <p><dl> |
327 | * <dt><b>Final:</b></dt><dd>No</dd> |
328 | * </dl></p> |
329 | * @return Name of the component events are logged for. |
330 | * @throws org.jomc.ObjectManagementException if getting the property instance fails. |
331 | */ |
332 | @SuppressWarnings("unused") |
333 | @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.5", comments = "See http://www.jomc.org/jomc/1.5/jomc-tools-1.5" ) |
334 | public java.lang.String getName() |
335 | { |
336 | final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "name" ); |
337 | assert _p != null : "'name' property not found."; |
338 | return _p; |
339 | } |
340 | // </editor-fold> |
341 | // SECTION-END |
342 | // SECTION-START[Messages] |
343 | // SECTION-END |
344 | } |