You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by sd...@apache.org on 2003/05/02 06:19:28 UTC

cvs commit: jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw TableColorizingRenderer.java ChainsawAppenderHandler.java ChainsawConstants.java DefaultSortTableModel.java DisplayFilter.java

sdeboy      2003/05/01 21:19:27

  Modified:    src/java/org/apache/log4j/chainsaw
                        TableColorizingRenderer.java
                        ChainsawAppenderHandler.java ChainsawConstants.java
                        DefaultSortTableModel.java DisplayFilter.java
  Log:
  Removed use of deprecated date constructor.  Added ID field as property during return of events for save, reuse ID if found as property (makes events identical from save/load, including ID)
  
  Revision  Changes    Path
  1.2       +2 -1      jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/TableColorizingRenderer.java
  
  Index: TableColorizingRenderer.java
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/TableColorizingRenderer.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TableColorizingRenderer.java	28 Apr 2003 05:44:31 -0000	1.1
  +++ TableColorizingRenderer.java	2 May 2003 04:19:26 -0000	1.2
  @@ -53,6 +53,7 @@
   import java.awt.Component;
   
   import java.text.DateFormat;
  +import java.text.SimpleDateFormat;
   
   import java.util.Date;
   import java.util.Vector;
  @@ -71,7 +72,7 @@
   public class TableColorizingRenderer extends DefaultTableCellRenderer
     implements FilterChangedListener {
     private static final DateFormat DATE_FORMATTER =
  -    DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM);
  +    new SimpleDateFormat(ChainsawConstants.DATETIME_FORMAT);
     private ColorFilter colorFilter;
     private JTable table;
     private Color background = new Color(255, 255, 254);
  
  
  
  1.4       +2 -2      jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java
  
  Index: ChainsawAppenderHandler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- ChainsawAppenderHandler.java	30 Apr 2003 08:44:50 -0000	1.3
  +++ ChainsawAppenderHandler.java	2 May 2003 04:19:26 -0000	1.4
  @@ -145,7 +145,7 @@
   
       while (iter.hasNext()) {
         if (MDC.length() != 0) {
  -        MDC.append(", ");
  +        MDC.append(",");
         }
   
         String propName = (String) iter.next();
  @@ -164,7 +164,7 @@
   
         while (iter2.hasNext()) {
           if (prop.length() != 0) {
  -          prop.append(", ");
  +          prop.append(",");
           }
   
           String propName = (String) iter2.next();
  
  
  
  1.2       +3 -0      jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawConstants.java
  
  Index: ChainsawConstants.java
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawConstants.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ChainsawConstants.java	1 May 2003 02:37:24 -0000	1.1
  +++ ChainsawConstants.java	2 May 2003 04:19:26 -0000	1.2
  @@ -42,7 +42,10 @@
     static final String FATAL_LEVEL = "FATAL";
     static final String LOG4J_APP_KEY = "log4japp";
     static final String LOG4J_MACHINE_KEY = "log4jmachinename";
  +  static final String LOG4J_ID_KEY = "log4jid";
     static final String UNKNOWN_TAB_NAME = "Unknown";
     static final String GLOBAL_MATCH = "*";
     static final String DETAIL_CONTENT_TYPE = "text/html";
  +  
  +  static final String DATETIME_FORMAT = "EEE MMM dd HH:mm:ss z yyyy";
   }
  
  
  
  1.3       +46 -4     jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/DefaultSortTableModel.java
  
  Index: DefaultSortTableModel.java
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/DefaultSortTableModel.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultSortTableModel.java	1 May 2003 04:50:25 -0000	1.2
  +++ DefaultSortTableModel.java	2 May 2003 04:19:26 -0000	1.3
  @@ -49,6 +49,9 @@
   
   package org.apache.log4j.chainsaw;
   
  +import java.text.DateFormat;
  +import java.text.ParseException;
  +import java.text.SimpleDateFormat;
   import java.util.Collections;
   import java.util.Date;
   import java.util.HashMap;
  @@ -79,7 +82,9 @@
     private boolean currentSortAscending;
     private boolean sortEnabled;
     private DisplayFilter displayFilter;
  -
  +  private static final DateFormat DATE_FORMATTER =
  +    new SimpleDateFormat(ChainsawConstants.DATETIME_FORMAT);
  +    
     //a map of events keyed on ID (order received)
     private HashMap unfilteredEvents = new HashMap();
     private Vector allColumnNames;
  @@ -351,6 +356,7 @@
       String fileName = "";
       String lineNumber = "";
       Hashtable properties = null;
  +    boolean hadIDProperty=false;
   
   	String value=null;
       while (iter.hasNext()) {
  @@ -362,8 +368,14 @@
   	      logger = Logger.getLogger(value);
         }
         if (column.equalsIgnoreCase(ChainsawConstants.TIMESTAMP_COL_NAME)) {      
  -	      timeStamp = new Date(value).getTime();
  +      	try {
  +		  timeStamp = DATE_FORMATTER.parse(value).getTime();
  +      	} catch (ParseException pe) {
  +      		pe.printStackTrace();
  +      		//ignore...leave as 0L
  +      	}
         }
  +
         if (column.equalsIgnoreCase(ChainsawConstants.LEVEL_COL_NAME)) {      
   	      level=Level.toLevel(value);
         }
  @@ -405,10 +417,18 @@
         	StringTokenizer t=new StringTokenizer(value, ",");
         	while (t.hasMoreElements()) {
   			StringTokenizer t2=new StringTokenizer(t.nextToken(), "=");
  -      		properties.put(t2.nextToken(), t2.nextToken());
  +			String propertyName=t2.nextToken();
  +			if (propertyName.equalsIgnoreCase(ChainsawConstants.LOG4J_ID_KEY)) {
  +				hadIDProperty=true;
  +			}
  +      		properties.put(propertyName, t2.nextToken());
         	}
         }
       }
  +    //if log4jid property did not exist, set it (will be used during reconstruction)
  +    if (!hadIDProperty) {
  +    	properties.put(ChainsawConstants.LOG4J_ID_KEY, ID.toString());
  +    }
   	return new LoggingEvent(logger.getName(), logger, timeStamp, level, threadName, message, ndc, mdc,
           exception, className, methodName, fileName, lineNumber, properties);
     }
  @@ -416,7 +436,29 @@
     public boolean isAddRow(Vector v) {
       synchronized (getDataVector()) {
         //set the last field to the 'unfilteredevents size + 1 - an ID based on reception order
  -      Integer thisInt = new Integer(unfilteredEvents.size() + 1);
  +      int propertiesIndex=allColumnNames.indexOf(ChainsawConstants.PROPERTIES_COL_NAME);
  +      String props=(String)v.get(propertiesIndex);
  +      Integer thisInt=null;
  +      if (props.indexOf(ChainsawConstants.LOG4J_ID_KEY) > -1) {
  +      	StringBuffer newProps=new StringBuffer();
  +      	StringTokenizer t=new StringTokenizer(props, ",");
  +      	while (t.hasMoreElements()) {
  +			StringTokenizer t2=new StringTokenizer(t.nextToken(), "=");
  +			String propertyName=t2.nextToken();
  +			if (propertyName.equalsIgnoreCase(ChainsawConstants.LOG4J_ID_KEY)) {
  +				thisInt=new Integer(t2.nextToken());
  +			} else {
  +				newProps.append(propertyName);
  +				newProps.append("=");
  +				newProps.append(t2.nextToken());
  +			}
  +      	}
  +      	//strip off the ID property - not needed now that it's reloaded
  +      	v.set(propertiesIndex, newProps.toString());
  +      }
  +      if (thisInt==null) {
  +      	thisInt = new Integer(unfilteredEvents.size() + 1);
  +      }
         v.add(thisInt);
         unfilteredEvents.put(thisInt, v);
   
  
  
  
  1.3       +4 -4      jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/DisplayFilter.java
  
  Index: DisplayFilter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/DisplayFilter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DisplayFilter.java	29 Apr 2003 16:21:29 -0000	1.2
  +++ DisplayFilter.java	2 May 2003 04:19:26 -0000	1.3
  @@ -53,6 +53,7 @@
   import java.io.Serializable;
   
   import java.text.DateFormat;
  +import java.text.SimpleDateFormat;
   
   import java.util.Collection;
   import java.util.Date;
  @@ -70,9 +71,8 @@
    * @author Scott Deboy <sd...@apache.org>
    */
   public class DisplayFilter implements Serializable {
  -  private static final String LEVEL_COL_NAME = "Level";
     private static final DateFormat DATE_FORMATTER =
  -    DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM);
  +    new SimpleDateFormat(ChainsawConstants.DATETIME_FORMAT);
     private transient Vector filterListeners = new Vector();
     private transient Vector filters = new Vector();
     private transient DisplayFilterEntry customFilter;
  @@ -111,7 +111,7 @@
           customFilter.matches(
               customFilter.getColumnName(),
               formatField(v.get(colNames.indexOf(customFilter.getColumnName())))
  -                .toString(), (String) v.get(colNames.indexOf(LEVEL_COL_NAME)))) {
  +                .toString(), (String) v.get(colNames.indexOf(ChainsawConstants.LEVEL_COL_NAME)))) {
           passesCustomFilter = customFilter.getDisplay().booleanValue();
         } else {
           passesCustomFilter = false;
  @@ -134,7 +134,7 @@
             entry.matches(
                 entry.getColumnName(),
                 (String) v.get(colNames.indexOf(entry.getColumnName())),
  -              (String) v.get(colNames.indexOf(LEVEL_COL_NAME)))) {
  +              (String) v.get(colNames.indexOf(ChainsawConstants.LEVEL_COL_NAME)))) {
             return passesCustomFilter && entry.getDisplay().booleanValue();
           }
         }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: log4j-dev-help@jakarta.apache.org