public TravelRoadmap BuildTravelRoadmap(City initial, City destination) { TravelRoadmap travelRoadmap = new TravelRoadmap(initial, destination); List <TransportMode> Modes = new List <TransportMode>(); DistanceHelper distanceHelper = new DistanceHelper(); if (distanceHelper.GetDistance(initial, destination).Equals(Distance.Short)) { Modes.Add(TransportMode.Foot); Modes.Add(TransportMode.Car); Modes.Add(TransportMode.Train); travelRoadmap.Modes = Modes; } else if (distanceHelper.GetDistance(initial, destination).Equals(Distance.Medium)) { Modes.Add(TransportMode.Plane); Modes.Add(TransportMode.Car); Modes.Add(TransportMode.Train); travelRoadmap.Modes = Modes; } else { Modes.Add(TransportMode.Boat); Modes.Add(TransportMode.Plane); travelRoadmap.Modes = Modes; } return(travelRoadmap); }
public TravelRoadmap BuildTravelRoadmap(City initial, City destination) { TravelRoadmap travelRoadmap = new TravelRoadmap(); List <TransportMode> listModes = new List <TransportMode>(); DistanceHelper distanceHelper = new DistanceHelper(); switch (distanceHelper.GetDistance(initial, destination)) { case Distance.Short: listModes.Add(TransportMode.Foot); listModes.Add(TransportMode.Car); listModes.Add(TransportMode.Train); break; case Distance.Medium: listModes.Add(TransportMode.Car); listModes.Add(TransportMode.Train); listModes.Add(TransportMode.Plane); break; case Distance.Long: listModes.Add(TransportMode.Boat); listModes.Add(TransportMode.Plane); break; } travelRoadmap.Modes = listModes; return(travelRoadmap); }
public TravelRoadmap BuildTravelRoadmap(City initial, City destination) { TravelRoadmap travelRoadmap = new TravelRoadmap(); var result = new List <TransportMode>(); //if (initial.Equals(destination)) //{ // result.Add(TransportMode.Foot); // result.Add(TransportMode.Car); // result.Add(TransportMode.Train); //} //else if (initial.Equals(City.Sydney) || destination.Equals(City.Sydney)) //{ // result.Add(TransportMode.Boat); // result.Add(TransportMode.Plane); //} //else //{ // result.Add(TransportMode.Plane); // result.Add(TransportMode.Car); // result.Add(TransportMode.Train); //} switch (initial) { case City.Barcelona: switch (destination) { case City.Barcelona: result.Add(TransportMode.Foot); result.Add(TransportMode.Car); result.Add(TransportMode.Train); break; case City.London: result.Add(TransportMode.Plane); result.Add(TransportMode.Car); result.Add(TransportMode.Train); break; case City.Sydney: result.Add(TransportMode.Boat); result.Add(TransportMode.Plane); break; default: throw new Exception("Not implemented"); } break; case City.London: switch (destination) { case City.Barcelona: result.Add(TransportMode.Plane); result.Add(TransportMode.Car); result.Add(TransportMode.Train); break; case City.London: result.Add(TransportMode.Foot); result.Add(TransportMode.Car); result.Add(TransportMode.Train); break; case City.Sydney: result.Add(TransportMode.Boat); result.Add(TransportMode.Plane); break; default: throw new Exception("Not implemented"); } break; case City.Sydney: switch (destination) { case City.Barcelona: result.Add(TransportMode.Boat); result.Add(TransportMode.Plane); break; case City.London: result.Add(TransportMode.Boat); result.Add(TransportMode.Plane); break; case City.Sydney: result.Add(TransportMode.Foot); result.Add(TransportMode.Car); result.Add(TransportMode.Train); break; default: throw new Exception("Not implemented"); } break; default: throw new Exception("Not implemented"); } travelRoadmap.Modes = result; return(travelRoadmap); }