diff --git a/src/main/java/teetime/framework/Stage.java b/src/main/java/teetime/framework/Stage.java index 802a5d324eb02425c3322a981b047029a74a4efb..f947b21502906d732e8ac7e1dcee3a708d0d3fe6 100644 --- a/src/main/java/teetime/framework/Stage.java +++ b/src/main/java/teetime/framework/Stage.java @@ -1,8 +1,8 @@ package teetime.framework; import java.util.List; -import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -12,8 +12,9 @@ import teetime.framework.validation.InvalidPortConnection; public abstract class Stage { // NOPMD (should not start with "Abstract") + private static final ConcurrentMap<String, Integer> INSTANCES_COUNTER = new ConcurrentHashMap<String, Integer>(); + private final String id; - private static final Map<String, Integer> INSTANCES_COUNTER = new ConcurrentHashMap<String, Integer>(); /** * A unique logger instance per stage instance */ @@ -21,7 +22,7 @@ public abstract class Stage { // NOPMD (should not start with "Abstract") protected Stage() { this.id = this.createId(); - this.logger = LoggerFactory.getLogger(this.getClass().getName() + "-" + this.id); + this.logger = LoggerFactory.getLogger(this.id); } public String getId() { @@ -46,6 +47,10 @@ public abstract class Stage { // NOPMD (should not start with "Abstract") return newId; } + static void clearInstanceCounters() { // NOPMD (package-private to clear map in tests) + INSTANCES_COUNTER.clear(); + } + // public abstract Stage getParentStage(); // // public abstract void setParentStage(Stage parentStage, int index); diff --git a/src/test/java/teetime/framework/StageTest.java b/src/test/java/teetime/framework/StageTest.java index 2a63e93e38e57b2f1a342e4005477f7537e08b81..b3ac19814975d3cde840d12f2815a829a4c45dec 100644 --- a/src/test/java/teetime/framework/StageTest.java +++ b/src/test/java/teetime/framework/StageTest.java @@ -10,6 +10,8 @@ public class StageTest { @Test public void testId() { + Stage.clearInstanceCounters(); + Counter<Object> counter0 = new Counter<Object>(); Counter<Object> counter1 = new Counter<Object>(); Assert.assertEquals("Counter-0", counter0.getId());