This is an automated email from the ASF dual-hosted git repository.

grobmeier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-chainsaw.git


The following commit(s) were added to refs/heads/master by this push:
     new a10def5  tidying up, making use of generics
a10def5 is described below

commit a10def54f5cf1d9d75e6a4a7b6938299d063e2d9
Author: Christian Grobmeier <[email protected]>
AuthorDate: Tue Dec 19 22:24:48 2023 +0100

    tidying up, making use of generics
---
 .../chainsaw/ChainsawCyclicBufferTableModel.java   | 125 ++++++++-------------
 .../org/apache/log4j/chainsaw/LoggerNameModel.java |   2 +-
 .../log4j/chainsaw/LoggerNameModelSupport.java     |   2 +-
 3 files changed, 47 insertions(+), 82 deletions(-)

diff --git 
a/src/main/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java 
b/src/main/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java
index 00b8fe9..74ad49d 100644
--- 
a/src/main/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java
+++ 
b/src/main/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java
@@ -55,9 +55,9 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     private boolean cyclic = true;
     private final int cyclicBufferSize;
     //original list of LoggingEventWrapper instances
-    private List unfilteredList;
+    private List<LoggingEventWrapper> unfilteredList;
     //filtered list of LoggingEventWrapper instances
-    private List filteredList;
+    private List<LoggingEventWrapper> filteredList;
     private boolean currentSortAscending;
     private int currentSortColumn;
     private final EventListenerList eventListenerList = new 
EventListenerList();
@@ -109,14 +109,12 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     @Override
     public List<LoggingEventWrapper> getMatchingEvents(Rule rule) {
         List<LoggingEventWrapper> list = new ArrayList<>();
-        List unfilteredCopy;
+        List<LoggingEventWrapper> unfilteredCopy;
         synchronized (mutex) {
-            unfilteredCopy = new ArrayList(unfilteredList);
+            unfilteredCopy = new ArrayList<>(unfilteredList);
         }
 
-        for (Object anUnfilteredCopy : unfilteredCopy) {
-            LoggingEventWrapper loggingEventWrapper = (LoggingEventWrapper) 
anUnfilteredCopy;
-
+        for (LoggingEventWrapper loggingEventWrapper : unfilteredCopy) {
             if (rule.evaluate(loggingEventWrapper.getLoggingEvent(), null)) {
                 list.add(loggingEventWrapper);
             }
@@ -136,18 +134,17 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             filteredList.clear();
             if (ruleMediator == null) {
                 LoggingEventWrapper lastEvent = null;
-                for (Object anUnfilteredList : unfilteredList) {
-                    LoggingEventWrapper loggingEventWrapper = 
(LoggingEventWrapper) anUnfilteredList;
+                for (LoggingEventWrapper loggingEventWrapper : unfilteredList) 
{
                     loggingEventWrapper.setDisplayed(true);
                     updateEventMillisDelta(loggingEventWrapper, lastEvent);
                     filteredList.add(loggingEventWrapper);
                     lastEvent = loggingEventWrapper;
                 }
             } else {
-                Iterator iter = unfilteredList.iterator();
+                Iterator<LoggingEventWrapper> iter = unfilteredList.iterator();
                 LoggingEventWrapper lastEvent = null;
                 while (iter.hasNext()) {
-                    LoggingEventWrapper loggingEventWrapper = 
(LoggingEventWrapper) iter.next();
+                    LoggingEventWrapper loggingEventWrapper = iter.next();
 
                     if 
(ruleMediator.evaluate(loggingEventWrapper.getLoggingEvent(), null)) {
                         loggingEventWrapper.setDisplayed(true);
@@ -190,31 +187,31 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
     @Override
     public int locate(Rule rule, int startLocation, boolean searchForward) {
-        List filteredListCopy;
+        List<LoggingEventWrapper> filteredListCopy;
         synchronized (mutex) {
-            filteredListCopy = new ArrayList(filteredList);
+            filteredListCopy = new ArrayList<>(filteredList);
         }
         if (searchForward) {
             for (int i = startLocation; i < filteredListCopy.size(); i++) {
-                if (rule.evaluate(((LoggingEventWrapper) 
filteredListCopy.get(i)).getLoggingEvent(), null)) {
+                if (rule.evaluate((filteredListCopy.get(i)).getLoggingEvent(), 
null)) {
                     return i;
                 }
             }
             //if there was no match, start at row zero and go to startLocation
             for (int i = 0; i < startLocation; i++) {
-                if (rule.evaluate(((LoggingEventWrapper) 
filteredListCopy.get(i)).getLoggingEvent(), null)) {
+                if (rule.evaluate((filteredListCopy.get(i)).getLoggingEvent(), 
null)) {
                     return i;
                 }
             }
         } else {
             for (int i = startLocation; i > -1; i--) {
-                if (rule.evaluate(((LoggingEventWrapper) 
filteredListCopy.get(i)).getLoggingEvent(), null)) {
+                if (rule.evaluate((filteredListCopy.get(i)).getLoggingEvent(), 
null)) {
                     return i;
                 }
             }
             //if there was no match, start at row list.size() - 1 and go to 
startLocation
             for (int i = filteredListCopy.size() - 1; i > startLocation; i--) {
-                if (rule.evaluate(((LoggingEventWrapper) 
filteredListCopy.get(i)).getLoggingEvent(), null)) {
+                if (rule.evaluate((filteredListCopy.get(i)).getLoggingEvent(), 
null)) {
                     return i;
                 }
             }
@@ -223,18 +220,11 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
         return -1;
     }
 
-    /**
-     * @param l
-     */
     @Override
     public void removeLoggerNameListener(LoggerNameListener l) {
         loggerNameModelDelegate.removeLoggerNameListener(l);
     }
 
-    /**
-     * @param loggerName
-     * @return
-     */
     @Override
     public boolean addLoggerName(String loggerName) {
         return loggerNameModelDelegate.addLoggerName(loggerName);
@@ -242,9 +232,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
     @Override
     public String toString() {
-        return "ChainsawCyclicBufferTableModel{" +
-            "name='" + tableModelName + '\'' +
-            '}';
+        return "ChainsawCyclicBufferTableModel{name='" + tableModelName + '\'' 
+ '}';
     }
 
     @Override
@@ -252,19 +240,13 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
         loggerNameModelDelegate.reset();
     }
 
-    /**
-     * @param l
-     */
     @Override
     public void addLoggerNameListener(LoggerNameListener l) {
         loggerNameModelDelegate.addLoggerNameListener(l);
     }
 
-    /**
-     * @return
-     */
     @Override
-    public Collection getLoggerNames() {
+    public Collection<String> getLoggerNames() {
         return loggerNameModelDelegate.getLoggerNames();
     }
 
@@ -328,8 +310,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             if (sort) {
                 //reset display (used to ensure row height is updated)
                 LoggingEventWrapper lastEvent = null;
-                for (Object aFilteredList : filteredList) {
-                    LoggingEventWrapper e = (LoggingEventWrapper) 
aFilteredList;
+                for (LoggingEventWrapper e : filteredList) {
                     e.setDisplayed(true);
                     updateEventMillisDelta(e, lastEvent);
                     lastEvent = e;
@@ -378,14 +359,14 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     }
 
     @Override
-    public List getAllEvents() {
+    public List<LoggingEventWrapper> getAllEvents() {
         synchronized (mutex) {
-            return new ArrayList(unfilteredList);
+            return new ArrayList<>(unfilteredList);
         }
     }
 
     @Override
-    public List getFilteredEvents() {
+    public List<LoggingEventWrapper> getFilteredEvents() {
 
         synchronized (mutex) {
             return new ArrayList(filteredList);
@@ -402,22 +383,21 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     @Override
     public void removePropertyFromEvents(String propName) {
         //first remove the event from any displayed events, so we can fire row 
updated event
-        List filteredListCopy;
-        List unfilteredListCopy;
+        List<LoggingEventWrapper> filteredListCopy;
+        List<LoggingEventWrapper> unfilteredListCopy;
         synchronized (mutex) {
-            filteredListCopy = new ArrayList(filteredList);
-            unfilteredListCopy = new ArrayList(unfilteredList);
+            filteredListCopy = new ArrayList<>(filteredList);
+            unfilteredListCopy = new ArrayList<>(unfilteredList);
         }
         for (int i = 0; i < filteredListCopy.size(); i++) {
-            LoggingEventWrapper loggingEventWrapper = (LoggingEventWrapper) 
filteredListCopy.get(i);
+            LoggingEventWrapper loggingEventWrapper = filteredListCopy.get(i);
             Object result = loggingEventWrapper.removeProperty(propName);
             if (result != null) {
                 fireRowUpdated(i, false);
             }
         }
         //now remove the event from all events
-        for (Object anUnfilteredListCopy : unfilteredListCopy) {
-            LoggingEventWrapper loggingEventWrapper = (LoggingEventWrapper) 
anUnfilteredListCopy;
+        for (LoggingEventWrapper loggingEventWrapper : unfilteredListCopy) {
             loggingEventWrapper.removeProperty(propName);
         }
     }
@@ -425,12 +405,11 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     @Override
     public int updateEventsWithFindRule(Rule findRule) {
         int count = 0;
-        List unfilteredListCopy;
+        List<LoggingEventWrapper> unfilteredListCopy;
         synchronized (mutex) {
-            unfilteredListCopy = new ArrayList(unfilteredList);
+            unfilteredListCopy = new ArrayList<>(unfilteredList);
         }
-        for (Object anUnfilteredListCopy : unfilteredListCopy) {
-            LoggingEventWrapper loggingEventWrapper = (LoggingEventWrapper) 
anUnfilteredListCopy;
+        for (LoggingEventWrapper loggingEventWrapper : unfilteredListCopy) {
             loggingEventWrapper.evaluateSearchRule(findRule);
             //return the count of visible search matches
             if (loggingEventWrapper.isSearchMatch() && 
loggingEventWrapper.isDisplayed()) {
@@ -442,13 +421,13 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
     @Override
     public int findColoredRow(int startLocation, boolean searchForward) {
-        List filteredListCopy;
+        List<LoggingEventWrapper> filteredListCopy;
         synchronized (mutex) {
-            filteredListCopy = new ArrayList(filteredList);
+            filteredListCopy = new ArrayList<>(filteredList);
         }
         if (searchForward) {
             for (int i = startLocation; i < filteredListCopy.size(); i++) {
-                LoggingEventWrapper event = (LoggingEventWrapper) 
filteredListCopy.get(i);
+                LoggingEventWrapper event = filteredListCopy.get(i);
                 if 
(!event.getColorRuleBackground().equals(ChainsawConstants.COLOR_DEFAULT_BACKGROUND)
 ||
                     
!event.getColorRuleForeground().equals(ChainsawConstants.COLOR_DEFAULT_FOREGROUND))
 {
                     return i;
@@ -456,7 +435,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             }
             //searching forward, no colorized event was found - now start at 
row zero and go to startLocation
             for (int i = 0; i < startLocation; i++) {
-                LoggingEventWrapper event = (LoggingEventWrapper) 
filteredListCopy.get(i);
+                LoggingEventWrapper event = filteredListCopy.get(i);
                 if 
(!event.getColorRuleBackground().equals(ChainsawConstants.COLOR_DEFAULT_BACKGROUND)
 ||
                     
!event.getColorRuleForeground().equals(ChainsawConstants.COLOR_DEFAULT_FOREGROUND))
 {
                     return i;
@@ -464,7 +443,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             }
         } else {
             for (int i = startLocation; i > -1; i--) {
-                LoggingEventWrapper event = (LoggingEventWrapper) 
filteredListCopy.get(i);
+                LoggingEventWrapper event = filteredListCopy.get(i);
                 if 
(!event.getColorRuleBackground().equals(ChainsawConstants.COLOR_DEFAULT_BACKGROUND)
 ||
                     
!event.getColorRuleForeground().equals(ChainsawConstants.COLOR_DEFAULT_FOREGROUND))
 {
                     return i;
@@ -472,7 +451,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             }
             //searching backward, no colorized event was found - now start at 
list.size() - 1 and go to startLocation
             for (int i = filteredListCopy.size() - 1; i > startLocation; i--) {
-                LoggingEventWrapper event = (LoggingEventWrapper) 
filteredListCopy.get(i);
+                LoggingEventWrapper event = filteredListCopy.get(i);
                 if 
(!event.getColorRuleBackground().equals(ChainsawConstants.COLOR_DEFAULT_BACKGROUND)
 ||
                     
!event.getColorRuleForeground().equals(ChainsawConstants.COLOR_DEFAULT_FOREGROUND))
 {
                     return i;
@@ -487,8 +466,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     public int getSearchMatchCount() {
         int searchMatchCount = 0;
         synchronized (mutex) {
-            for (Object aFilteredList : filteredList) {
-                LoggingEventWrapper wrapper = (LoggingEventWrapper) 
aFilteredList;
+            for (LoggingEventWrapper wrapper : filteredList) {
                 if (wrapper.isSearchMatch() && wrapper.isDisplayed()) {
                     searchMatchCount++;
                 }
@@ -511,7 +489,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
     public LoggingEventWrapper getRow(int row) {
         synchronized (mutex) {
             if (row < filteredList.size() && row > -1) {
-                return (LoggingEventWrapper) filteredList.get(row);
+                return filteredList.get(row);
             }
         }
 
@@ -531,7 +509,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
         synchronized (mutex) {
             if (rowIndex < filteredList.size() && rowIndex > -1) {
-                event = ((LoggingEventWrapper) 
filteredList.get(rowIndex)).getLoggingEvent();
+                event = (filteredList.get(rowIndex)).getLoggingEvent();
             }
         }
 
@@ -539,19 +517,10 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             return null;
         }
 
-        LocationInfo info = event.m_locationInfo;
-
         switch (columnIndex + 1) {
             case ChainsawColumns.INDEX_ID_COL_NAME:
-
                 Object id = event.getProperty(Constants.LOG4J_ID_KEY);
-
-                if (id != null) {
-                    return id;
-                }
-
-                return rowIndex;
-
+                return Objects.requireNonNullElse(id, rowIndex);
             case ChainsawColumns.INDEX_LEVEL_COL_NAME:
                 return event.m_level;
 
@@ -635,7 +604,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
         boolean rowAdded = false;
 
-        /**
+        /*
          * If we're in cyclic mode and over budget on the size, the addition 
of a new event will
          * cause the oldest event to fall off the cliff. We need to remove 
that events ID from the
          * Set so we are not keeping track of IDs for all events ever received 
(we'd run out of
@@ -651,7 +620,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
             int unfilteredSize = unfilteredList.size();
             LoggingEventWrapper lastLoggingEventWrapper = null;
             if (unfilteredSize > 0) {
-                lastLoggingEventWrapper = (LoggingEventWrapper) 
unfilteredList.get(unfilteredSize - 1);
+                lastLoggingEventWrapper = unfilteredList.get(unfilteredSize - 
1);
             }
             unfilteredList.add(loggingEventWrapper);
             if ((ruleMediator == null) || 
(ruleMediator.evaluate(loggingEventWrapper.getLoggingEvent(), null))) {
@@ -695,7 +664,7 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
                 //add all keys except the 'log4jid' key (columnNames is 
all-caps)
                 if (!columnNames.contains(key) && 
!(Constants.LOG4J_ID_KEY.equalsIgnoreCase(key))) {
                     columnNames.add(key);
-                    logger.debug("Adding col '" + key + "', columnNames=" + 
columnNames);
+                    logger.debug("Adding col '{}', columnNames={}" ,key, 
columnNames);
                     fireNewKeyColumnAdded(
                         new NewKeyEvent(
                             this, columnNames.indexOf(key), key, 
loggingEventWrapper.getLoggingEvent().getProperty(key)));
@@ -746,9 +715,6 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
         }
     }
 
-    /**
-     * @param e
-     */
     private void fireNewKeyColumnAdded(NewKeyEvent e) {
         NewKeyListener[] listeners =
             eventListenerList.getListeners(NewKeyListener.class);
@@ -758,9 +724,6 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
         }
     }
 
-    /**
-     * @return
-     */
     @Override
     public int getMaxSize() {
         return cyclicBufferSize;
@@ -887,7 +850,9 @@ public class ChainsawCyclicBufferTableModel extends 
AbstractTableModel
 
                             monitor.setProgress(index++);
                         } finally {
-                            monitor.close();
+                            if (monitor != null) {
+                                monitor.close();
+                            }
                         }
 
                         logger.debug("Model Change completed");
diff --git a/src/main/java/org/apache/log4j/chainsaw/LoggerNameModel.java 
b/src/main/java/org/apache/log4j/chainsaw/LoggerNameModel.java
index df53d75..a48b634 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LoggerNameModel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LoggerNameModel.java
@@ -36,7 +36,7 @@ public interface LoggerNameModel {
      *
      * @return unmodifiable Collection of Logger name Strings
      */
-    Collection getLoggerNames();
+    Collection<String> getLoggerNames();
 
     /**
      * Attempts to add the loggerName to the model, and returns
diff --git 
a/src/main/java/org/apache/log4j/chainsaw/LoggerNameModelSupport.java 
b/src/main/java/org/apache/log4j/chainsaw/LoggerNameModelSupport.java
index 8e795e2..815e047 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LoggerNameModelSupport.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LoggerNameModelSupport.java
@@ -40,7 +40,7 @@ public class LoggerNameModelSupport implements 
LoggerNameModel {
     /* (non-Javadoc)
      * @see org.apache.log4j.chainsaw.LoggerNameModel#getLoggerNames()
      */
-    public Collection getLoggerNames() {
+    public Collection<String> getLoggerNames() {
         return Collections.unmodifiableSet(loggerNameSet);
     }
 

Reply via email to