ceki        2003/09/02 11:47:48

  Modified:    tests/src/java/org/apache/joran JoranParserTestCase.java
                        SimpleStoreTestCase.java
  Added:       tests/input/joran parser1.xml parser2.xml
  Log:
  
  Joran can now configure loggers and set their levels. (It still cannot 
  configure appenders or attach them to loggers.)
  
  Revision  Changes    Path
  1.2       +23 -3     
jakarta-log4j/tests/src/java/org/apache/joran/JoranParserTestCase.java
  
  Index: JoranParserTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-log4j/tests/src/java/org/apache/joran/JoranParserTestCase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JoranParserTestCase.java  25 Aug 2003 16:14:32 -0000      1.1
  +++ JoranParserTestCase.java  2 Sep 2003 18:47:48 -0000       1.2
  @@ -9,6 +9,13 @@
   import javax.xml.parsers.DocumentBuilder;
   import javax.xml.parsers.DocumentBuilderFactory;
   
  +import org.apache.joran.action.LevelAction;
  +import org.apache.joran.action.LoggerAction;
  +import org.apache.joran.action.RootLoggerAction;
  +import org.apache.log4j.ConsoleAppender;
  +import org.apache.log4j.LogManager;
  +import org.apache.log4j.Logger;
  +import org.apache.log4j.PatternLayout;
   import org.w3c.dom.Document;
   
   import junit.framework.TestCase;
  @@ -21,6 +28,8 @@
    */
   public class JoranParserTestCase extends TestCase {
   
  +   final static Logger logger = Logger.getLogger(JoranParserTestCase.class);  
  +     
        /**
         * Constructor for JoranParserTestCase.
         * @param name
  @@ -34,6 +43,10 @@
         */
        protected void setUp() throws Exception {
                super.setUp();
  +             Logger root = Logger.getRootLogger();
  +                      root.addAppender(
  +                              new ConsoleAppender(
  +                                      new PatternLayout("%r %5p [%t] %c{2} - 
%m%n")));
        }
   
        /*
  @@ -41,10 +54,11 @@
         */
        protected void tearDown() throws Exception {
                super.tearDown();
  +             LogManager.shutdown();
        }
   
     public void testLoop() throws Exception {
  -     System.out.println("Starting testLoop");
  +     logger.debug("Starting testLoop");
   
         DocumentBuilderFactory dbf = null;
   
  @@ -55,8 +69,14 @@
      //inputSource.setSystemId("dummy://log4j.dtd");
   
           Document doc = docBuilder.parse("file:input/joran/parser1.xml");
  -        
  -        JoranParser jp = new JoranParser(null);
  +        RuleStore rs = new SimpleRuleStore();
  +        logger.debug("pattern: "+new Pattern("log4j:configuration/logger"));
  +        rs.addRule(new Pattern("log4j:configuration/logger"), new LoggerAction());
  +              rs.addRule(new Pattern("log4j:configuration/logger/level"), new 
LevelAction());
  +              rs.addRule(new Pattern("log4j:configuration/root"), new 
RootLoggerAction());
  +        JoranParser jp = new JoranParser(rs);
  +              ExecutionContext ec = jp.getExecutionContext();
  +              ec.pushObject(LogManager.getLoggerRepository());
           jp.parse(doc);
     }
   
  
  
  
  1.3       +16 -17    
jakarta-log4j/tests/src/java/org/apache/joran/SimpleStoreTestCase.java
  
  Index: SimpleStoreTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-log4j/tests/src/java/org/apache/joran/SimpleStoreTestCase.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- SimpleStoreTestCase.java  25 Aug 2003 16:17:59 -0000      1.2
  +++ SimpleStoreTestCase.java  2 Sep 2003 18:47:48 -0000       1.3
  @@ -55,6 +55,7 @@
    */
   package org.apache.joran;
   
  +import org.apache.joran.action.Action;
   import junit.framework.TestCase;
   
   import org.w3c.dom.Document;
  @@ -186,35 +187,33 @@
     }
   
     class XAction extends Action {
  -    public void begin(Element e) {
  +    public void begin(ExecutionContext ec, Element e) {
       }
   
  -    public void end(Element e) {
  +    public void end(ExecutionContext ec, Element e) {
       }
   
  -    public void finish() {
  +    public void finish(ExecutionContext ec) {
       }
     }
   
     class YAction extends Action {
  -    public void begin(Element e) {
  -    }
  +             public void begin(ExecutionContext ec, Element e) {
  +             }
   
  -    public void end(Element e) {
  -    }
  +             public void end(ExecutionContext ec, Element e) {
  +             }
   
  -    public void finish() {
  -    }
  -  }
  +             public void finish(ExecutionContext ec) {
  +             }  }
   
     class ZAction extends Action {
  -    public void begin(Element e) {
  -    }
  +             public void begin(ExecutionContext ec, Element e) {
  +             }
   
  -    public void end(Element e) {
  -    }
  +             public void end(ExecutionContext ec, Element e) {
  +             }
   
  -    public void finish() {
  -    }
  -  }
  +             public void finish(ExecutionContext ec) {
  +             }  }
   }
  
  
  
  1.1                  jakarta-log4j/tests/input/joran/parser1.xml
  
  Index: parser1.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8" ?>
  <!DOCTYPE log4j:configuration>
  
  <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";>
  
    <logger>
      <level value ="debug" />
      <appender-ref ref="A1" />
    </logger>
    
     <logger name="asd">
      <level value ="debug" />
      <appender-ref ref="A1" />
    </logger>
      
    <root>
      <level value ="debug" />
      <appender-ref ref="A1" />
    </root>
    
  </log4j:configuration>
  
  
  
  1.1                  jakarta-log4j/tests/input/joran/parser2.xml
  
  Index: parser2.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8" ?>
  <!DOCTYPE log4j:configuration>
  
  <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";>
  
    <appender name="A1" class="org.apache.log4j.FileAppender">
      asdfasdf
      <param name="File"   value="output/temp.A1" />
      <param name="Append" value="false" />         
      asdfasdf
      <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%-5p %c{2} - %m%n"/>
      </layout>     
    </appender>
    
    
    <logger>
      <level value ="debug" />
      <appender-ref ref="A1" />
    </logger>
    
     <logger name="asd">
      <level value ="debug" />
      <appender-ref ref="A1" />
    </logger>
      
    <root>
      <level value ="debug" />
      <appender-ref ref="A1" />
    </root>
    
  </log4j:configuration>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to