View Javadoc

1   /********************************************************************************
2    * DDTUnit, a Datadriven Approach to Unit- and Moduletesting
3    * Copyright (c) 2004, Joerg and Kai Gellien
4    * All rights reserved.
5    * 
6    * The Software is provided under the terms of the Common Public License 1.0
7    * as provided with the distribution of DDTUnit in the file cpl-v10.html.
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   *     + Redistributions of source code must retain the above copyright 
13   *       notice, this list of conditions and the following disclaimer. 
14   *       
15   *     + Redistributions in binary form must reproduce the above 
16   *       copyright notice, this list of conditions and the following 
17   *       disclaimer in the documentation and/or other materials provided 
18   *       with the distribution. 
19   *       
20   *     + Neither the name of the authors or DDTUnit, nor the 
21   *       names of its contributors may be used to endorse or promote 
22   *       products derived from this software without specific prior 
23   *       written permission. 
24   * 
25   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
26   * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
27   * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 
28   * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR 
29   * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
30   * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
31   * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
32   * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
33   * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 
34   * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
35   * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36   ********************************************************************************/
37  package junitx.ddtunit;
38  
39  import java.net.URL;
40  
41  import junitx.ddtunit.util.DDTConfiguration;
42  
43  /**
44   * DDTLogger containing all log specific extensions of DDTUnit project
45   * 
46   * @author jg
47   */
48  public final class InternalLogger {
49      private static InternalLogger singleton;
50  
51      /**
52       * Private Constructor for project logger instance
53       *  
54       */
55      private InternalLogger() {
56          URL logURL = this.getClass().getResource(
57              DDTConfiguration.getInstance().getLog4jConfigResource());
58  //        Logger root = Logger.getRootLogger();
59  //        boolean rootIsConfigured = root.getAllAppenders().hasMoreElements();
60  //        if (!rootIsConfigured) {
61  //            Logger.getInstance("junitx.ddtunit").setLevel(Level.OFF);
62  //        }
63          if (logURL != null) {
64  //          try{
65  //            Class.forName("org.apache.log4j.PropertyConfigurator");
66  //            PropertyConfigurator.configure(logURL);
67  //          }catch (Exception ex){
68  //          // just ignore if no log4j found  
69  //          }
70            }
71      }
72  
73      /**
74       * Instanciate project Logger as singleton
75       * 
76       * @return singleton instance
77       */
78      public static InternalLogger getInstance() {
79          if (singleton == null) {
80              singleton = new InternalLogger();
81          }
82          return singleton;
83      }
84  
85  }