From 107442a4ae4f3fc29322972428051156460a7de4 Mon Sep 17 00:00:00 2001
From: Nelson Tavares de Sousa <ntd@informatik.uni-kiel.de>
Date: Thu, 16 Apr 2015 17:12:57 +0200
Subject: [PATCH] refactored configureThread to return a Thread

---
 src/main/java/teetime/framework/Analysis.java | 18 +++++++-----------
 src/site/markdown/wiki                        |  2 +-
 2 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/src/main/java/teetime/framework/Analysis.java b/src/main/java/teetime/framework/Analysis.java
index 73389551..34e7898d 100644
--- a/src/main/java/teetime/framework/Analysis.java
+++ b/src/main/java/teetime/framework/Analysis.java
@@ -136,27 +136,21 @@ public final class Analysis<T extends AnalysisConfiguration> implements Uncaught
 			newListener = factory.create();
 			switch (stage.getTerminationStrategy()) {
 			case BY_SIGNAL: {
-				final RunnableConsumerStage runnableConsumerStage = new RunnableConsumerStage(stage);
-				final Thread thread = new Thread(runnableConsumerStage);
+				final RunnableConsumerStage runnable = new RunnableConsumerStage(stage);
+				final Thread thread = createThread(newListener, intraStages, stage, runnable);
 				this.consumerThreads.add(thread);
-
-				configureThread(newListener, intraStages, stage, thread);
 				break;
 			}
 			case BY_SELF_DECISION: {
 				final RunnableProducerStage runnable = new RunnableProducerStage(stage);
-				final Thread thread = new Thread(runnable);
+				final Thread thread = createThread(newListener, intraStages, stage, runnable);
 				this.finiteProducerThreads.add(thread);
-
-				configureThread(newListener, intraStages, stage, thread);
 				break;
 			}
 			case BY_INTERRUPT: {
 				final RunnableProducerStage runnable = new RunnableProducerStage(stage);
-				final Thread thread = new Thread(runnable);
+				final Thread thread = createThread(newListener, intraStages, stage, runnable);
 				this.infiniteProducerThreads.add(thread);
-
-				configureThread(newListener, intraStages, stage, thread);
 				break;
 			}
 			default:
@@ -166,7 +160,8 @@ public final class Analysis<T extends AnalysisConfiguration> implements Uncaught
 
 	}
 
-	private void configureThread(final AbstractExceptionListener newListener, final Set<Stage> intraStages, final Stage stage, final Thread thread) {
+	private Thread createThread(final AbstractExceptionListener newListener, final Set<Stage> intraStages, final Stage stage, final AbstractRunnableStage runnable) {
+		final Thread thread = new Thread(runnable);
 		stage.setExceptionHandler(newListener);
 		for (Stage intraStage : intraStages) {
 			intraStage.setOwningThread(thread);
@@ -174,6 +169,7 @@ public final class Analysis<T extends AnalysisConfiguration> implements Uncaught
 		}
 		thread.setUncaughtExceptionHandler(this);
 		thread.setName(stage.getId());
+		return thread;
 	}
 
 	/**
diff --git a/src/site/markdown/wiki b/src/site/markdown/wiki
index 0e447457..162510ff 160000
--- a/src/site/markdown/wiki
+++ b/src/site/markdown/wiki
@@ -1 +1 @@
-Subproject commit 0e4474577e1f49bc96e734c286b2d9e0363895e8
+Subproject commit 162510ff4d2f04011498ba6920aae0c78347c6c8
-- 
GitLab