Skip to content
Snippets Groups Projects
Unverified Commit 9886bd32 authored by Luca Keidel's avatar Luca Keidel
Browse files

Improved logging model performance

parent 1fa683f5
No related branches found
No related tags found
1 merge request!5Configuration system
......@@ -14,8 +14,7 @@ public class FilteredLogModel extends AbstractListModel<LogMessage> {
public FilteredLogModel() {
super();
this.
log = new ArrayList<>();
this.log = new ArrayList<>();
filteredLog = new ArrayList<>();
}
......@@ -32,9 +31,7 @@ public class FilteredLogModel extends AbstractListModel<LogMessage> {
private void refilter() {
filteredLog.clear();
for (LogMessage msg : log) {
if (!filterTransactions
|| (msg.getContext() == LogMessage.Context.TRANSACTION_SUCCESS
|| msg.getContext() == LogMessage.Context.TRANSACTION_FAIL)) {
if (matchesFilter(msg)) {
filteredLog.add(msg);
}
......@@ -42,6 +39,12 @@ public class FilteredLogModel extends AbstractListModel<LogMessage> {
fireContentsChanged(this, 0, getSize()-1);
}
private boolean matchesFilter(LogMessage msg){
return !filterTransactions
|| (msg.getContext() == LogMessage.Context.TRANSACTION_SUCCESS
|| msg.getContext() == LogMessage.Context.TRANSACTION_FAIL);
}
@Override
public int getSize() {
return filteredLog.size();
......@@ -54,7 +57,13 @@ public class FilteredLogModel extends AbstractListModel<LogMessage> {
public void addElement(LogMessage message) {
log.add(message);
refilter();
if(matchesFilter(message)){
filteredLog.add(message);
int index = getSize() - 1;
fireIntervalAdded(this, index, index);
}
}
}
......@@ -7,8 +7,6 @@ import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
public class SuperVisorGuiControlImpl implements SuperVisorGuiControl {
private SuperVisorImpl superVisor;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment