From e9b6764bdfef0e1522e9068c51ccdc2a92504f6e Mon Sep 17 00:00:00 2001
From: Nils Christian Ehmke <nie@informatik.uni-kiel.de>
Date: Thu, 29 Jan 2015 14:48:32 +0100
Subject: [PATCH] Findbugs issues

---
 build.gradle                                          |  5 ++---
 config/findbugs/excludeFilter.xml                     |  8 ++++++++
 src/main/java/kieker/gui/common/model/DataModel.java  |  2 +-
 .../AggregatedExecutionAvgDurationComparator.java     | 11 ++++++++---
 .../util/AggregatedExecutionCallComparator.java       | 11 ++++++++---
 .../AggregatedExecutionMaxDurationComparator.java     | 11 ++++++++---
 .../AggregatedExecutionMinDurationComparator.java     | 11 ++++++++---
 .../AggregatedExecutionTotalDurationComparator.java   | 11 ++++++++---
 .../traces/util/ExecutionDurationComparator.java      | 10 ++++++++--
 .../traces/util/ExecutionTraceIDComparator.java       | 11 ++++++++---
 .../gui/subview/util/AbstractDirectedComparator.java  |  5 ++++-
 .../subview/util/ExecutionComponentComparator.java    | 10 ++++++++--
 .../subview/util/ExecutionContainerComparator.java    | 10 ++++++++--
 .../subview/util/ExecutionOperationComparator.java    | 10 ++++++++--
 14 files changed, 95 insertions(+), 31 deletions(-)
 create mode 100644 config/findbugs/excludeFilter.xml

diff --git a/build.gradle b/build.gradle
index 43aee04b..d31c1b67 100644
--- a/build.gradle
+++ b/build.gradle
@@ -48,9 +48,6 @@ eclipse.classpath.plusConfigurations += [configurations.providedCompile]
 apply plugin: 'pmd'
 pmd { 
   ignoreFailures = true
-
-    // Clear the rule set first. Otherwise we would have a lot of additional rules in our rule set.
- // ruleSets = []
 }
 
 apply plugin: 'checkstyle'
@@ -64,6 +61,8 @@ findbugs {
   ignoreFailures = true 
   effort = "max"
   reportLevel = "low"
+  
+  excludeFilter = file('config/findbugs/excludeFilter.xml')
 }
 
 def commonStartScriptConfiguration = {
diff --git a/config/findbugs/excludeFilter.xml b/config/findbugs/excludeFilter.xml
new file mode 100644
index 00000000..ee9322e6
--- /dev/null
+++ b/config/findbugs/excludeFilter.xml
@@ -0,0 +1,8 @@
+<FindBugsFilter>
+
+	<Match>
+    <Class name="org.eclipse.wb.swt.SWTResourceManager" />
+    <Bug pattern="REC_CATCH_EXCEPTION" />
+	</Match>
+	
+</FindBugsFilter>  
\ No newline at end of file
diff --git a/src/main/java/kieker/gui/common/model/DataModel.java b/src/main/java/kieker/gui/common/model/DataModel.java
index a77941f9..49f9d1b8 100644
--- a/src/main/java/kieker/gui/common/model/DataModel.java
+++ b/src/main/java/kieker/gui/common/model/DataModel.java
@@ -67,7 +67,7 @@ public final class DataModel extends Observable {
 			final KiekerMetadataRecord metadataRecord = metadataRecords.get(0);
 			this.shortTimeUnit = this.convertToShortTimeUnit(TimeUnit.valueOf(metadataRecord.getTimeUnit()));
 		} else {
-			this.shortTimeUnit = this.convertToShortTimeUnit(null);
+			this.shortTimeUnit = "";
 		}
 
 		this.setChanged();
diff --git a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionAvgDurationComparator.java b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionAvgDurationComparator.java
index 6646cadf..78b6cc18 100644
--- a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionAvgDurationComparator.java
+++ b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionAvgDurationComparator.java
@@ -23,14 +23,19 @@ import org.eclipse.swt.SWT;
 
 public class AggregatedExecutionAvgDurationComparator extends AbstractDirectedComparator<AggregatedExecution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AggregatedExecution arg0, final AggregatedExecution arg1) {
-		int result = Long.compare(arg0.getAvgDuration(), arg1.getAvgDuration());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getAvgDuration(), arg0.getAvgDuration());
+		} else {
+			result = Long.compare(arg0.getAvgDuration(), arg1.getAvgDuration());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionCallComparator.java b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionCallComparator.java
index a399d3ba..01cc0c01 100644
--- a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionCallComparator.java
+++ b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionCallComparator.java
@@ -23,14 +23,19 @@ import org.eclipse.swt.SWT;
 
 public class AggregatedExecutionCallComparator extends AbstractDirectedComparator<AggregatedExecution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AggregatedExecution arg0, final AggregatedExecution arg1) {
-		int result = Long.compare(arg0.getCalls(), arg1.getCalls());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getCalls(), arg0.getCalls());
+		} else {
+			result = Long.compare(arg0.getCalls(), arg1.getCalls());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMaxDurationComparator.java b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMaxDurationComparator.java
index f6be97f5..00c97763 100644
--- a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMaxDurationComparator.java
+++ b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMaxDurationComparator.java
@@ -23,14 +23,19 @@ import org.eclipse.swt.SWT;
 
 public class AggregatedExecutionMaxDurationComparator extends AbstractDirectedComparator<AggregatedExecution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AggregatedExecution arg0, final AggregatedExecution arg1) {
-		int result = Long.compare(arg0.getMaxDuration(), arg1.getMaxDuration());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getMaxDuration(), arg0.getMaxDuration());
+		} else {
+			result = Long.compare(arg0.getMaxDuration(), arg1.getMaxDuration());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMinDurationComparator.java b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMinDurationComparator.java
index bd94cb8a..c5cdff3b 100644
--- a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMinDurationComparator.java
+++ b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionMinDurationComparator.java
@@ -23,14 +23,19 @@ import org.eclipse.swt.SWT;
 
 public class AggregatedExecutionMinDurationComparator extends AbstractDirectedComparator<AggregatedExecution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AggregatedExecution arg0, final AggregatedExecution arg1) {
-		int result = Long.compare(arg0.getMinDuration(), arg1.getMinDuration());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getMinDuration(), arg0.getMinDuration());
+		} else {
+			result = Long.compare(arg0.getMinDuration(), arg1.getMinDuration());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionTotalDurationComparator.java b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionTotalDurationComparator.java
index b9c46911..11ff7ef3 100644
--- a/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionTotalDurationComparator.java
+++ b/src/main/java/kieker/gui/subview/aggregatedtraces/util/AggregatedExecutionTotalDurationComparator.java
@@ -7,14 +7,19 @@ import org.eclipse.swt.SWT;
 
 public class AggregatedExecutionTotalDurationComparator extends AbstractDirectedComparator<AggregatedExecution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AggregatedExecution arg0, final AggregatedExecution arg1) {
-		int result = Long.compare(arg0.getTotalDuration(), arg1.getTotalDuration());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getTotalDuration(), arg0.getTotalDuration());
+		} else {
+			result = Long.compare(arg0.getTotalDuration(), arg1.getTotalDuration());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/traces/util/ExecutionDurationComparator.java b/src/main/java/kieker/gui/subview/traces/util/ExecutionDurationComparator.java
index 475ced2a..77e5379f 100644
--- a/src/main/java/kieker/gui/subview/traces/util/ExecutionDurationComparator.java
+++ b/src/main/java/kieker/gui/subview/traces/util/ExecutionDurationComparator.java
@@ -23,12 +23,18 @@ import org.eclipse.swt.SWT;
 
 public class ExecutionDurationComparator extends AbstractDirectedComparator<Execution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final Execution arg0, final Execution arg1) {
-		int result = Long.compare(arg0.getDuration(), arg1.getDuration());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getTraceID(), arg0.getTraceID());
+		} else {
+			result = Long.compare(arg0.getTraceID(), arg1.getTraceID());
 		}
+
 		return result;
 
 	}
diff --git a/src/main/java/kieker/gui/subview/traces/util/ExecutionTraceIDComparator.java b/src/main/java/kieker/gui/subview/traces/util/ExecutionTraceIDComparator.java
index cc2c1564..a8e459f7 100644
--- a/src/main/java/kieker/gui/subview/traces/util/ExecutionTraceIDComparator.java
+++ b/src/main/java/kieker/gui/subview/traces/util/ExecutionTraceIDComparator.java
@@ -23,14 +23,19 @@ import org.eclipse.swt.SWT;
 
 public class ExecutionTraceIDComparator extends AbstractDirectedComparator<Execution> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final Execution arg0, final Execution arg1) {
-		int result = Long.compare(arg0.getTraceID(), arg1.getTraceID());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = Long.compare(arg1.getTraceID(), arg0.getTraceID());
+		} else {
+			result = Long.compare(arg0.getTraceID(), arg1.getTraceID());
 		}
-		return result;
 
+		return result;
 	}
 
 }
diff --git a/src/main/java/kieker/gui/subview/util/AbstractDirectedComparator.java b/src/main/java/kieker/gui/subview/util/AbstractDirectedComparator.java
index 02749c57..c16c195c 100644
--- a/src/main/java/kieker/gui/subview/util/AbstractDirectedComparator.java
+++ b/src/main/java/kieker/gui/subview/util/AbstractDirectedComparator.java
@@ -16,9 +16,12 @@
 
 package kieker.gui.subview.util;
 
+import java.io.Serializable;
 import java.util.Comparator;
 
-public abstract class AbstractDirectedComparator<T> implements Comparator<T> {
+public abstract class AbstractDirectedComparator<T> implements Comparator<T>, Serializable {
+
+	private static final long serialVersionUID = 1L;
 
 	private int direction;
 
diff --git a/src/main/java/kieker/gui/subview/util/ExecutionComponentComparator.java b/src/main/java/kieker/gui/subview/util/ExecutionComponentComparator.java
index 0b77c6ee..3e84a7de 100644
--- a/src/main/java/kieker/gui/subview/util/ExecutionComponentComparator.java
+++ b/src/main/java/kieker/gui/subview/util/ExecutionComponentComparator.java
@@ -22,12 +22,18 @@ import org.eclipse.swt.SWT;
 
 public class ExecutionComponentComparator extends AbstractDirectedComparator<AbstractExecution<?>> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AbstractExecution<?> fst, final AbstractExecution<?> snd) {
-		int result = fst.getComponent().compareTo(snd.getComponent());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = snd.getComponent().compareTo(fst.getComponent());
+		} else {
+			result = fst.getComponent().compareTo(snd.getComponent());
 		}
+
 		return result;
 	}
 
diff --git a/src/main/java/kieker/gui/subview/util/ExecutionContainerComparator.java b/src/main/java/kieker/gui/subview/util/ExecutionContainerComparator.java
index 10e1a049..25950ef0 100644
--- a/src/main/java/kieker/gui/subview/util/ExecutionContainerComparator.java
+++ b/src/main/java/kieker/gui/subview/util/ExecutionContainerComparator.java
@@ -22,12 +22,18 @@ import org.eclipse.swt.SWT;
 
 public class ExecutionContainerComparator extends AbstractDirectedComparator<AbstractExecution<?>> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AbstractExecution<?> fst, final AbstractExecution<?> snd) {
-		int result = fst.getContainer().compareTo(snd.getContainer());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = snd.getComponent().compareTo(fst.getComponent());
+		} else {
+			result = fst.getComponent().compareTo(snd.getComponent());
 		}
+
 		return result;
 	}
 
diff --git a/src/main/java/kieker/gui/subview/util/ExecutionOperationComparator.java b/src/main/java/kieker/gui/subview/util/ExecutionOperationComparator.java
index 72b27604..16e039f0 100644
--- a/src/main/java/kieker/gui/subview/util/ExecutionOperationComparator.java
+++ b/src/main/java/kieker/gui/subview/util/ExecutionOperationComparator.java
@@ -22,12 +22,18 @@ import org.eclipse.swt.SWT;
 
 public class ExecutionOperationComparator extends AbstractDirectedComparator<AbstractExecution<?>> {
 
+	private static final long serialVersionUID = 1L;
+
 	@Override
 	public int compare(final AbstractExecution<?> fst, final AbstractExecution<?> snd) {
-		int result = fst.getOperation().compareTo(snd.getOperation());
+		int result;
+
 		if (this.getDirection() == SWT.UP) {
-			result = -result;
+			result = snd.getComponent().compareTo(fst.getComponent());
+		} else {
+			result = fst.getComponent().compareTo(snd.getComponent());
 		}
+
 		return result;
 	}
 
-- 
GitLab