KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > util > diagnostics > Reporter


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23
24 package com.sun.enterprise.util.diagnostics;
25
26 import java.io.*;
27 import java.util.*;
28 //Bug 4677074 begin
29
import java.util.logging.Logger JavaDoc;
30 import java.util.logging.Level JavaDoc;
31 import com.sun.logging.LogDomains;
32 //Bug 4677074 end
33

34 /** Wrapper class for ReporterImpl(s)
35  ** Will create & track ReporterImpl's if desired
36  ** provides an easy-to-type selection of static methods for calling the default reporter
37  **/

38 public class Reporter implements IReporterEnum
39 {
40     ///////////////////////////////////////////////////////////////////////////////////////////////////////
41
/////////////////////////// //////////////////////////////////////////////////
42
/////////////////////////// Configurating Stuff //////////////////////////////////////////////////
43
/////////////////////////// //////////////////////////////////////////////////
44
///////////////////////////////////////////////////////////////////////////////////////////////////////
45
//Bug 4677074 begin
46
static Logger JavaDoc _logger=LogDomains.getLogger(LogDomains.UTIL_LOGGER);
47 //Bug 4677074 end
48

49     /** Gain access to the default ReporterImpl object.
50      * @return The default ReporterImpl object.
51      */

52     public static ReporterImpl get()
53     {
54         return getDefaultReporter();
55     }
56
57     ///////////////////////////////////////////////////////////////////////////////////////////////////////
58

59         /** Change the message severity level that will trigger output
60          * @param level The verbosity increases as the level decresses. The value 1000 shutdown the Reporter.
61          */

62     public static void setSeverityLevel(int level)
63     {
64         getDefaultReporter().setSeverityLevel(level);
65     }
66
67     ///////////////////////////////////////////////////////////////////////////////////////////////////////
68

69         /** Change the message severity level that will trigger output
70          * @param level A textual description of the severity level. Key values include: ALL,NOISY,EVERYTHING,ON",MONDO,YES,TRUE,DUMP,MAX [which turn the message volume up] and NO,OFF,FALSE,QUIET,MIN [which turn the volume down] as well as the sveroty level names.
71          * return DISABLED;
72          */

73     public static void setSeverityLevel(String JavaDoc level)
74     {
75         getDefaultReporter().setSeverityLevel(level);
76     }
77
78     ///////////////////////////////////////////////////////////////////////////////////////////////////////
79

80         /** Determine the current severity level.
81          * @return the severity levels integer value.
82          */

83     public static int getSeverityLevel()
84     {
85         return getDefaultReporter().getSeverityLevel();
86     }
87
88     ///////////////////////////////////////////////////////////////////////////////////////////////////////
89

90         /** Determine the current severity level.
91          * @return the severity levels String value.
92          */

93     public static String JavaDoc getSeverityLevelString()
94     {
95         return getDefaultReporter().getSeverityLevelString();
96     }
97     
98     ///////////////////////////////////////////////////////////////////////////////////////////////////////
99
/////////////////////////// //////////////////////////////////////////////////
100
/////////////////////////// Message Writing //////////////////////////////////////////////////
101
/////////////////////////// //////////////////////////////////////////////////
102
///////////////////////////////////////////////////////////////////////////////////////////////////////
103

104         /** Messages output at the lowest severity level.
105          * @param o The text of the message will be the output of this object's toString()
106          */

107     public static void verbose(Object JavaDoc o)
108     {
109         getDefaultReporter().verbose(o);
110     }
111
112     ///////////////////////////////////////////////////////////////////////////////////////////////////////
113

114         /**
115          * @see verbose(Object)
116          */

117     public static void info(Object JavaDoc o)
118     {
119         getDefaultReporter().info(o);
120     }
121
122     ///////////////////////////////////////////////////////////////////////////////////////////////////////
123

124         /**
125          * @see verbose(Object)
126          */

127     public static void warn(Object JavaDoc o)
128     {
129         getDefaultReporter().warn(o);
130     }
131
132     ///////////////////////////////////////////////////////////////////////////////////////////////////////
133

134         /**
135          * @see verbose(Object)
136          */

137     public static void warning(Object JavaDoc o)
138     {
139         getDefaultReporter().warning(o);
140     }
141
142     ///////////////////////////////////////////////////////////////////////////////////////////////////////
143

144         /**
145          * @see verbose(Object)
146          */

147     public static void error(Object JavaDoc o)
148     {
149         getDefaultReporter().error(o);
150     }
151     
152     ///////////////////////////////////////////////////////////////////////////////////////////////////////
153

154         /**
155          * @see verbose(Object)
156          */

157     public static void critical(Object JavaDoc o)
158     {
159         getDefaultReporter().critical(o);
160     }
161     ///////////////////////////////////////////////////////////////////////////////////////////////////////
162

163         /**
164          * @see verbose(Object)
165          */

166     public static void crit(Object JavaDoc o)
167     {
168         getDefaultReporter().crit(o);
169     }
170
171     ///////////////////////////////////////////////////////////////////////////////////////////////////////
172

173         /** Dump information via the Reporter about an object
174          * @param o The object to dump information about.
175          * @param s A string to preceed the object dump
176          */

177     public static void dump(Object JavaDoc o, String JavaDoc s)
178     {
179         getDefaultReporter().dump(o, s);
180     }
181
182     ///////////////////////////////////////////////////////////////////////////////////////////////////////
183

184         /** Print a string at "DUMP" severity level
185          * @param s The message to report.
186          */

187     public static void dump(String JavaDoc s)
188     {
189         getDefaultReporter().dump(s);
190     }
191
192
193     ///////////////////////////////////////////////////////////////////////////////////////////////////////
194

195         /** Dump an object, with no "extra string" associated with the output.
196          * @param o The object to dump
197          */

198     public static void dump(Object JavaDoc o)
199     {
200         getDefaultReporter().dump(o);
201     }
202
203
204     ///////////////////////////////////////////////////////////////////////////////////////////////////////
205
/////////////////////////// //////////////////////////////////////////////////
206
/////////////////////////// ASSERTION STUFF //////////////////////////////////////////////////
207
/////////////////////////// //////////////////////////////////////////////////
208
///////////////////////////////////////////////////////////////////////////////////////////////////////
209

210     // TBD: Nice to have the insist's print the CallerInfo stuff.
211
// lots-o-typing needed!!
212

213         /** Provide an insist mechanism. The assertion will be checked if the severity level is set to ASSERT or lower.
214          * @param s The assertion will fail and cause a message and throw a run-time exception is the
215          * argument is null or is zero length.
216          */

217     public static void insist(String JavaDoc s)
218     {
219         getDefaultReporter().insist(s);
220     }
221
222     ///////////////////////////////////////////////////////////////////////////////////////////////////////
223

224         /** Provide an insist mechanism. The assertion will be checked if the severity level is set to ASSERT or lower.
225          * @param checkme The assertion will fail and cause a message and throw a run-time exception is the
226          * argument is null or is zero length.
227          * @param s Additional information to add to the assertion's text message.
228          */

229     public static void insist(String JavaDoc checkme, String JavaDoc s)
230     {
231         getDefaultReporter().insist(checkme, s);
232     }
233
234     ///////////////////////////////////////////////////////////////////////////////////////////////////////
235

236         /**
237          * @see insist(String)
238          */

239     public static void insist(boolean b)
240     {
241         getDefaultReporter().insist(b);
242     }
243
244     ///////////////////////////////////////////////////////////////////////////////////////////////////////
245

246         /**
247          * @see insist(String,String)
248          */

249     public static void insist(boolean b, String JavaDoc s)
250     {
251         getDefaultReporter().insist(b, s);
252     }
253
254     ///////////////////////////////////////////////////////////////////////////////////////////////////////
255

256         /**
257          * @see insist(String)
258          */

259     public static void insist(Object JavaDoc o)
260     {
261         getDefaultReporter().insist(o);
262     }
263
264     ///////////////////////////////////////////////////////////////////////////////////////////////////////
265

266         /**
267          * @see insist(String,String)
268          */

269     public static void insist(Object JavaDoc o, String JavaDoc s)
270     {
271         getDefaultReporter().insist(o, s);
272     }
273
274     ///////////////////////////////////////////////////////////////////////////////////////////////////////
275

276         /**
277          * @see insist(String)
278          */

279     public static void insist(double z)
280     {
281         getDefaultReporter().insist(z);
282     }
283
284     ///////////////////////////////////////////////////////////////////////////////////////////////////////
285

286         /**
287          * @see insist(String,String)
288          */

289     public static void insist(double z, String JavaDoc s)
290     {
291         getDefaultReporter().insist(z, s);
292     }
293
294     ///////////////////////////////////////////////////////////////////////////////////////////////////////
295

296         /**
297          * @see insist(String)
298          */

299     public static void insist(long l)
300     {
301         getDefaultReporter().insist(l);
302     }
303
304     ///////////////////////////////////////////////////////////////////////////////////////////////////////
305

306         /**
307          * @see insist(String,String)
308          */

309     public static void insist(long l, String JavaDoc s)
310     {
311         getDefaultReporter().insist(l, s);
312     }
313
314   
315     ///////////////////////////////////////////////////////////////////////////////////////////////////////
316
/////////////////////////// //////////////////////////////////////////////////
317
/////////////////////////// PRIVATE STUFF //////////////////////////////////////////////////
318
/////////////////////////// //////////////////////////////////////////////////
319
///////////////////////////////////////////////////////////////////////////////////////////////////////
320

321     protected Reporter()
322     {
323     }
324     
325     ///////////////////////////////////////////////////////////////////////////////////////////////////////
326

327     private static void debug(String JavaDoc s)
328     {
329         if(doDebug)
330 //Bug 4677074 System.err.println(s);
331
//Bug 4677074 begin
332
_logger.log(Level.WARNING,s);
333 //Bug 4677074 end
334
}
335     
336     ///////////////////////////////////////////////////////////////////////////////////////////////////////
337

338     private static ReporterImpl getDefaultReporter()
339     {
340         if(defaultReporter == null)
341         {
342 //Bug 4677074 System.err.println("Internal Error in Reporter -- couldn't find default reporter!");//NOI18N
343
//Bug 4677074 begin
344
_logger.log(Level.WARNING,"iplanet_util.internal_error");
345 //Bug 4677074 end
346
defaultReporter = new ReporterImpl();
347         }
348
349         return defaultReporter;
350     }
351
352     ///////////////////////////////////////////////////////////////////////////////////////////////////////
353

354     private static ReporterImpl defaultReporter = null;
355     private static final boolean doDebug = false;
356     
357     ///////////////////////////////////////////////////////////////////////////////////////////////////////
358

359     static
360     {
361         CallerInfo.addToGlobalIgnore(new Reporter());
362         
363         defaultReporter = new ReporterImpl();
364
365         if(defaultReporter == null)
366         {
367 //Bug 4677074 System.err.println("Internal Error in Reporter -- couldn't make default reporter!");//NOI18N
368
//Bug 4677074 begin
369
_logger.log(Level.WARNING,"iplanet_util.internal_error");
370         }
371     }
372 }
373
374
Popular Tags