package com.example; /* Martrikelnummer der Gruppenmitglieder: Olha Grubryn (235122), Egor Rutkowski(225064), Nikola Kramaric (238498), Dennis Ruppel (238503) */ import akka.actor.typed.ActorRef; import akka.actor.typed.Behavior; import akka.actor.typed.javadsl.AbstractBehavior; import akka.actor.typed.javadsl.ActorContext; import akka.actor.typed.javadsl.Behaviors; import akka.actor.typed.javadsl.Receive; public class AkkaMainSystem extends AbstractBehavior { public static class Create { } public static Behavior create() { return Behaviors.setup(AkkaMainSystem::new); } private AkkaMainSystem(ActorContext context) { super(context); } @Override public Receive createReceive() { return newReceiveBuilder().onMessage(Create.class, this::onCreate).build(); } private Behavior onCreate(Create command) { Expression expression = Expression.generateExpression(6, 9); //Vergleich mit dem Output der Berechnung zum Testen System.out.println("SOLL: "+expression+ " Wert:" +expression.eval() + " Runtime: " + expression.runtime() + " Sekunden"); //#create-actors ActorRef computer = this.getContext().spawn(PrintAndEvaluate.create("Rechner"), "rechner"); computer.tell(new PrintAndEvaluate.StartMessage(expression)); return this; } }