private static ICarFilterStrategy CreateSeriesStrategy(string seriesName) { DataValidator.ValidateNotNullOrEmpty(seriesName, new ArgumentException(ErrorConstants.CantBeNullOrEmptyParameter)); var filterStrategy = new FilterCarsByPredicateStrategy(c => c.Series.Name == seriesName); return(filterStrategy); }
private static ICarFilterStrategy CreateYearStrategy(int startYear) { DataValidator.ValidateYearString(startYear.ToString()); var yearStrategy = new FilterCarsByPredicateStrategy(c => int.Parse(c.Year) == startYear); return(yearStrategy); }
private static ICarFilterStrategy CreatePriceRangeStrategy(decimal minPrice, decimal maxPrice) { DataValidator.ValidateMinPrice(minPrice, EntitiesConstants.MinPrice); DataValidator.ValidateMaxPrice(maxPrice, EntitiesConstants.CarMaxPrice); var priceStrategy = new FilterCarsByPredicateStrategy(c => c.Price >= minPrice && c.Price <= maxPrice); return(priceStrategy); }