public CartItemViewModelFactory(
     IContentLoader contentLoader,
     IPricingService pricingService,
     UrlResolver urlResolver,
     ICurrentMarket currentMarket,
     ICurrencyService currencyService,
     IPromotionService promotionService,
     AppContextFacade appContext,
     ILineItemCalculator lineItemCalculator,
     IProductService productService, 
     IRelationRepository relationRepository, 
     ICartService cartService)
 {
     _contentLoader = contentLoader;
     _pricingService = pricingService;
     _urlResolver = urlResolver;
     _currentMarket = currentMarket;
     _currencyService = currencyService;
     _promotionService = promotionService;
     _appContext = appContext;
     _lineItemCalculator = lineItemCalculator;
     _productService = productService;
     _relationRepository = relationRepository;
     _cartService = cartService;
 }
 public PricingModuleController(IPricingService pricingService, IItemService itemService, ICatalogService catalogService, IPricingExtensionManager extensionManager)
 {
     _extensionManager = extensionManager;
     _pricingService = pricingService;
     _itemService = itemService;
     _catalogService = catalogService;
 }
		public VCGoogleProductProvider(IItemService itemService, IPricingService pricingService, IBlobUrlResolver assetUrlResolver, ICatalogSearchService catalogSearchService)
        {
            _itemService = itemService;
            _pricingService = pricingService;
            _assetUrlResolver = assetUrlResolver;
            _catalogSearchService = catalogSearchService;
        }
示例#4
0
 public CartService(
     IProductService productService,
     IPricingService pricingService,
     IOrderFactory orderFactory,
     CustomerContextFacade customerContext,
     IPlacedPriceProcessor placedPriceProcessor,
     IInventoryProcessor inventoryProcessor,
     ILineItemValidator lineItemValidator,
     IOrderRepository orderRepository,
     IPromotionEngine promotionEngine,
     IAddressBookService addressBookService,
     ICurrentMarket currentMarket,
     ICurrencyService currencyService)
 {
     _productService = productService;
     _pricingService = pricingService;
     _orderFactory = orderFactory;
     _customerContext = customerContext;
     _placedPriceProcessor = placedPriceProcessor;
     _inventoryProcessor = inventoryProcessor;
     _lineItemValidator = lineItemValidator;
     _promotionEngine = promotionEngine;
     _orderRepository = orderRepository;
     _addressBookService = addressBookService;
     _currentMarket = currentMarket;
     _currencyService = currencyService;
 }
 public PricingController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, IMarketingService marketingService,
     IPromotionEvaluator promotionEvaluator, IPricingService pricingService)
     : base(workContext, urlBuilder)
 {
     _marketingService = marketingService;
     _pricingService = pricingService;
     _promotionEvaluator = promotionEvaluator;
 }
 public ProductController(
     IProductCatalogueService productCatalogueService
     ,IPricingService pricingService
     )
 {
     _productCatalogueService = productCatalogueService;
     _pricingService = pricingService;
 }
 public CatalogSearchServiceImpl(Func<WorkContext> workContextFactory, ICatalogModuleApi catalogModuleApi, IPricingService pricingService, IInventoryModuleApi inventoryModuleApi, ISearchModuleApi searchApi, IPromotionEvaluator promotionEvaluator)
 {
     _workContextFactory = workContextFactory;
     _catalogModuleApi = catalogModuleApi;
     _pricingService = pricingService;
     _inventoryModuleApi = inventoryModuleApi;
     _searchApi = searchApi;
     _promotionEvaluator = promotionEvaluator;
 }
        public PricingServiceHost(IPricingService service, IBroker broker) : base(broker, "pricing")
        {
            _service = service;
            _broker = broker;

            RegisterCall("getPriceUpdates", GetPriceUpdates);
            StartHeartBeat();
            StartPricePublisher();
        }
示例#9
0
 public void LockForAccountOverdraft(string comment, IPricingService service)
 {
     if (_state.ManualBilling) return;
     var threshold = service.GetOverdraftThreshold(_state.Currency);
     if (_state.Balance < threshold)
     {
         LockCustomer("Overdraft. " + comment);
     }
 }
 public CatalogItemIndexBuilder(ISearchProvider searchProvider, ICatalogSearchService catalogSearchService,
                                IItemService itemService, IPricingService pricingService,
                                IChangeLogService changeLogService)
 {
     _searchProvider = searchProvider;
     _itemService = itemService;
     _catalogSearchService = catalogSearchService;
     _pricingService = pricingService;
     _changeLogService = changeLogService;
 }
		public CsvCatalogExporter(ICatalogSearchService catalogSearchService,
								  ICategoryService categoryService, IItemService productService,
								  IPricingService pricingService, IInventoryService inventoryService, IBlobUrlResolver blobUrlResolver)
		{
			_searchService = catalogSearchService;
			_categoryService = categoryService;
			_productService = productService;
			_pricingService = pricingService;
			_inventoryService = inventoryService;
			_blobUrlResolver = blobUrlResolver;
		}
示例#12
0
        public void Create(CustomerId id, string name, Currency currency, IPricingService service)
        {
            if (_state.Created)
                throw new InvalidOperationException("Customer was already created");
            Apply(new CustomerCreated
                {
                    Created = DateTime.UtcNow,
                    Name = name,
                    Id = id,
                    Currency = currency
                });

            var bonus = service.GetWelcomeBonus(currency);
            AddPayment("Welcome bonus", bonus);
        }
示例#13
0
 public PromotionService(
     IPricingService pricingService, 
     IMarketService marketService, 
     IContentLoader contentLoader, 
     ReferenceConverter referenceConverter,
     ILineItemCalculator lineItemCalculator,
     IPromotionEngine promotionEngine)
 {
     _contentLoader = contentLoader;
     _marketService = marketService;
     _pricingService = pricingService;
     _referenceConverter = referenceConverter;
     _lineItemCalculator = lineItemCalculator;
     _promotionEngine = promotionEngine;
 }
示例#14
0
		public CsvCatalogExportJob(ICatalogSearchService catalogSearchService,
								ICategoryService categoryService, IItemService productService,
								INotifier notifier, CacheManager cacheManager, IBlobStorageProvider blobProvider, IBlobUrlResolver blobUrlResolver,
								IPricingService pricingService, IInventoryService inventoryService)
		{
			_searchService = catalogSearchService;
			_categoryService = categoryService;
			_productService = productService;
			_notifier = notifier;
			_cacheManager = cacheManager;
			_blobStorageProvider = blobProvider;
			_blobUrlResolver = blobUrlResolver;
			_pricingService = pricingService;
			_inventoryService = inventoryService;
		}
示例#15
0
 public PromotionService(
     IPricingService pricingService, 
     IMarketService marketService, 
     IContentLoader contentLoader, 
     ReferenceConverter referenceConverter, 
     PromotionHelperFacade promotionHelper,
     IPromotionEntryService promotionEntryService)
 {
     _contentLoader = contentLoader;
     _marketService = marketService;
     _pricingService = pricingService;
     _referenceConverter = referenceConverter;
     _promotionEntryService = promotionEntryService;
     _promotionHelper = promotionHelper;
 }
示例#16
0
 public CartService(Func<string, CartHelper> cartHelper, 
     IContentLoader contentLoader, 
     ReferenceConverter referenceConverter, 
     UrlResolver urlResolver, 
     IProductService productService,
     IPricingService pricingService)
 {
     _cartHelper = cartHelper;
     _contentLoader = contentLoader;
     _referenceConverter = referenceConverter;
     _preferredCulture = ContentLanguage.PreferredCulture;
     _urlResolver = urlResolver;
     _productService = productService;
     _pricingService = pricingService;
 }
		public CsvCatalogImporter(ICatalogService catalogService, ICategoryService categoryService, IItemService productService,
								IPushNotificationManager pushNotificationManager, ISkuGenerator skuGenerator,
								IPricingService pricingService, IInventoryService inventoryService, ICommerceService commerceService,
								IPropertyService propertyService, ICatalogSearchService searchService)
		{
			_catalogService = catalogService;
			_categoryService = categoryService;
			_productService = productService;
			_pushNotificationManager = pushNotificationManager;
			_skuGenerator = skuGenerator;
			_pricingService = pricingService;
			_inventoryService = inventoryService;
			_commerceService = commerceService;
			_propertyService = propertyService;
			_searchService = searchService;
		}
        public FxRatesWindowViewModel(IPricingService service)
        {
            pricingService = service;
              GetLatestPrices();

              SubscriptionCommand = new RelayCommand(SubscriptionCommand_Execute);
              ServiceRunningCommand = new RelayCommand(ServiceRunningCommand_Execute);

              var priceUpdates = Observable.FromEventPattern<PriceUpdateEventArgs>(
            pricingService, "PriceUpdate");

              priceUpdates.Where(e => (e.EventArgs.LatestPrice.Ccy == Ccy.EURtoGBP)
                          && (Subscribed))
                  //.Throttle(TimeSpan.FromSeconds(1))
                  .Subscribe(PriceUpdate);
        }
        public void MarkAsReserved(IPricingService pricingService, DateTime expirationDate, IEnumerable<SeatQuantity> reservedSeats)
        {
            if (this.isConfirmed)
                throw new InvalidOperationException("Cannot modify a confirmed order.");

            var reserved = reservedSeats.ToList();

            var totals = pricingService.CalculateTotal(this.conferenceId, reserved.AsReadOnly());

            // Is there an order item which didn't get an exact reservation?
            if (this.seats.Any(item => item.Quantity != 0 && !reserved.Any(seat => seat.SeatType == item.SeatType && seat.Quantity == item.Quantity)))
            {
                this.Update(new OrderPartiallyReserved { ReservationExpiration = expirationDate, Seats = reserved.ToArray() });
            }
            else
            {
                this.Update(new OrderReservationCompleted { ReservationExpiration = expirationDate, Seats = reserved.ToArray() });
            }

            this.Update(new OrderTotalsCalculated { Total = totals.Total, Lines = totals.Lines.ToArray(), IsFreeOfCharge = totals.Total == 0m });
        }
示例#20
0
 public ProductService(IContentLoader contentLoader,
     IPromotionService promotionService,
     IPricingService pricingService,
     UrlResolver urlResolver,
     LinksRepository linksRepository,
     IRelationRepository relationRepository,
     ICurrentMarket currentMarket,
     ICurrencyService currencyService,
     AppContextFacade appContext,
     ReferenceConverter referenceConverter)
 {
     _contentLoader = contentLoader;
     _promotionService = promotionService;
     _pricingService = pricingService;
     _urlResolver = urlResolver;
     _linksRepository = linksRepository;
     _relationRepository = relationRepository;
     _preferredCulture = ContentLanguage.PreferredCulture;
     _currentMarket = currentMarket;
     _currencyService = currencyService;
     _appContext = appContext;
     _referenceConverter = referenceConverter;
 }
示例#21
0
 public Pricing4_UnitTests(MyFixture4 myFixture)
 {
     ps_ = myFixture.Resolve <IPricingService>();
 }
 public PricingSearchServiceImpl(Func <IPricingRepository> repositoryFactory, ICatalogSearchService catalogSearchService, IPricingService pricingService)
 {
     _repositoryFactory              = repositoryFactory;
     _catalogSearchService           = catalogSearchService;
     _pricesSortingAliases["prices"] = ReflectionUtility.GetPropertyName <coreModel.Price>(x => x.List);
     _pricingService = pricingService;
 }
示例#23
0
 public CatalogSearchServiceImpl(Func <WorkContext> workContextFactory, IVirtoCommerceCatalogApi catalogModuleApi, IPricingService pricingService, IVirtoCommerceInventoryApi inventoryModuleApi, IVirtoCommerceSearchApi searchApi, IPromotionEvaluator promotionEvaluator, ICustomerService customerService)
 {
     _workContextFactory = workContextFactory;
     _catalogModuleApi   = catalogModuleApi;
     _pricingService     = pricingService;
     _inventoryModuleApi = inventoryModuleApi;
     _searchApi          = searchApi;
     _promotionEvaluator = promotionEvaluator;
     _customerService    = customerService;
 }
示例#24
0
 private PricingExportImport GetImportExportProcessor(IPricingService pricingService, ISettingsManager settingsManager)
 {
     return(new PricingExportImport(pricingService, GetPricingSearchService(), settingsManager, GetJsonSerializer()));
 }
示例#25
0
 public PricingExportImport(IPricingService pricingService)
 {
     _pricingService = pricingService;
 }
示例#26
0
 public JstoreController(IAuthService authService, IPricingService pricingService)
 {
     this._authService    = authService;
     this._pricingService = pricingService;
 }
示例#27
0
        /// <summary>
        /// Creates a new order with the specified items and id.
        /// </summary>
        /// <remarks>
        /// The total is calculated at creation time. This was a change done in the V3 version of the system to optimize 
        /// the UI workflow. 
        /// See <see cref="http://go.microsoft.com/fwlink/p/?LinkID=258557"> Journey chapter 7</see> for more information on 
        /// the optimization and migration to V3.
        /// </remarks>
        /// <param name="id">The identifier.</param>
        /// <param name="conferenceId">The conference that the order applies to.</param>
        /// <param name="items">The desired seats to register to.</param>
        /// <param name="pricingService">Service that calculates the pricing.</param>
        public Order(Guid id, Guid conferenceId, IEnumerable<OrderItem> items, IPricingService pricingService)
            : this(id)
        {
            var all = ConvertItems(items);
            var totals = pricingService.CalculateTotal(conferenceId, all.AsReadOnly());

            this.Update(new OrderPlaced
            {
                ConferenceId = conferenceId,
                Seats = all,
                ReservationAutoExpiration = DateTime.UtcNow.Add(ReservationAutoExpiration),
                AccessCode = HandleGenerator.Generate(6)
            });
            this.Update(new OrderTotalsCalculated { Total = totals.Total, Lines = totals.Lines != null ? totals.Lines.ToArray() : null, IsFreeOfCharge = totals.Total == 0m });
        }
示例#28
0
 public ParsingService(IParcelFactory parcelFactory, IWeighingService weighingService, IPricingService pricingService)
 {
     this.parcelFactory   = parcelFactory;
     this.weighingService = weighingService;
     this.pricingService  = pricingService;
 }
 public PackageController(ApplicationDbContext dbContext, IPackageMapper packageMapper, IPricingService pricingService, IProductService productService) : base(dbContext)
 {
     DbContext       = dbContext;
     _productService = productService;
     _pricingService = pricingService;
     _packageMapper  = packageMapper;
 }
示例#30
0
 public CreateOfferByAgentHandler(IUnitOfWorkProvider uowProvider, IPricingService pricingService)
 {
     this.uowProvider    = uowProvider;
     this.pricingService = pricingService;
 }
 public PricingExportImport(IPricingService pricingService)
 {
     _pricingService = pricingService;
 }
示例#32
0
        public void TestInitialize()
        {
            CommonPath.BaseDirectory = "";

            _store = new Store {
                Id = "1"
            };
            tempWorkContext = new Mock <IWorkContext>();
            {
                tempWorkContext.Setup(instance => instance.WorkingCurrency).Returns(_currency);
                tempWorkContext.Setup(c => c.CurrentStore).Returns(_store);
                _workContext = tempWorkContext.Object;
            }

            tempDiscountServiceMock = new Mock <IDiscountService>();
            {
                _discountService = tempDiscountServiceMock.Object;
            }

            _categoryService   = new Mock <ICategoryService>().Object;
            _collectionService = new Mock <ICollectionService>().Object;
            _brandService      = new Mock <IBrandService>().Object;

            tempProductService = new Mock <IProductService>();
            {
                _productService = tempProductService.Object;
            }
            _productAttributeParser = new Mock <IProductAttributeParser>().Object;
            _shoppingCartSettings   = new ShoppingCartSettings();
            _catalogSettings        = new CatalogSettings();
            var eventPublisher = new Mock <IMediator>();

            _eventPublisher = eventPublisher.Object;

            _currencySettings = new CurrencySettings();
            _currencySettings.PrimaryExchangeRateCurrencyId = "1";
            _currencySettings.PrimaryStoreCurrencyId        = "1";
            //_currencyService = new Mock<ICurrencyService>().Object;
            _currency = new Currency {
                Id = "1", CurrencyCode = "USD", Rate = 1, Published = true, MidpointRoundId = System.MidpointRounding.ToEven, RoundingTypeId = RoundingType.Rounding001
            };

            var tempCurrency = new Mock <ICurrencyService>();
            {
                tempCurrency.Setup(instance => instance.GetPrimaryStoreCurrency()).Returns(Task.FromResult(_currency));
                //tempCurrency.Setup(instance => instance.ConvertToPrimaryStoreCurrency(It.IsAny<double>(), _currency)).ReturnsAsync(5);
                //_currencyService = tempCurrency.Object;
            }
            var cacheManager = new Mock <ICacheBase>().Object;
            IRepository <Currency> _currencyRepository;
            var tempCurrencyRepository = new Mock <IRepository <Currency> >();
            {
                var IMongoCollection = new Mock <MongoRepository <Currency> >().Object;
                IMongoCollection.Insert(_currency);


                tempCurrencyRepository.Setup(x => x.Table).Returns(IMongoCollection.Table);
                tempCurrencyRepository.Setup(x => x.GetByIdAsync(_currency.Id)).ReturnsAsync(_currency);
                _currencyRepository = tempCurrencyRepository.Object;
            }

            IAclService _aclService      = new Mock <IAclService>().Object;
            var         _serviceProvider = new Mock <IServiceProvider>().Object;

            _currencyService = new CurrencyService(
                cacheManager, _currencyRepository, _aclService,
                _currencySettings, _eventPublisher);


            _pricingService = new PricingService(
                _workContext,
                _discountService,
                _categoryService,
                _brandService,
                _collectionService,
                _productAttributeParser,
                _productService,
                _eventPublisher,
                _currencyService,
                _shoppingCartSettings,
                _catalogSettings);
        }
 public PricingController(IPricingService pricingService)
 {
     this.pricingService = pricingService ?? throw new ArgumentNullException(nameof(pricingService));
 }
示例#34
0
 public ProductPriceDocumentBuilder(IPricingService pricingService, ISettingsManager settingsManager)
 {
     _pricingService  = pricingService;
     _settingsManager = settingsManager;
 }
 // pass dependencies for this application service via constructor
 public CustomerApplicationService(IEventStore eventStore, IPricingService pricingService)
 {
     _eventStore     = eventStore;
     _pricingService = pricingService;
 }
 public InMemoryOrderService(IPricingService pricingService)
 {
     _pricingService = pricingService;
 }
 public OrderCommandHandler(IEventSourcedRepository <Order> repository, IPricingService pricingService)
 {
     this.repository     = repository;
     this.pricingService = pricingService;
 }
示例#38
0
 public HomeController(IApiKeyRepository apiKeyRepository, IPricingService pricingService)
 {
     _apiKeyRepository = apiKeyRepository;
     _pricingService = pricingService;
 }
示例#39
0
 public CheckOut(IPricingService pricingService)
 {
     _pricingService = pricingService;
 }
 public ShippingService(IDataService dataService, IPricingService pricingService)
 {
     _dataService    = dataService;
     _pricingService = pricingService;
 }
示例#41
0
 public ProductsController(IRepositoryService reposvc, IPricingService pricsvc)
 {
     _reposvc = reposvc;
     _pricsvc = pricsvc;
 }
示例#42
0
 public ProductPriceDocumentChangesProvider(IChangeLogSearchService changeLogSearchService, IPricingService pricingService, ISettingsManager settingsManager, Func <IPricingRepository> repositoryFactory)
 {
     _changeLogSearchService = changeLogSearchService;
     _pricingService         = pricingService;
     _settingsManager        = settingsManager;
     _repositoryFactory      = repositoryFactory;
 }
示例#43
0
 public MeasurementReceivedEventHandler(IChargingService chargingService, IPricingService pricingService, IEventBus eventBus)
 {
     _chargingService = chargingService;
     _pricingService  = pricingService;
     _eventBus        = eventBus;
 }
示例#44
0
 public PricingController(IPricingService pricingService)
 {
     this.pricingService = pricingService;
 }
 public DeletePricesProductChangedEvent(IPricingService pricingService, IPricingSearchService pricingSearchService)
 {
     _pricingService       = pricingService;
     _pricingSearchService = pricingSearchService;
 }
示例#46
0
 public PackageMapper(IPricingService pricingService, IProductService productService)
 {
     _pricingService = pricingService;
     _productService = productService;
 }
 public MerchandisingModulePriceController(IPricingService pricingService, CacheManager cacheManager)
 {
     _pricingService = pricingService;
     _cacheManager   = cacheManager;
 }
 // pass dependencies for this application service via constructor
 public CustomerApplicationService(IEventStore eventStore, IPricingService pricingService)
 {
     _eventStore = eventStore;
     _pricingService = pricingService;
 }
示例#49
0
 public PricingController(IPricingService pricingService, IVWHelper vwHelper)
 {
     _pricingService = pricingService;
     _vwHelper       = vwHelper;
 }
		public MerchandisingModulePriceController(IPricingService pricingService, CacheManager cacheManager)
		{
			_pricingService = pricingService;
			_cacheManager = cacheManager;
		}
示例#51
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="shoppingService">Shopping service.</param>
 /// <param name="pricingService">Pricing service.</param>
 public CalculationService(IShoppingService shoppingService, IPricingService pricingService)
 {
     mShoppingService = shoppingService;
     mPricingService  = pricingService;
 }
示例#52
0
        /// <summary>
        /// Updates the order with the specified items.
        /// </summary>
        /// <remarks>
        /// The total is now calculated at this time. This was a change done in the V3 version of the system to optimize 
        /// the UI workflow. 
        /// See <see cref="http://go.microsoft.com/fwlink/p/?LinkID=258557"> Journey chapter 7</see> for more information on 
        /// the optimization and migration to V3.
        /// </remarks>
        /// <param name="items">The desired seats to register to.</param>
        /// <param name="pricingService">Service that calculates the pricing.</param>
        public void UpdateSeats(IEnumerable<OrderItem> items, IPricingService pricingService)
        {
            var all = ConvertItems(items);
            var totals = pricingService.CalculateTotal(this.conferenceId, all.AsReadOnly());

            this.Update(new OrderUpdated { Seats = all });
            this.Update(new OrderTotalsCalculated { Total = totals.Total, Lines = totals.Lines != null ? totals.Lines.ToArray() : null, IsFreeOfCharge = totals.Total == 0m });
        }
示例#53
0
 public MovieService(MoviesContext context, IPricingService pricing)
 {
     context_ = context;
     pricing_ = pricing;
 }
示例#54
0
 public HomeController(IBookCatalogService bookCatalog, IPricingService priceService, IRatingService ratingService)
 {
     _bookCatalog   = bookCatalog;
     _priceService  = priceService;
     _ratingService = ratingService;
 }
 public PricingController(ILogger <PricingController> logger, IPricingService pricingService)
 {
     _logger         = logger;
     _pricingService = pricingService;
 }
示例#56
0
 public PricingExportPagedDataSourceFactory(IPricingSearchService searchService, IPricingService pricingService, IItemService itemService, ICatalogService catalogService)
 {
     _searchService  = searchService;
     _pricingService = pricingService;
     _itemService    = itemService;
     _catalogService = catalogService;
 }
示例#57
0
 public ValuationService(IPositionService positionSvc, IPricingService pxSvc)
 {
     _positionSvc = positionSvc;
     _pricingSvc  = pxSvc;
     _htStocks    = new ConcurrentDictionary <string, Stock>();
 }
示例#58
0
 public GetShoppingCartHandler(
     IPaymentService paymentService,
     IProductService productService,
     IPictureService pictureService,
     IProductAttributeParser productAttributeParser,
     ITranslationService translationService,
     ICheckoutAttributeFormatter checkoutAttributeFormatter,
     ICurrencyService currencyService,
     IDiscountService discountService,
     ICheckoutAttributeService checkoutAttributeService,
     IPermissionService permissionService,
     ITaxService taxService,
     IPriceFormatter priceFormatter,
     ICheckoutAttributeParser checkoutAttributeParser,
     IDownloadService downloadService,
     ICountryService countryService,
     IWarehouseService warehouseService,
     IProductAttributeFormatter productAttributeFormatter,
     IPricingService priceCalculationService,
     IDateTimeService dateTimeService,
     IVendorService vendorService,
     IGroupService groupService,
     IMediator mediator,
     IShoppingCartValidator shoppingCartValidator,
     IHttpContextAccessor httpContextAccessor,
     LinkGenerator linkGenerator,
     MediaSettings mediaSettings,
     OrderSettings orderSettings,
     ShoppingCartSettings shoppingCartSettings,
     CatalogSettings catalogSettings,
     ShippingSettings shippingSettings,
     CommonSettings commonSettings)
 {
     _paymentService             = paymentService;
     _productService             = productService;
     _pictureService             = pictureService;
     _productAttributeParser     = productAttributeParser;
     _translationService         = translationService;
     _checkoutAttributeFormatter = checkoutAttributeFormatter;
     _currencyService            = currencyService;
     _discountService            = discountService;
     _checkoutAttributeService   = checkoutAttributeService;
     _permissionService          = permissionService;
     _taxService                = taxService;
     _priceFormatter            = priceFormatter;
     _checkoutAttributeParser   = checkoutAttributeParser;
     _downloadService           = downloadService;
     _countryService            = countryService;
     _warehouseService          = warehouseService;
     _productAttributeFormatter = productAttributeFormatter;
     _pricingService            = priceCalculationService;
     _dateTimeService           = dateTimeService;
     _vendorService             = vendorService;
     _groupService              = groupService;
     _mediator = mediator;
     _shoppingCartValidator = shoppingCartValidator;
     _httpContextAccessor   = httpContextAccessor;
     _linkGenerator         = linkGenerator;
     _mediaSettings         = mediaSettings;
     _orderSettings         = orderSettings;
     _shoppingCartSettings  = shoppingCartSettings;
     _catalogSettings       = catalogSettings;
     _shippingSettings      = shippingSettings;
     _commonSettings        = commonSettings;
 }
 public void Initialize()
 {
     ChannelFactory<IPricingService> factory = new ChannelFactory<IPricingService>(new WSHttpBinding(), new EndpointAddress(ServiceBaseAddress));
     this.proxy = factory.CreateChannel();
     ((IClientChannel)proxy).Closed += delegate { factory.Close(); };
 }