Exemplo n.º 1
0
        internal void AddFruit(IFruit fruit)
        {
            IDomainEvent ev;

            if (fruit is Apple)
            {
                ev = new AppleAddedEvent(fruit.Id, fruit.Weight, fruit.FruitCondition);
            }
            else if (fruit is Pear)
            {
                ev = new PearAddedEvent(fruit.Id, fruit.Weight, fruit.FruitCondition);
            }
            else
            {
                ev = new UnknownFruitAddedEvent(fruit.Id, fruit.Weight, fruit.FruitCondition);
            }

            _events.Add(ev);

            Apply((dynamic)ev);
        }
Exemplo n.º 2
0
 private void Apply(PearAddedEvent e)
 {
     _things.Add(new Pear(e.Id, e.Weight, e.FruitCondition));
 }
Exemplo n.º 3
0
 private void Apply(PearAddedEvent e)
 {
     _things["pears"].Add(e.Id);
     _weights.Add(e.Id, e.Weight);
 }