Exemplo n.º 1
0
        public async Task <ActionResult> GetMapSolution([FromServices] IMazebotSolver solver, string sessionId, string mazeId)
        {
            var response = await solver.GetMapImage(sessionId, mazeId, true);

            if (response == null)
            {
                return(new NotFoundResult());
            }

            return(new FileContentResult(response.Image, response.ContentType));
        }
Exemplo n.º 2
0
        public async Task <ActionResult> GetStatusSummary([FromServices] IMazebotSolver solver, string sessionId)
        {
            var response = await solver.GetHistorySummary(sessionId);

            if (response?.Any() != true)
            {
                return(new NotFoundResult());
            }

            return(new OkObjectResult(response));
        }
Exemplo n.º 3
0
        public async Task <ActionResult> GetRaceStatus([FromServices] IMazebotSolver solver, string sessionId)
        {
            var response = await solver.GetRaceStatus(sessionId);

            if (response == null)
            {
                return(new NotFoundResult());
            }

            return(new OkObjectResult(response));
        }
Exemplo n.º 4
0
        public async Task <ActionResult> StartRace([FromServices] IMazebotSolver solver, [FromBody] MazebotSolverRaceRequest request)
        {
            var response = await solver.JoinRace(request);

            return(new OkObjectResult(response));
        }
Exemplo n.º 5
0
        public async Task <ActionResult> SolveRandomMap([FromServices] IMazebotSolver solver, int?minSize = null, int?maxSize = null)
        {
            var response = await solver.SolveRandom(minSize, maxSize);

            return(new OkObjectResult(response));
        }