public HttpResponseMessage DeployRover([FromBody] RoverConfig roverconfig) { try { Rover rover = null; var plateau = Plateau.CreatePlateau(roverconfig.Plateau); rover = Rover.CreateRover(roverconfig.StartPosition); rover.SetPlateau(plateau); rover.ExecuteBatchCmds(roverconfig.MoveCommands); return(Request.CreateResponse(HttpStatusCode.Created, rover.GetPosition())); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, message: ex.Message)); } }
public RoverVehicle(RoverConfig config, RoverCommunicator communicator, RoverNavigator navigator) { _config = config; _communicator = communicator; _navigator = navigator; }