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