ceki 01/06/26 12:53:42 Added: src/java/org/apache/log4j/test FQCNTest.java fqcn src/java/org/apache/log4j/test/witness fqcn.1 Log: Added test on the extraction of caller info from subclasses of Category. Revision Changes Path 1.1 jakarta-log4j/src/java/org/apache/log4j/test/FQCNTest.java Index: FQCNTest.java =================================================================== /* Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software License * version 1.1, a copy of which has been included with this distribution in * the LICENSE.APL file. */ package org.apache.log4j.test; import org.apache.log4j.*; import org.apache.log4j.spi.*; //import org.apache.log4j.xml.examples.XPriority; /** This class is a shallow test of the various appenders and layouts. It also tests their reading of the configuration file. @author Ceki Gülcü */ public class FQCNTest { static Category cat = Category.getInstance("dddd"); public static void main(String argv[]) throws Exception { if(argv.length == 1) init(argv[0]); else usage("Wrong number of arguments."); test(); } static void usage(String msg) { System.err.println(msg); System.err.println( "Usage: java "+ FQCNTest.class.getName()+"outputFile"); System.exit(1); } static void init(String file) throws Exception { Layout layout = new PatternLayout("%p %c (%C{2}#%M) - %m%n"); FileAppender appender = new FileAppender(layout, file, false); appender.setLayout(layout); Category root = Category.getRoot(); root.addAppender(appender); } static void test() { X1Category x1 = X1Category.getLogger("x1"); x1.debug("hello"); x1.debug1("hello"); x1.debug2("hello"); } } // ========================================================================== // ========================================================================== // ========================================================================== class X1Category extends Category { static String FQCN = X1Category.class.getName() + "."; private static X1CategoryFactory factory = new X1CategoryFactory(); public X1Category(String name) { super(name); } public void debug1(Object message) { super.log(FQCN, Priority.DEBUG, message + " world.", null); } public void debug2(Object message) { super.log(FQCN, Priority.DEBUG, message, null); } protected String getFQCN() { return X1Category.FQCN; } public static X1Category getLogger(String name) { return ((X1Category) Category.getInstance(name, factory)); } } class X1CategoryFactory implements CategoryFactory { public X1CategoryFactory() { } public Category makeNewCategoryInstance(String name) { return new X1Category(name); } } 1.1 jakarta-log4j/src/java/org/apache/log4j/test/fqcn Index: fqcn =================================================================== #!/bin/bash # A regression test to check the caller localization in subclasses of Category # Read the .functions file . .functions # If set, allows to skip tests declare -i start=$1 echo "start=$start TEMP=$TEMP OUTPUT=$OUTPUT" function testFQCN { layout=$1 echo -n "FQCN test $TEST - " java org.apache.log4j.test.FQCNTest $OUTPUT check witness/fqcn.$TEST $OUTPUT; echo "OK." } declare -i TEST TEST=1 if [ $TEST -ge $start ]; then testFQCN fi 1.1 jakarta-log4j/src/java/org/apache/log4j/test/witness/fqcn.1 Index: fqcn.1 =================================================================== DEBUG x1 (test.FQCNTest#test) - hello DEBUG x1 (test.FQCNTest#test) - hello world. DEBUG x1 (test.FQCNTest#test) - hello --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]