public virtual bool RemoveProductDeliveryWindow(AbstractProductDeliveryWindow productDeliveryWindow) { if (productDeliveryWindow == null) { throw new ArgumentNullException(nameof(productDeliveryWindow)); } if (!_productDeliveryWindowsByNumber.Remove(productDeliveryWindow.WindowNumber)) { return(false); } ProductDeliveryWindowRemoved(this, productDeliveryWindow); return(true); }
public virtual void AddProductDeliveryWindow(AbstractProductDeliveryWindow productDeliveryWindow) { if (productDeliveryWindow == null) { throw new ArgumentNullException(nameof(productDeliveryWindow)); } if (_productDeliveryWindowsByNumber.ContainsKey(productDeliveryWindow.WindowNumber)) { throw new ArgumentException("ProductDeliveryWindow already contained in productDeliveryWindow collection.", nameof(productDeliveryWindow)); } ProductDeliveryWindowAdded(this, productDeliveryWindow); _productDeliveryWindowsByNumber.Add(productDeliveryWindow.WindowNumber, productDeliveryWindow); }
private void OnProductDeliveryWindowRemoved(object sender, AbstractProductDeliveryWindow productDeliveryWindow) => productDeliveryWindow.CompletedOrderTaken -= OnCompletedOrderTaken;