View Javadoc

1   /**
2      This file is part of GoldenGate Project (named also GoldenGate or GG).
3   
4      Copyright 2009, Frederic Bregier, and individual contributors by the @author
5      tags. See the COPYRIGHT.txt in the distribution for a full listing of
6      individual contributors.
7   
8      All GoldenGate Project is free software: you can redistribute it and/or 
9      modify it under the terms of the GNU General Public License as published 
10     by the Free Software Foundation, either version 3 of the License, or
11     (at your option) any later version.
12  
13     GoldenGate is distributed in the hope that it will be useful,
14     but WITHOUT ANY WARRANTY; without even the implied warranty of
15     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16     GNU General Public License for more details.
17  
18     You should have received a copy of the GNU General Public License
19     along with GoldenGate .  If not, see <http://www.gnu.org/licenses/>.
20   */
21  package goldengate.common.logging;
22  
23  import java.util.logging.Level;
24  import java.util.logging.Logger;
25  
26  /**
27   * <a href=
28   * "http://java.sun.com/javase/6/docs/technotes/guides/logging/index.html"
29   * >java.util.logging</a> logger. Based on The Netty Project
30   * (netty-dev@lists.jboss.org)
31   *
32   * @author Trustin Lee (tlee@redhat.com)
33   * @author Frederic Bregier
34   *
35   */
36  public class GgJdkLogger extends GgInternalLogger {
37  
38      private final Logger logger;
39  
40      private final String loggerName;
41  
42      GgJdkLogger(Logger logger, String loggerName) {
43          super();
44          this.logger = logger;
45          this.loggerName = loggerName;
46      }
47  
48      public void debug(String msg) {
49          if (logger.isLoggable(Level.FINE))
50              logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+msg);
51      }
52  
53      public void debug(String msg, Throwable cause) {
54          if (logger.isLoggable(Level.FINE))
55              logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+msg, cause);
56      }
57  
58      public void error(String msg) {
59          logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+msg);
60      }
61  
62      public void error(String msg, Throwable cause) {
63          logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+msg, cause);
64      }
65  
66      public void info(String msg) {
67          if (logger.isLoggable(Level.INFO))
68              logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+msg);
69      }
70  
71      public void info(String msg, Throwable cause) {
72          if (logger.isLoggable(Level.INFO))
73              logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+msg, cause);
74      }
75  
76      public boolean isDebugEnabled() {
77          return logger.isLoggable(Level.FINE);
78      }
79  
80      public boolean isErrorEnabled() {
81          return logger.isLoggable(Level.SEVERE);
82      }
83  
84      public boolean isInfoEnabled() {
85          return logger.isLoggable(Level.INFO);
86      }
87  
88      public boolean isWarnEnabled() {
89          return logger.isLoggable(Level.WARNING);
90      }
91  
92      public void warn(String msg) {
93          logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+msg);
94      }
95  
96      public void warn(String msg, Throwable cause) {
97          logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+msg, cause);
98      }
99  
100     @Override
101     public String toString() {
102         return loggerName;
103     }
104 
105     /*
106      * (non-Javadoc)
107      *
108      * @see goldengate.common.logging.GgInternalLogger#debug(java.lang.String,
109      * java.lang.String)
110      */
111     @Override
112     public void debug(String format, String arg1) {
113         if (logger.isLoggable(Level.FINE)) {
114             logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
115                     arg1));
116         }
117     }
118 
119     /*
120      * (non-Javadoc)
121      *
122      * @see goldengate.common.logging.GgInternalLogger#debug(java.lang.String,
123      * java.lang.String, java.lang.String)
124      */
125     @Override
126     public void debug(String format, String arg1, String arg2) {
127         if (logger.isLoggable(Level.FINE)) {
128             logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
129                     arg1).replaceFirst("{}", arg2));
130         }
131     }
132 
133     /*
134      * (non-Javadoc)
135      *
136      * @see goldengate.common.logging.GgInternalLogger#debug(java.lang.String,
137      * java.lang.Object, java.lang.Object)
138      */
139     @Override
140     public void debug(String format, Object arg1, Object arg2) {
141         if (logger.isLoggable(Level.FINE)) {
142             logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
143                     arg1.toString()).replaceFirst("{}", arg2.toString()));
144         }
145     }
146 
147     /*
148      * (non-Javadoc)
149      *
150      * @see goldengate.common.logging.GgInternalLogger#debug(java.lang.String,
151      * java.lang.Object)
152      */
153     @Override
154     public void debug(String format, Object arg1) {
155         if (logger.isLoggable(Level.FINE)) {
156             logger.logp(Level.FINE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
157                     arg1.toString()));
158         }
159     }
160 
161     /*
162      * (non-Javadoc)
163      *
164      * @see goldengate.common.logging.GgInternalLogger#error(java.lang.String,
165      * java.lang.String)
166      */
167     @Override
168     public void error(String format, String arg1) {
169         if (logger.isLoggable(Level.SEVERE)) {
170             logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
171                     "{}", arg1));
172         }
173     }
174 
175     /*
176      * (non-Javadoc)
177      *
178      * @see goldengate.common.logging.GgInternalLogger#error(java.lang.String,
179      * java.lang.String, java.lang.String)
180      */
181     @Override
182     public void error(String format, String arg1, String arg2) {
183         if (logger.isLoggable(Level.SEVERE)) {
184             logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
185                     "{}", arg1).replaceFirst("{}", arg2));
186         }
187     }
188 
189     /*
190      * (non-Javadoc)
191      *
192      * @see goldengate.common.logging.GgInternalLogger#error(java.lang.String,
193      * java.lang.Object, java.lang.Object)
194      */
195     @Override
196     public void error(String format, Object arg1, Object arg2) {
197         if (logger.isLoggable(Level.SEVERE)) {
198             logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
199                     "{}", arg1.toString()).replaceFirst("{}", arg2.toString()));
200         }
201     }
202 
203     /*
204      * (non-Javadoc)
205      *
206      * @see goldengate.common.logging.GgInternalLogger#error(java.lang.String,
207      * java.lang.Object)
208      */
209     @Override
210     public void error(String format, Object arg1) {
211         if (logger.isLoggable(Level.SEVERE)) {
212             logger.logp(Level.SEVERE, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
213                     "{}", arg1.toString()));
214         }
215     }
216 
217     /*
218      * (non-Javadoc)
219      *
220      * @see goldengate.common.logging.GgInternalLogger#info(java.lang.String,
221      * java.lang.String)
222      */
223     @Override
224     public void info(String format, String arg1) {
225         if (logger.isLoggable(Level.INFO)) {
226             logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
227                     arg1));
228         }
229     }
230 
231     /*
232      * (non-Javadoc)
233      *
234      * @see goldengate.common.logging.GgInternalLogger#info(java.lang.String,
235      * java.lang.String, java.lang.String)
236      */
237     @Override
238     public void info(String format, String arg1, String arg2) {
239         if (logger.isLoggable(Level.INFO)) {
240             logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
241                     arg1).replaceFirst("{}", arg2));
242         }
243     }
244 
245     /*
246      * (non-Javadoc)
247      *
248      * @see goldengate.common.logging.GgInternalLogger#info(java.lang.String,
249      * java.lang.Object, java.lang.Object)
250      */
251     @Override
252     public void info(String format, Object arg1, Object arg2) {
253         if (logger.isLoggable(Level.INFO)) {
254             logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
255                     arg1.toString()).replaceFirst("{}", arg2.toString()));
256         }
257     }
258 
259     /*
260      * (non-Javadoc)
261      *
262      * @see goldengate.common.logging.GgInternalLogger#info(java.lang.String,
263      * java.lang.Object)
264      */
265     @Override
266     public void info(String format, Object arg1) {
267         if (logger.isLoggable(Level.INFO)) {
268             logger.logp(Level.INFO, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst("{}",
269                     arg1.toString()));
270         }
271     }
272 
273     /*
274      * (non-Javadoc)
275      *
276      * @see goldengate.common.logging.GgInternalLogger#warn(java.lang.String,
277      * java.lang.String)
278      */
279     @Override
280     public void warn(String format, String arg1) {
281         if (logger.isLoggable(Level.WARNING)) {
282             logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
283                     "{}", arg1));
284         }
285     }
286 
287     /*
288      * (non-Javadoc)
289      *
290      * @see goldengate.common.logging.GgInternalLogger#warn(java.lang.String,
291      * java.lang.String, java.lang.String)
292      */
293     @Override
294     public void warn(String format, String arg1, String arg2) {
295         if (logger.isLoggable(Level.WARNING)) {
296             logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
297                     "{}", arg1).replaceFirst("{}", arg2));
298         }
299     }
300 
301     /*
302      * (non-Javadoc)
303      *
304      * @see goldengate.common.logging.GgInternalLogger#warn(java.lang.String,
305      * java.lang.Object, java.lang.Object)
306      */
307     @Override
308     public void warn(String format, Object arg1, Object arg2) {
309         if (logger.isLoggable(Level.WARNING)) {
310             logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
311                     "{}", arg1.toString()).replaceFirst("{}", arg2.toString()));
312         }
313     }
314 
315     /*
316      * (non-Javadoc)
317      *
318      * @see goldengate.common.logging.GgInternalLogger#warn(java.lang.String,
319      * java.lang.Object)
320      */
321     @Override
322     public void warn(String format, Object arg1) {
323         if (logger.isLoggable(Level.WARNING)) {
324             logger.logp(Level.WARNING, loggerName, null, getLoggerMethodAndLine()+format.replaceFirst(
325                     "{}", arg1.toString()));
326         }
327     }
328 }