From 6f8a8aabcaddba3d96ce233830dc11a8f6c7a0f1 Mon Sep 17 00:00:00 2001 From: Christian Wulf <chw@informatik.uni-kiel.de> Date: Thu, 16 Apr 2015 17:11:05 +0200 Subject: [PATCH] refactoring --- src/main/java/teetime/framework/Analysis.java | 37 ++++++++----------- src/site/markdown/wiki | 2 +- 2 files changed, 17 insertions(+), 22 deletions(-) diff --git a/src/main/java/teetime/framework/Analysis.java b/src/main/java/teetime/framework/Analysis.java index aa6cd428..73389551 100644 --- a/src/main/java/teetime/framework/Analysis.java +++ b/src/main/java/teetime/framework/Analysis.java @@ -138,40 +138,25 @@ public final class Analysis<T extends AnalysisConfiguration> implements Uncaught case BY_SIGNAL: { final RunnableConsumerStage runnableConsumerStage = new RunnableConsumerStage(stage); final Thread thread = new Thread(runnableConsumerStage); - stage.setExceptionHandler(newListener); - for (Stage intraStage : intraStages) { - intraStage.setOwningThread(thread); - intraStage.setExceptionHandler(newListener); - } this.consumerThreads.add(thread); - thread.setUncaughtExceptionHandler(this); - thread.setName(stage.getId()); + + configureThread(newListener, intraStages, stage, thread); break; } case BY_SELF_DECISION: { final RunnableProducerStage runnable = new RunnableProducerStage(stage); final Thread thread = new Thread(runnable); - stage.setExceptionHandler(newListener); - for (Stage intraStage : intraStages) { - intraStage.setOwningThread(thread); - intraStage.setExceptionHandler(newListener); - } this.finiteProducerThreads.add(thread); - thread.setUncaughtExceptionHandler(this); - thread.setName(stage.getId()); + + configureThread(newListener, intraStages, stage, thread); break; } case BY_INTERRUPT: { final RunnableProducerStage runnable = new RunnableProducerStage(stage); final Thread thread = new Thread(runnable); - stage.setExceptionHandler(newListener); - for (Stage intraStage : intraStages) { - intraStage.setOwningThread(thread); - intraStage.setExceptionHandler(newListener); - } this.infiniteProducerThreads.add(thread); - thread.setUncaughtExceptionHandler(this); - thread.setName(stage.getId()); + + configureThread(newListener, intraStages, stage, thread); break; } default: @@ -181,6 +166,16 @@ 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) { + stage.setExceptionHandler(newListener); + for (Stage intraStage : intraStages) { + intraStage.setOwningThread(thread); + intraStage.setExceptionHandler(newListener); + } + thread.setUncaughtExceptionHandler(this); + thread.setName(stage.getId()); + } + /** * This method will start the Analysis and all containing stages. * diff --git a/src/site/markdown/wiki b/src/site/markdown/wiki index 162510ff..0e447457 160000 --- a/src/site/markdown/wiki +++ b/src/site/markdown/wiki @@ -1 +1 @@ -Subproject commit 162510ff4d2f04011498ba6920aae0c78347c6c8 +Subproject commit 0e4474577e1f49bc96e734c286b2d9e0363895e8 -- GitLab