Esempio n. 1
0
 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;
     }));
 }
Esempio n. 4
0
        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);
 }
Esempio n. 7
0
 private VehicleStatistics GetStatistics(IAmVehicle vehicle)
 {
     return(_vehicleStatisticsFactory.Create(vehicle));
 }