diff --git a/akka-samples/akka-sample-fsm-java-lambda/src/main/java/sample/become/DiningHakkersOnBecome.java b/akka-samples/akka-sample-fsm-java-lambda/src/main/java/sample/become/DiningHakkersOnBecome.java index ad2c866603..8f78cd8f64 100644 --- a/akka-samples/akka-sample-fsm-java-lambda/src/main/java/sample/become/DiningHakkersOnBecome.java +++ b/akka-samples/akka-sample-fsm-java-lambda/src/main/java/sample/become/DiningHakkersOnBecome.java @@ -60,6 +60,12 @@ public class DiningHakkersOnBecome { this.name = name; this.left = left; this.right = right; + + //All hakkers start in a non-eating state + receive(ReceiveBuilder.matchEquals(Think, m -> { + System.out.println(String.format("%s starts to think", name)); + startThinking(Duration.create(5, SECONDS)); + }).build()); } //When a hakker is eating, he can decide to start to think, @@ -124,14 +130,6 @@ public class DiningHakkersOnBecome { right.tell(new Take(self()), self()); }).build(); - //All hakkers start in a non-eating state - public Hakker() { - receive(ReceiveBuilder.matchEquals(Think, m -> { - System.out.println(String.format("%s starts to think", name)); - startThinking(Duration.create(5, SECONDS)); - }).build()); - } - private void startThinking(FiniteDuration duration) { context().become(thinking); context().system().scheduler().scheduleOnce(duration, self(), Eat, context().system().dispatcher(), self());