NotifierCore.Notifier.HotItemController.LoadRecipes C# (CSharp) Method

LoadRecipes() private method

private LoadRecipes ( ) : void
return void
        private void LoadRecipes()
        {
            String file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, recipesFile);
            if (File.Exists(file))
            {
                using (var streamReader = new StreamReader(file))
                {
                    using (var jsonTextReader = new JsonTextReader(streamReader))
                    {
                        JToken token = JObject.ReadFrom(jsonTextReader);
                        for (int i = 0; i < token.Count(); i++)
                        {
                            Recipe r = new Recipe()
                            {
                                Id = token[i]["ID"].ToObject<int>(),
                                ExternalId = token[i]["ExternalID"].ToObject<int>(),
                                DataId = token[i]["DataID"].ToObject<int>(),
                                Name = token[i]["Name"].ToObject<String>(),
                                Rating = token[i]["Rating"].ToObject<int>(),
                                Type = token[i]["Type"].ToObject<int>(),
                                Quantity = token[i]["Count"].ToObject<int>(),
                                CreatedItemId = token[i]["CreatedItemId"].ToObject<int>()
                            };

                            for (int j = 0; j < token[i]["Ingredients"].Count(); j++)
                            {
                                Recipe ingredients = new Recipe()
                                {
                                    ItemId = token[i]["Ingredients"][j]["ItemID"].ToObject<int>(),
                                    Quantity = token[i]["Ingredients"][j]["Count"].ToObject<int>(),
                                };

                                int dataId = ItemIdToDataId[ingredients.ItemId];
                                //SlimItem item = DataIdToSlimItem[dataId];
                                ingredients.DataId = dataId;

                                r.RecipeItems.Add(ingredients);
                            }

                            if (!CreatedIdToRecipe.ContainsKey(r.CreatedItemId))
                            {
                                CreatedIdToRecipe.Add(r.CreatedItemId, r);
                            }

                            RecipeIdToRecipe.Add(r.Id, r);

                            RecipeDB.Add(r);
                        }
                    }
                }
            }

            if (RecipesLoaded != null)
            {
                RecipesLoaded(this, new EventArgs());
            }
        }