public async Task <ActionResult> PostEndGameAsync(Guid gameId, EndGameRequest request)
        {
            var command = new EndGameCommand(gameId, request.EndTime);
            await _endGameCommandHandler.HandleAsync(command);

            return(Ok());
        }
Beispiel #2
0
        public async Task <IActionResult> EndGame(
            [HttpTrigger(AuthorizationLevel.Anonymous, "post")]
            EndGameRequest request,
            [ExactlyOnce("{gameId}")] IOnceExecutor execute,
            [Queue("end-game")] ICollector <EndGame> collector,
            ILogger log)
        {
            log.LogWarning($"Processing EndGame: gameId={request.GameId}");

            var endGame = await execute.Once(
                () => new EndGame
            {
                GameId = request.GameId.ToGuid()
            }
                );

            collector.Add(endGame);

            return(new AcceptedResult());
        }