private List <Malfunction> GetMalfunctionStatistics(IAmVehicle vehicle) { return(new List <Malfunction>(vehicle.MalfunctionHistory.Select( malfunction => new Malfunction { OccuredOn = malfunction.OccuredOn, Damage = malfunction.IsHeavy? DamageLevel.Heavy : DamageLevel.Light }))); }
public static Vehicle ToDto(this IAmVehicle vehicle) { return(new Vehicle { Id = vehicle.Id, Type = vehicle.Type.ToDto(), DistanceFromStart = vehicle.Distance, }); }
public Result AddVehicle(IAmVehicle vehicle) { return(Result.Create(_state.AllowedVehicleAdding, "Adding vehicle not allowed.") .OnSuccess(() => Result.Create(!_vehicles.ContainsKey(vehicle.Id), ErrorMessages.VehicleAlreadyAdded)) .OnSuccess(() => { _vehicles.Add(vehicle.Id, vehicle); _vehiclesStillInRally.Add(vehicle.Id); vehicle.FinishedRally += WhenVehicleFinishesRally; })); }
public VehicleStatistics Create(IAmVehicle vehicle) { var stat = new VehicleStatistics { Status = vehicle.Status.ToDto(), DistanceFromStart = vehicle.Distance, FinishTime = vehicle.FinishedAt, MalfunctionStatistics = GetMalfunctionStatistics(vehicle), }; return(stat); }
public static Vehicle ToDto(this IAmVehicle vehicle) { return(new Vehicle { Id = vehicle.Id, Type = vehicle.Type.ToDto(), Status = vehicle.Status.ToDto(), TeamName = vehicle.TeamName, Model = vehicle.Model, ManufacturingDate = vehicle.ManufacturingDate, DistanceFromStart = vehicle.Distance }); }
public VehicleStatistics Create(IAmVehicle vehicle) { return(_stats); }
private VehicleStatistics GetStatistics(IAmVehicle vehicle) { return(_vehicleStatisticsFactory.Create(vehicle)); }