public Dictionary<ILineItem, List<ValidationIssue>> RequestInventory(ICart cart) { var validationIssues = new Dictionary<ILineItem, List<ValidationIssue>>(); cart.AdjustInventoryOrRemoveLineItems((item, issue) => validationIssues.AddValidationIssues(item, issue), _inventoryProcessor); return validationIssues; }
public Dictionary<ILineItem, List<ValidationIssue>> ValidateCart(ICart cart) { if (cart.Name.Equals(DefaultWishListName)) { return new Dictionary<ILineItem, List<ValidationIssue>>(); } var validationIssues = new Dictionary<ILineItem, List<ValidationIssue>>(); cart.ValidateOrRemoveLineItems((item, issue) => validationIssues.AddValidationIssues(item, issue), _lineItemValidator); cart.UpdatePlacedPriceOrRemoveLineItems(_customerContext.GetContactById(cart.CustomerId), (item, issue) => validationIssues.AddValidationIssues(item, issue), _placedPriceProcessor); cart.UpdateInventoryOrRemoveLineItems((item, issue) => validationIssues.AddValidationIssues(item, issue), _inventoryProcessor); cart.ApplyDiscounts(_promotionEngine, new PromotionEngineSettings()); return validationIssues; }