public async Task <IEnumerable <IEvent> > HandleAsync(MoveMazeObjects command) { var maze = await _mazeRepository.GetByIdAsync(command.MazeId); maze.MoveMazeObjects(command, _validator); await _mazeRepository.UpdateAsync(maze); return(maze.Events); }
public async Task <MazeDetailsModel> RetrieveAsync(GetMaze query) { var dbEntity = await _mazeRepository.GetByIdAsync(query.Id); if (dbEntity == null) { throw new ApiException($"Maze with id: {query.Id} doesn't exists", 404); } return(_mapper.Map <MazeDetailsModel>(dbEntity)); }
public async Task <MazeVisualisationModel> RetrieveAsync(GetMazeVisualisation query) { var maze = await _mazeRepository.GetByIdAsync(query.Id); if (maze == null) { throw new ApiException($"Maze with id: {query.Id} doesn't exists", 404); } return(new MazeVisualisationModel { Maze = maze.ToString() }); }