r500384 | eross | 2007-01-26 16:22:41 -0600 (Fri, 26 Jan 2007) | 1 line

Bug 17531 - Add "log4j.reset" to property configurator as well as XML/ Joran one

Index: src/java/org/apache/log4j/PropertyConfigurator.java
===================================================================
98a99,103
>   /**
>    * Makes log4j reset the configuration by setting it to true.
>    */
>   static final String RESET_KEY = "log4j.reset";
>
410c415,416
<     String value = properties.getProperty(DEBUG_KEY);
---
>     String debug = properties.getProperty(DEBUG_KEY);
>     String reset = properties.getProperty(RESET_KEY);
416,417c422,427
<       boolean attachedConsoleApepnder = false;
<       if ((value != null) && OptionConverter.toBoolean(value, true)) {
---
>       if (OptionConverter.toBoolean(reset, false)) {
>         repository.resetConfiguration();
>       }
>
>       boolean attachedConsoleAppender = false;
> if ((debug != null) && OptionConverter.toBoolean(debug, true)) {
419c429
<         attachedConsoleApepnder = true;
---
>         attachedConsoleAppender = true;
445c455
<       if (attachedConsoleApepnder) {
---
>       if (attachedConsoleAppender) {
Index: tests/src/java/org/apache/log4j/xml/ResetTest.java
===================================================================
2a3,4
> import java.util.Properties;
>
5a8
> import org.apache.log4j.PropertyConfigurator;
12,14c15,39
<   public void testNoReset() {
<     test("input/xml/resetTest.xml", true);
<     test("input/xml/defaultInit.xml", false);
---
>   Logger logx;
>
>   protected void setUp() {
>     LogManager.getLoggerRepository().resetConfiguration();
>     initx();
>   }
>
>   public void testResetXml() {
>     test("tests/input/xml/defaultInit.xml", false);
>     test("tests/input/xml/resetTest.xml", true);
>   }
>
>   private void initx() {
>     logx = Logger.getLogger("x");
>     logx.setLevel(Level.ERROR);
>     assertEquals(Level.ERROR, logx.getLevel());
>   }
>
>   public void testResetProps() {
>     Properties p = new Properties();
>     p.put("log4j.rootLogger","DEBUG,C");
>     p.put("log4j.appender.C","org.apache.log4j.ConsoleAppender");
>     p.put("log4j.appender.C","layout=org.apache.log4j.SimpleLayout");
>     testProperties(p, false);
>     testProperties(p, true);
19,23d43
<     LogManager.getLoggerRepository().resetConfiguration();
<     Logger l = Logger.getLogger("x");
<     l.setLevel(Level.ERROR);
<     assertEquals(Level.ERROR, l.getLevel());
<
27c47,62
<       assertEquals(null, l.getLevel());
---
>       assertEquals("reset=" + reset, null, logx.getLevel());
>     else
>       assertEquals(Level.ERROR, logx.getLevel());
>   }
>
>   private void testProperties(Properties p, boolean reset)
>   {
>     if (reset) {
>       p.put("log4j.reset", "true");
>     } else {
>       p.remove("log4j.reset");
>     }
>     System.out.println(" --- test " + p);
>     PropertyConfigurator.configure(p);
>     if (reset)
>       assertEquals("reset=" + reset, null, logx.getLevel());
29c64
<       assertEquals(Level.ERROR, l.getLevel());
---
>       assertEquals(Level.ERROR, logx.getLevel());




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

Reply via email to