public ShippingSelectionPreCheckoutRule(ICachedShippingMethodCollectionProvider cachedShippingMethodCollectionProvider, ICachedShoppingCartProvider cachedShoppingCartProvider, IShippingMethodCartItemApplicator shippingMethodCartItemApplicator, IEffectiveShippingAddressProvider effectiveShippingAddressProvider)
 {
     CachedShippingMethodCollectionProvider = cachedShippingMethodCollectionProvider;
     CachedShoppingCartProvider             = cachedShoppingCartProvider;
     ShippingMethodCartItemApplicator       = shippingMethodCartItemApplicator;
     FreeShippingAllowsRateSelection        = AppLogic.AppConfigBool("FreeShippingAllowsRateSelection");
     EffectiveShippingAddressProvider       = effectiveShippingAddressProvider;
 }
 public CheckoutShippingMethodController(
     ICachedShippingMethodCollectionProvider cachedShippingMethodCollectionProvider,
     ICachedShoppingCartProvider cachedShoppingCartProvider,
     IEffectiveShippingAddressProvider effectiveShippingAddressProvider,
     NoticeProvider noticeProvider,
     IPersistedCheckoutContextProvider persistedCheckoutContextProvider,
     IShippingMethodCartItemApplicator shippingMethodCartItemApplicator)
 {
     CachedShippingMethodCollectionProvider = cachedShippingMethodCollectionProvider;
     CachedShoppingCartProvider             = cachedShoppingCartProvider;
     EffectiveShippingAddressProvider       = effectiveShippingAddressProvider;
     NoticeProvider = noticeProvider;
     PersistedCheckoutContextProvider = persistedCheckoutContextProvider;
     ShippingMethodCartItemApplicator = shippingMethodCartItemApplicator;
 }