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 }