public CreateOfferDraftCommandHandler(IHttpContextAccessor httpContextAccessor, IOfferRepository offerRepository,
                                       ICategoryRepository categoryRepository, IRequestOfferImagesProcessor offerImagesProcessor,
                                       IRequestDeliveryMethodExtractor deliveryMethodExtractor, IRequestKeyValueInfoExtractor keyValueInfoExtractor)
 {
     _httpContextAccessor     = httpContextAccessor ?? throw new ArgumentNullException(nameof(httpContextAccessor));
     _offerRepository         = offerRepository ?? throw new ArgumentNullException(nameof(offerRepository));
     _categoryRepository      = categoryRepository ?? throw new ArgumentNullException(nameof(categoryRepository));
     _offerImagesProcessor    = offerImagesProcessor ?? throw new ArgumentNullException(nameof(offerImagesProcessor));
     _deliveryMethodExtractor = deliveryMethodExtractor ?? throw new ArgumentNullException(nameof(deliveryMethodExtractor));
     _keyValueInfoExtractor   = keyValueInfoExtractor ?? throw new ArgumentNullException(nameof(keyValueInfoExtractor));
 }
 public UpdateActiveOfferCommandHandler(ILogger <UpdateActiveOfferCommandHandler> logger,
                                        IHttpContextAccessor httpContextAccessor, IOfferRepository offerRepository,
                                        ICategoryRepository categoryRepository, IRequestOfferImagesProcessor offerImagesProcessor,
                                        IRequestDeliveryMethodExtractor deliveryMethodExtractor, IRequestKeyValueInfoExtractor keyValueInfoExtractor)
 {
     _logger                  = logger ?? throw new ArgumentNullException(nameof(logger));
     _httpContext             = httpContextAccessor ?? throw new ArgumentNullException(nameof(httpContextAccessor));
     _offerRepository         = offerRepository ?? throw new ArgumentNullException(nameof(offerRepository));
     _categoryRepository      = categoryRepository ?? throw new ArgumentNullException(nameof(categoryRepository));
     _offerImagesProcessor    = offerImagesProcessor ?? throw new ArgumentNullException(nameof(offerImagesProcessor));
     _deliveryMethodExtractor = deliveryMethodExtractor ?? throw new ArgumentNullException(nameof(deliveryMethodExtractor));
     _keyValueInfoExtractor   = keyValueInfoExtractor ?? throw new ArgumentNullException(nameof(keyValueInfoExtractor));
 }