public CarCatalog(EngineFactory engineFactory, TireFactory tireFactory, CargoFactory cargoFactory) { this.cars = new List <Car>(); this.engineFactory = engineFactory; this.tireFactory = tireFactory; this.cargoFactory = cargoFactory; }
public CarCatalog() { this.cars = new List <Car>(); this.carFactory = new CarFactory(); this.engineFactory = new EngineFactory(); this.cargoFactory = new CargoFactory(); this.tiresFactory = new TiresFactory(); }
public CarCatalogue( EngineFactory engineFactory, CargoFactory cargoFactory, CarFactory carFactory) { this.cars = new List <Car>(); this.engineFactory = engineFactory; this.cargoFactory = cargoFactory; this.carFactory = carFactory; }
public void Run() { CarFactory carFactory = new CarFactory(); EngineFactory engineFactory = new EngineFactory(); CargoFactory cargoFactory = new CargoFactory(); TireFactory tireFactory = new TireFactory(); CarCatalog carCatalog = new CarCatalog(carFactory, engineFactory, cargoFactory, tireFactory); int lines = int.Parse(Console.ReadLine()); for (int i = 0; i < lines; i++) { string[] parameters = Console.ReadLine() ?.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); carCatalog.Add(parameters); } string command = Console.ReadLine(); switch (command) { case "fragile": List <string> fragile = carCatalog.GetCars() .Where(x => x.Cargo.Type == "fragile" && x.Tires.Any(y => y.Pressure < 1)) .Select(x => x.Model) .ToList(); PrintInfo(fragile); break; case "flamable": List <string> flamable = carCatalog.GetCars() .Where(x => x.Cargo.Type == "flamable" && x.Engine.Power > 250) .Select(x => x.Model) .ToList(); PrintInfo(flamable); break; } }
public static void Main() { EngineFactory engineFactory = new EngineFactory(); TireFactory tireFactory = new TireFactory(); CargoFactory cargoFactory = new CargoFactory(); CarCatalog carCatalog = new CarCatalog(engineFactory, tireFactory, cargoFactory); int lines = int.Parse(Console.ReadLine()); for (int i = 0; i < lines; i++) { string[] parameters = Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); carCatalog.Add(parameters); } string command = Console.ReadLine(); Filter filter = new Filter(); Console.WriteLine(filter.GetCars(command, carCatalog)); }
static void Main(string[] args) { EngineFactory engineFactory = new EngineFactory(); CargoFactory cargoFactory = new CargoFactory(); CarFactory carFactory = new CarFactory(); CarCatalogue carCatalogue = new CarCatalogue( engineFactory, cargoFactory, carFactory); int lines = int.Parse(Console.ReadLine()); for (int i = 0; i < lines; i++) { string[] parameters = Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); carCatalogue.Add(parameters); } string command = Console.ReadLine(); if (command == "fragile") { List <string> fragile = carCatalogue.GetCars() .Where(x => x.Cargo.Type == "fragile" && x.Tires.Any(y => y.Pressure < 1)) .Select(x => x.Model) .ToList(); Console.WriteLine(string.Join(Environment.NewLine, fragile)); } else { List <string> flamable = carCatalogue.GetCars() .Where(x => x.Cargo.Type == "flamable" && x.Engine.Power > 250) .Select(x => x.Model) .ToList(); Console.WriteLine(string.Join(Environment.NewLine, flamable)); } }