public void SetProductCupon(IProduct product, IProductCupon cupon) { if (product == null) { throw new ArgumentNullException(nameof(product)); } var lastUsedCuppon = product.Cupon; _commandManager .ExecuteCommand( () => product.SetCupon(cupon), () => product.SetCupon(lastUsedCuppon)); }
public void SetCupon(IProductCupon cupon) { Cupon = cupon; }