From f4e2e84a6b20d42d1e5affb1a22cdee02fc09f65 Mon Sep 17 00:00:00 2001
From: Christian Wulf <chw@informatik.uni-kiel.de>
Date: Fri, 24 Jul 2015 05:58:11 +0200
Subject: [PATCH] deactivated PMD's UR anomaly rule

---
 conf/quality-config/pmd-ruleset.xml                       | 8 ++++++++
 .../java/teetime/framework/ExecutionInstantiation.java    | 5 +----
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/conf/quality-config/pmd-ruleset.xml b/conf/quality-config/pmd-ruleset.xml
index 241ddd22..d2d67158 100644
--- a/conf/quality-config/pmd-ruleset.xml
+++ b/conf/quality-config/pmd-ruleset.xml
@@ -65,6 +65,14 @@
 		<exclude name="AvoidUsingVolatile" />
 	</rule>
 
+	<!-- UR means "undefined reference" which is already detected by the compiler. 
+		so we deactivate it. -->
+	<rule ref="rulesets/java/controversial.xml/DataflowAnomalyAnalysis">
+		<properties>
+			<property name="violationSuppressRegex" value="^Found 'UR'-anomaly.*" />
+		</properties>
+	</rule>
+
 	<rule ref="rulesets/java/coupling.xml">
 		<exclude name="LawOfDemeter" />
 	</rule>
diff --git a/src/main/java/teetime/framework/ExecutionInstantiation.java b/src/main/java/teetime/framework/ExecutionInstantiation.java
index a6813eb7..e6105adb 100644
--- a/src/main/java/teetime/framework/ExecutionInstantiation.java
+++ b/src/main/java/teetime/framework/ExecutionInstantiation.java
@@ -66,10 +66,7 @@ class ExecutionInstantiation {
 			final OutputPort outputPort, final InstantiationPipe pipe) {
 		Stage targetStage = pipe.getTargetPort().getOwningStage();
 
-		int targetColor = DEFAULT_COLOR;
-		if (colors.containsKey(targetStage)) {
-			targetColor = colors.get(targetStage);
-		}
+		int targetColor = colors.containsKey(targetStage) ? colors.get(targetStage) : DEFAULT_COLOR;
 
 		if (threadableStages.contains(targetStage) && targetColor != color) {
 			if (pipe.capacity() != 0) {
-- 
GitLab