decimal ITaxCalculator.Calculate(TaxCalculationContext context) { ITaxCalculatorStrategy calculator = null; calculator = _componentContext.ResolveKeyed <ITaxCalculatorStrategy>(context.TaxationForm); if (calculator == null) { throw new DomainException($"Tax calculator for {context.TaxationForm} not found"); } return(calculator.Calculate(context)); }
public TaxCalculatorStrategy(ITaxCalculatorStrategy taxCalculatorStrategy) { _taxCalculatorStrategy = taxCalculatorStrategy; }
public TaxCalculatorContext(ITaxCalculatorStrategy taxCalculatorStrategy) { _taxCalculatorStrategy = taxCalculatorStrategy; }