public AirportController(IWeatherService weatherService, IFlightSchedulerService flightSchedulerService, IOptions <BufferTime> defaultBuffer) { this._weatherService = weatherService; this._flightSchedulerService = flightSchedulerService; this._defaultBuffer = defaultBuffer.Value; }
public async Task <ActionResult <TakeOff> > ScheduleTakeOff([FromBody] Flight flight, [FromQuery] BufferTime bufferTime) { var buffer = bufferTime.TakeOffBuffer ?? _defaultBuffer.TakeOffBuffer.Value; var weatherOffset = _weatherService.GetDelayDueToBadWeather(); if (weatherOffset == 1) { return(BadRequest("Cannot Take Off due to bad weather.")); } return(Ok(await _flightSchedulerService.ScheduleTakeOff(flight, buffer, weatherOffset))); }