View Javadoc

1   /**
2    * Copyright (c) 2004-2011 QOS.ch
3    * All rights reserved.
4    *
5    * Permission is hereby granted, free  of charge, to any person obtaining
6    * a  copy  of this  software  and  associated  documentation files  (the
7    * "Software"), to  deal in  the Software without  restriction, including
8    * without limitation  the rights to  use, copy, modify,  merge, publish,
9    * distribute,  sublicense, and/or sell  copies of  the Software,  and to
10   * permit persons to whom the Software  is furnished to do so, subject to
11   * the following conditions:
12   *
13   * The  above  copyright  notice  and  this permission  notice  shall  be
14   * included in all copies or substantial portions of the Software.
15   *
16   * THE  SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
17   * EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
18   * MERCHANTABILITY,    FITNESS    FOR    A   PARTICULAR    PURPOSE    AND
19   * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20   * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21   * OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION
22   * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23   *
24   */
25  package org.slf4j.helpers;
26  
27  import org.slf4j.Logger;
28  import org.slf4j.helpers.MarkerIgnoringBase;
29  
30  
31  /**
32   * A direct NOP (no operation) implementation of {@link Logger}.
33   *
34   * @author Ceki Gülcü
35   */
36  public class NOPLogger extends MarkerIgnoringBase {
37  
38    private static final long serialVersionUID = -517220405410904473L;
39  
40    /**
41     * The unique instance of NOPLogger.
42     */
43    public static final NOPLogger NOP_LOGGER = new NOPLogger();
44  
45    /**
46     * There is no point in creating multiple instances of NOPLOgger, 
47     * except by derived classes, hence the protected  access for the constructor.
48     */
49    protected NOPLogger() {
50    }
51  
52    /**
53     * Always returns the string value "NOP".
54     */
55    public String getName() {
56      return "NOP";
57    }
58  
59    /**
60     * Always returns false.
61     * @return always false
62     */
63    final public boolean isTraceEnabled() {
64      return false;
65    }
66  
67    /** A NOP implementation. */
68    final public void trace(String msg) {
69      // NOP
70    }
71  
72    /** A NOP implementation.  */
73    final public void trace(String format, Object arg) {
74      // NOP
75    }
76  
77    /** A NOP implementation.  */
78    public final void trace(String format, Object arg1, Object arg2) {
79      // NOP
80    }
81  
82    /** A NOP implementation.  */
83    public final void trace(String format, Object... argArray) {
84      // NOP
85    }
86    
87    /** A NOP implementation. */
88    final public void trace(String msg, Throwable t) {
89      // NOP
90    }
91  
92    /**
93     * Always returns false.
94     * @return always false
95     */
96    final public boolean isDebugEnabled() {
97      return false;
98    }
99  
100   /** A NOP implementation. */
101   final public void debug(String msg) {
102     // NOP
103   }
104 
105   /** A NOP implementation.  */
106   final public void debug(String format, Object arg) {
107     // NOP
108   }
109 
110   /** A NOP implementation.  */
111   public final void debug(String format, Object arg1, Object arg2) {
112     // NOP
113   }
114 
115   /** A NOP implementation.  */
116   public final void debug(String format, Object... argArray) {
117     // NOP
118   }
119   
120   
121   
122   /** A NOP implementation. */
123   final public void debug(String msg, Throwable t) {
124     // NOP
125   }
126 
127   /**
128    * Always returns false.
129    * @return always false
130    */
131   final public boolean isInfoEnabled() {
132     // NOP
133     return false;
134   }
135 
136 
137   /** A NOP implementation. */
138   final public void info(String msg) {
139     // NOP
140   }
141 
142   /** A NOP implementation. */
143   final  public void info(String format, Object arg1) {
144     // NOP
145   }
146 
147   /** A NOP implementation. */
148   final public void info(String format, Object arg1, Object arg2) {
149     // NOP
150   }
151   
152   /** A NOP implementation.  */
153   public final void info(String format, Object... argArray) {
154     // NOP
155   }
156 
157 
158   /** A NOP implementation. */
159   final public void info(String msg, Throwable t) {
160     // NOP
161   }
162 
163 
164   /**
165    * Always returns false.
166    * @return always false
167    */
168   final public boolean isWarnEnabled() {
169     return false;
170   }
171 
172   /** A NOP implementation. */
173   final public void warn(String msg) {
174     // NOP
175   }
176 
177   /** A NOP implementation. */
178   final public void warn(String format, Object arg1) {
179     // NOP
180   }
181 
182   /** A NOP implementation. */
183   final public void warn(String format, Object arg1, Object arg2) {
184     // NOP
185   }
186   
187   /** A NOP implementation.  */
188   public final void warn(String format, Object... argArray) {
189     // NOP
190   }
191 
192 
193   /** A NOP implementation. */
194   final public void warn(String msg, Throwable t) {
195     // NOP
196   }
197 
198 
199   /** A NOP implementation. */
200   final public boolean isErrorEnabled() {
201     return false;
202   }
203 
204   /** A NOP implementation. */
205   final public void error(String msg) {
206     // NOP
207   }
208 
209   /** A NOP implementation. */
210   final public void error(String format, Object arg1) {
211     // NOP
212   }
213 
214   /** A NOP implementation. */
215   final public void error(String format, Object arg1, Object arg2) {
216     // NOP
217   }
218   
219   /** A NOP implementation.  */
220   public final void error(String format, Object... argArray) {
221     // NOP
222   }
223 
224 
225   /** A NOP implementation. */
226   final public void error(String msg, Throwable t) {
227     // NOP
228   }
229 }