From 8421b2f7e859344b5fadfb2a11d265436c8c4729 Mon Sep 17 00:00:00 2001 From: Rob King Date: Thu, 4 Jun 2015 21:01:35 +0100 Subject: [PATCH] Changed to log error details in addition to file name --- .../Orchard.Recipes/Services/RecipeHarvester.cs | 15 ++++++--------- .../Orchard.Recipes/Services/RecipeParser.cs | 17 ++++------------- 2 files changed, 10 insertions(+), 22 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeHarvester.cs b/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeHarvester.cs index 46f6b9750..768261930 100644 --- a/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeHarvester.cs +++ b/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeHarvester.cs @@ -36,18 +36,15 @@ namespace Orchard.Recipes.Services { var recipeLocation = Path.Combine(extension.Location, extensionId, "Recipes"); var recipeFiles = _webSiteFolder.ListFiles(recipeLocation, true); - recipeFiles.Where(r => r.EndsWith(".recipe.xml", StringComparison.OrdinalIgnoreCase)).ToList().ForEach(r => - { - var recipe = _recipeParser.ParseRecipe(_webSiteFolder.ReadFile(r)); + recipeFiles.Where(r => r.EndsWith(".recipe.xml", StringComparison.OrdinalIgnoreCase)).ToList().ForEach(r => { - if (recipe == null) - { - Logger.Error(new Exception(string.Format("Invalid recipe file: {0}", r)), "Invalid recipe file: {0}", r); + try { + recipes.Add(_recipeParser.ParseRecipe(_webSiteFolder.ReadFile(r))); } - else - { - recipes.Add(recipe); + catch (Exception ex) { + Logger.Error(new Exception(string.Format("Invalid recipe file: {0}\nError: {1}", r, ex.Message)), "Invalid recipe file: {0}\nError: {1}", r, ex.Message); } + }); } else { diff --git a/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeParser.cs b/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeParser.cs index c2f53b2e0..697d1f95a 100644 --- a/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeParser.cs +++ b/src/Orchard.Web/Modules/Orchard.Recipes/Services/RecipeParser.cs @@ -20,21 +20,12 @@ namespace Orchard.Recipes.Services { var recipe = new Recipe(); try { - if (string.IsNullOrEmpty(recipeText)) - { - return null; + + if (string.IsNullOrEmpty(recipeText)) { + throw new Exception("Recipe is empty"); } - XElement recipeTree; - - try - { - recipeTree = XElement.Parse(recipeText, LoadOptions.PreserveWhitespace); - } - catch - { - return null; - } + XElement recipeTree = XElement.Parse(recipeText, LoadOptions.PreserveWhitespace); var recipeSteps = new List();