private void Land(Plane plane, RunwayStation runway) { plane.CurrentStation = runway; runway.CurrentPlane = plane; //ui update Task.Run(() => notifyService.NewLanding(plane)); Thread.Sleep(2000); //db update Flight flight = CreateFlightAction(plane, runway, FlightActionsEnum.Landing); //!!!! MiddleStation station = GetNextStation(runway) as MiddleStation; if (station != null) { MoveToNextStation(station, plane); runway.CurrentPlane = null; } }