KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > monolog > provider > lib > LoggerProviderSingleton


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2003 USTL - LIFL - GOAL
5 Contact: openccm-team@objectweb.org
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Jerome Offroy.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26
27 package org.objectweb.util.monolog.provider.lib;
28
29 import org.objectweb.util.monolog.api.Logger;
30 import org.objectweb.util.monolog.api.LoggerFactory;
31 import org.objectweb.util.monolog.provider.api.LoggerProvider;
32
33 /**
34  * @author Jerome Offroy
35  * Singleton class for LoggerProviderImpl
36  */

37 public class LoggerProviderSingleton {
38
39     /**
40      * The Singleton LoggerProviderImpl
41      */

42     static private LoggerProvider unique = null;
43
44     /**
45      * Get the unique instance.
46      * Create it at first call.
47      */

48     static public LoggerProvider getLoggerProvider() {
49         if (unique == null) {
50             unique = new LoggerProviderImpl();
51         }
52         return unique;
53     }
54
55     /**
56      * Method getLogger.
57      * @param topic
58      * @param caller
59      * @return Logger
60      */

61     static public Logger getLogger(String JavaDoc topic, Class JavaDoc caller) {
62         return getLoggerProvider().getLogger(topic, caller);
63     }
64
65     /**
66      * Method getLoggerFactory.
67      * @return LoggerFactory
68      */

69     static public LoggerFactory getLoggerFactory() {
70         return unique.getLoggerFactory();
71     }
72
73     /**
74      * Method getLogger.
75      * @param topic
76      * @return Logger
77      */

78     static public Logger getLogger(String JavaDoc topic) {
79         return unique.getLogger(topic);
80     }
81
82     static public Logger createLogger(String JavaDoc topic, Class JavaDoc caller, String JavaDoc []description){
83         return getLoggerProvider().createLogger(topic,caller,description);
84     }
85
86 }
87
Popular Tags