Exemple #1
0
 public CarWash(ILogger logger, IDetailsSource detailsSource, IDetailsSerializer detailsSerializer, DetailsPricingFactory detailsPricingFactory)
 {
     _logger                = logger;
     _detailsSource         = detailsSource;
     _detailsSerializer     = detailsSerializer;
     _detailsPricingFactory = detailsPricingFactory;
     Context                = new DefaultContext(_detailsSource, _detailsSerializer);
     Context.CarWash        = this;
 }
Exemple #2
0
 public DetailsPricing Create(Details details, ICarWashContext context)
 {
     try
     {
         return((DetailsPricing)Activator.CreateInstance(
                    Type.GetType($"ExampleSolid.{details.WashingType}DetailsPricing"),
                    new object[] { _logger }));
     }
     catch (System.Exception)
     {
         return(new UnknownDetailsPricing(_logger));
     }
 }