private void HandleAddMessage(AddCommandMessage addCommandMessage) { Console.WriteLine($"Ich berechne die Aufgabe {addCommandMessage.Summand1}+{addCommandMessage.Summand2}"); var result = addCommandMessage.Summand1 + addCommandMessage.Summand2; var resultMessage = new ResultCalculatedEventMessage(result, addCommandMessage); addCommandMessage.ResultReceiver.Tell(resultMessage); cacheResultPublisher.Tell(new Publish("resultCache", resultMessage)); }
private void HandleUltimateQuestion(UltimateQuestionCommandMessage addMessage) { Console.WriteLine($"Ich berechne die Frage nach dem Leben, dem Universum und dem ganzen Rest"); Thread.Sleep(TimeSpan.FromSeconds(3)); var resultMessage = new ResultCalculatedEventMessage(42, addMessage); addMessage.ResultReceiver.Tell(resultMessage); cacheResultPublisher.Tell(new Publish("resultCache", resultMessage)); }
private void HandleCalculationResult(ResultCalculatedEventMessage resultCalculatedEventMessage) { if (resultCalculatedEventMessage.command is AddCommandMessage) { var addMessage = resultCalculatedEventMessage.command as AddCommandMessage; var key = $"add_{addMessage.Summand1}_{addMessage.Summand2}"; cachedResults.AddOrSet(key, resultCalculatedEventMessage.Result); } if (resultCalculatedEventMessage.command is UltimateQuestionCommandMessage) { var key = $"ultimateQuestion"; cachedResults.AddOrSet(key, resultCalculatedEventMessage.Result); } }
private void HandleCalculationResult(ResultCalculatedEventMessage x) { Console.WriteLine($"Ergebnis von \"{x.command.QuestionDescription}\" ist {x.Result}"); }