From b0a4cc33339312df06feedf107b5bf0ab3ae6a61 Mon Sep 17 00:00:00 2001 From: James Jackson-South Date: Mon, 13 Jun 2016 22:43:05 +1000 Subject: [PATCH] Updates ImageProcessor :boom: - Update versions - Add ImageProcessorLogger --- build/NuSpecs/UmbracoCms.Core.nuspec | 4 +- .../Logging/ImageProcessorLogger.cs | 46 +++++++++++++++++++ src/Umbraco.Core/packages.config | 1 + src/Umbraco.Web.UI/packages.config | 4 +- 4 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 src/Umbraco.Core/Logging/ImageProcessorLogger.cs diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 72733c5800..077bafa760 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -32,8 +32,8 @@ - - + + diff --git a/src/Umbraco.Core/Logging/ImageProcessorLogger.cs b/src/Umbraco.Core/Logging/ImageProcessorLogger.cs new file mode 100644 index 0000000000..ac18f1d384 --- /dev/null +++ b/src/Umbraco.Core/Logging/ImageProcessorLogger.cs @@ -0,0 +1,46 @@ +namespace Umbraco.Core.Logging +{ + using System; + using System.Runtime.CompilerServices; + + using ImageProcessor.Common.Exceptions; + + /// + /// A logger for explicitly logging ImageProcessor exceptions. + /// + /// Creating this logger is enough for ImageProcessor to find and replace its in-built debug logger + /// without any additional configuration required. This class currently has to be public in order + /// to do so. + /// + /// + public sealed class ImageProcessorLogger : ImageProcessor.Common.Exceptions.ILogger + { + /// + /// Logs the specified message as an error. + /// + /// The type calling the logger. + /// The message to log. + /// The property or method name calling the log. + /// The line number where the method is called. + public void Log(string text, [CallerMemberName] string callerName = null, [CallerLineNumber] int lineNumber = 0) + { + // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. + var message = string.Format("{0} {1}:{2}", callerName, lineNumber, text); + LogHelper.Error(message, new ImageProcessingException(message)); + } + + /// + /// Logs the specified message as an error. + /// + /// The type calling the logger. + /// The message to log. + /// The property or method name calling the log. + /// The line number where the method is called. + public void Log(Type type, string text, [CallerMemberName] string callerName = null, [CallerLineNumber] int lineNumber = 0) + { + // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. + var message = string.Format("{0} {1}:{2}", callerName, lineNumber, text); + LogHelper.Error(type, message, new ImageProcessingException(message)); + } + } +} diff --git a/src/Umbraco.Core/packages.config b/src/Umbraco.Core/packages.config index b69be5b5cc..784daf9ea0 100644 --- a/src/Umbraco.Core/packages.config +++ b/src/Umbraco.Core/packages.config @@ -2,6 +2,7 @@ + diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config index 160a82c5fb..ae045c0ece 100644 --- a/src/Umbraco.Web.UI/packages.config +++ b/src/Umbraco.Web.UI/packages.config @@ -5,8 +5,8 @@ - - + +