Example #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);
        }
Example #2
0
 private void Apply(AppleAddedEvent e)
 {
     _things.Add(new Apple(e.Id, e.Weight, e.FruitCondition));
 }
Example #3
0
 private void Apply(AppleAddedEvent e)
 {
     _things["apples"].Add(e.Id);
     _weights.Add(e.Id, e.Weight);
 }