Exemplo n.º 1
0
        public Order Remove(Product addition)
        {
            var orderAddition = Additions.FirstOrDefault(a => a.Product == addition);

            if (orderAddition == null)
            {
                return(this);
            }
            Price -= orderAddition.Product.Price;
            Container.DisposeInstance(orderAddition);
            Additions.Remove(orderAddition);

            return(this);
        }
        public PN_Counter Add(int value, Guid nodeId)
        {
            var element = Additions.FirstOrDefault(e => e.Node.Id == nodeId);

            if (element is null)
            {
                element = new CounterElement(value, nodeId);
            }
            else
            {
                element.Add(value);
            }

            var additions = Additions.Where(e => e.Node.Id != nodeId).ToImmutableHashSet();

            additions = additions.Add(element);

            return(new PN_Counter(additions, Subtractions));
        }
Exemplo n.º 3
0
        public string ValidateRemove(Product addition)
        {
            var orderAddition = Additions.FirstOrDefault(a => a.Product == addition);

            return(orderAddition == null ? "No such addition" : null);
        }