Esempio n. 1
0
        /// <summary>
        /// Track purchases to generate set-generation information.
        /// </summary>
        private void TrackPurchases(List <ItemPurchaseInformation> purchases)
        {
            purchases.ForEach(purchase =>
            {
                if (purchase.EventType != EventType.ItemPurchased)
                {
                    return;
                }

                // Update the tracker
                ItemPurchases.AddOrUpdate(purchase.ItemId,
                                          id =>
                {
                    var tracker = new ItemPurchaseTracker(id);
                    tracker.Increment(purchase);
                    return(tracker);
                },
                                          (id, tracker) =>
                {
                    tracker.Increment(purchase);
                    return(tracker);
                }
                                          );
            });
        }