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 ps...@apache.org on 2003/05/27 07:49:46 UTC
cvs commit: jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw AbstractChainsawTableModel.java ChainsawCyclicBufferTableModel.java
psmith 2003/05/26 22:49:46
Modified: src/java/org/apache/log4j/chainsaw
AbstractChainsawTableModel.java
ChainsawCyclicBufferTableModel.java
Log:
fixed performance issue where listeners were getting notified
of every single filtered row insert, when it should be taking
advantage of the value is adjusting.
adding a filtered row now does NOT notify all listeners, but is
triggered via the EventCountListener notification method.
Significant performance improvement.
Revision Changes Path
1.4 +5 -0 jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/AbstractChainsawTableModel.java
Index: AbstractChainsawTableModel.java
===================================================================
RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/AbstractChainsawTableModel.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- AbstractChainsawTableModel.java 27 May 2003 05:33:22 -0000 1.3
+++ AbstractChainsawTableModel.java 27 May 2003 05:49:46 -0000 1.4
@@ -56,6 +56,7 @@
import java.util.Vector;
import javax.swing.SwingUtilities;
+import javax.swing.event.TableModelEvent;
import javax.swing.table.AbstractTableModel;
@@ -122,6 +123,10 @@
((EventCountListener) countListeners.get(i)).eventCountChanged(
getRowCount(), getUnfilteredRowCount());
}
+ TableModelEvent event = new TableModelEvent(this);
+
+ fireTableChanged(event);
+
}
public void setCurrentSortColumn(int col, boolean ascending) {
1.5 +1 -6 jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java
Index: ChainsawCyclicBufferTableModel.java
===================================================================
RCS file: /home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ChainsawCyclicBufferTableModel.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ChainsawCyclicBufferTableModel.java 27 May 2003 05:33:22 -0000 1.4
+++ ChainsawCyclicBufferTableModel.java 27 May 2003 05:49:46 -0000 1.5
@@ -86,11 +86,6 @@
synchronized (syncLock) {
filteredList.add(row);
}
-
- fireTableChanged(
- new TableModelEvent(
- this, getRowCount() - 1, getRowCount() - 1, TableModelEvent.ALL_COLUMNS,
- TableModelEvent.INSERT));
}
public void addRow(Vector row) {
@@ -223,7 +218,7 @@
if (
(getDisplayFilter() == null) || (getDisplayFilter().isDisplayed(row))) {
- filteredList.add(row);
+ addFilteredRow(row);
if (isSortEnabled()) {
sort();
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: log4j-dev-help@jakarta.apache.org