sdeboy      2004/11/29 10:50:38

  Modified:    src/java/org/apache/log4j/rule LevelInequalityRule.java
                        LevelEqualsRule.java
  Log:
  building needed list of log4j levels in level rules on deserialization, 
removed serialization of levelInequalityRule (serialization handled by 
inequalityrule)
  
  Revision  Changes    Path
  1.8       +15 -63    
logging-log4j/src/java/org/apache/log4j/rule/LevelInequalityRule.java
  
  Index: LevelInequalityRule.java
  ===================================================================
  RCS file: 
/home/cvs/logging-log4j/src/java/org/apache/log4j/rule/LevelInequalityRule.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- LevelInequalityRule.java  29 Nov 2004 09:18:11 -0000      1.7
  +++ LevelInequalityRule.java  29 Nov 2004 18:50:38 -0000      1.8
  @@ -16,8 +16,6 @@
   
   package org.apache.log4j.rule;
   
  -import java.io.IOException;
  -import java.util.Iterator;
   import java.util.LinkedList;
   import java.util.List;
   
  @@ -32,19 +30,17 @@
    * @author Scott Deboy <[EMAIL PROTECTED]>
    */
   public class LevelInequalityRule {
  -    static final long serialVersionUID = 851854546425717836L;
  -
  -    private transient Level level;
  -
  -    private static List utilList;
  -
       private static List levelList;
   
  -    private transient String inequalitySymbol;
  -
       static {
  +        populateLevels();
  +    }
  +
  +    private LevelInequalityRule() {
  +    }
  +    
  +    private static void populateLevels() {
           levelList = new LinkedList();
  -        utilList = new LinkedList();
   
           levelList.add(Level.FATAL.toString());
           levelList.add(Level.ERROR.toString());
  @@ -52,76 +48,32 @@
           levelList.add(Level.INFO.toString());
           levelList.add(Level.DEBUG.toString());
           levelList.add(Level.TRACE.toString());
  -
  -        Iterator iter = UtilLoggingLevel.getAllPossibleLevels().iterator();
  -
  -        while (iter.hasNext()) {
  -            utilList.add(((UtilLoggingLevel) iter.next()).toString());
  -        }
  -    }
  -
  -    private LevelInequalityRule() {
       }
   
       public static Rule getRule(String inequalitySymbol, String value) {
   
  -        // return new LevelInequalityRule(inequalitySymbol, value);
  -        Level level = null;
  +        Level thisLevel = null;
  +        
           if (levelList.contains(value.toUpperCase())) {
  -            level = Level.toLevel(value.toUpperCase());
  +            thisLevel = Level.toLevel(value.toUpperCase());
           } else {
  -            level = UtilLoggingLevel.toLevel(value.toUpperCase());
  +            thisLevel = UtilLoggingLevel.toLevel(value.toUpperCase());
           }
   
           if ("<".equals(inequalitySymbol)) {
  -            return new LessThanRule(level);
  +            return new LessThanRule(thisLevel);
           }
           if (">".equals(inequalitySymbol)) {
  -            return new GreaterThanRule(level);
  +            return new GreaterThanRule(thisLevel);
           }
           if ("<=".equals(inequalitySymbol)) {
  -            return new LessThanEqualsRule(level);
  +            return new LessThanEqualsRule(thisLevel);
           }
           if (">=".equals(inequalitySymbol)) {
  -            return new GreaterThanEqualsRule(level);
  +            return new GreaterThanEqualsRule(thisLevel);
           }
   
           return null;
  -    }
  -
  -    /**
  -     * Deserialize the state of the object
  -     * 
  -     * @param in
  -     * 
  -     * @throws IOException
  -     * @throws ClassNotFoundException
  -     */
  -    private void readObject(java.io.ObjectInputStream in) throws IOException,
  -            ClassNotFoundException {
  -        utilList = new LinkedList();
  -        levelList = new LinkedList();
  -        inequalitySymbol = (String) in.readObject();
  -        boolean isUtilLogging = in.readBoolean();
  -        int levelInt = in.readInt();
  -        if (isUtilLogging) {
  -            level = UtilLoggingLevel.toLevel(levelInt);
  -        } else {
  -            level = Level.toLevel(levelInt);
  -        }
  -    }
  -
  -    /**
  -     * Serialize the state of the object
  -     * 
  -     * @param out
  -     * 
  -     * @throws IOException
  -     */
  -    private void writeObject(java.io.ObjectOutputStream out) throws 
IOException {
  -        out.writeObject(inequalitySymbol);
  -        out.writeBoolean(level instanceof UtilLoggingLevel);
  -        out.writeInt(level.toInt());
       }
   
       static class LessThanRule extends AbstractRule {
  
  
  
  1.2       +13 -20    
logging-log4j/src/java/org/apache/log4j/rule/LevelEqualsRule.java
  
  Index: LevelEqualsRule.java
  ===================================================================
  RCS file: 
/home/cvs/logging-log4j/src/java/org/apache/log4j/rule/LevelEqualsRule.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- LevelEqualsRule.java      29 Nov 2004 09:18:11 -0000      1.1
  +++ LevelEqualsRule.java      29 Nov 2004 18:50:38 -0000      1.2
  @@ -35,13 +35,18 @@
   
       private transient Level level;
   
  -    private static List utilList = new LinkedList();
  -
       private static List levelList = new LinkedList();
   
       static {
  +        populateLevels();
  +    }
  +    
  +    private LevelEqualsRule(Level level) {
  +        this.level = level;
  +    }
  +
  +    private static void populateLevels() {
           levelList = new LinkedList();
  -        utilList = new LinkedList();
   
           levelList.add(Level.FATAL.toString());
           levelList.add(Level.ERROR.toString());
  @@ -49,28 +54,17 @@
           levelList.add(Level.INFO.toString());
           levelList.add(Level.DEBUG.toString());
           levelList.add(Level.TRACE.toString());
  -
  -        Iterator iter = UtilLoggingLevel.getAllPossibleLevels().iterator();
  -
  -        while (iter.hasNext()) {
  -            utilList.add(((UtilLoggingLevel) iter.next()).toString());
  -        }
  -    }
  -
  -    private LevelEqualsRule(Level level) {
  -        this.level = level;
       }
   
       public static Rule getRule(String value) {
  -        //return new LevelInequalityRule(inequalitySymbol, value);
  -        Level level = null;
  +        Level thisLevel = null;
           if (levelList.contains(value.toUpperCase())) {
  -            level = Level.toLevel(value.toUpperCase());
  +            thisLevel = Level.toLevel(value.toUpperCase());
             } else {
  -            level = UtilLoggingLevel.toLevel(value.toUpperCase());
  +              thisLevel = UtilLoggingLevel.toLevel(value.toUpperCase());
             }
   
  -        return new LevelEqualsRule(level);
  +        return new LevelEqualsRule(thisLevel);
       }
   
       public boolean evaluate(LoggingEvent event) {
  @@ -85,8 +79,7 @@
        * @throws IOException
        */
       private void readObject(java.io.ObjectInputStream in) throws IOException 
{
  -        utilList = new LinkedList();
  -        levelList = new LinkedList();
  +        populateLevels();
           boolean isUtilLogging = in.readBoolean();
           int levelInt = in.readInt();
           if (isUtilLogging) {
  
  
  

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

Reply via email to