From d7e3bce741cdea936c70ba351c8d6e26a88459da Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 09:10:53 +0200 Subject: [PATCH 01/85] Rename Error to align it with MS ILogger --- .../Composing/ComponentCollection.cs | 2 +- src/Umbraco.Core/Composing/Composers.cs | 2 +- src/Umbraco.Core/Composing/TypeFinder.cs | 4 ++-- .../Configuration/Grid/GridEditorsConfig.cs | 2 +- .../HealthChecks/ConfigurationService.cs | 4 ++-- src/Umbraco.Core/IO/MediaFileSystem.cs | 2 +- src/Umbraco.Core/IO/PhysicalFileSystem.cs | 12 +++++------ src/Umbraco.Core/Logging/ConsoleLogger.cs | 10 +++++----- .../Logging/DebugDiagnosticsLogger.cs | 10 +++++----- src/Umbraco.Core/Logging/DisposableTimer.cs | 2 +- src/Umbraco.Core/Logging/ILogger.cs | 10 +++++----- src/Umbraco.Core/Logging/LoggerExtensions.cs | 20 +++++++++---------- src/Umbraco.Core/Logging/NullLogger.cs | 10 +++++----- src/Umbraco.Core/Logging/ProfilingLogger.cs | 20 +++++++++---------- .../Mapping/ContentPropertyBasicMapper.cs | 2 +- .../Packaging/PackageActionRunner.cs | 4 ++-- .../Routing/UrlProviderExtensions.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 2 +- src/Umbraco.Core/Scheduling/KeepAlive.cs | 2 +- .../Scheduling/TempFileCleanup.cs | 2 +- .../UmbracoExamineIndex.cs | 2 +- ...aseServerRegistrarAndMessengerComponent.cs | 4 ++-- .../Examine/IndexRebuilder.cs | 2 +- .../Examine/MediaValueSetBuilder.cs | 2 +- .../HealthCheck/HealthCheckResults.cs | 2 +- .../Install/InstallHelper.cs | 4 ++-- .../InstallSteps/DatabaseConfigureStep.cs | 2 +- .../Logging/Serilog/SerilogLogger.cs | 10 +++++----- .../Logging/Viewer/SerilogJsonLogViewer.cs | 2 +- .../Manifest/ManifestParser.cs | 2 +- .../Media/UploadAutoFillProperties.cs | 2 +- .../Migrations/Install/DatabaseBuilder.cs | 2 +- .../Install/DatabaseSchemaCreator.cs | 2 +- .../DropDownPropertyEditorsMigration.cs | 2 +- .../MergeDateAndDateTimePropertyEditor.cs | 2 +- ...adioAndCheckboxPropertyEditorsMigration.cs | 2 +- .../Models/Mapping/PropertyTypeGroupMapper.cs | 2 +- .../Packaging/PackageDataInstallation.cs | 8 ++++---- .../Implement/ContentTypeRepository.cs | 2 +- .../Implement/ContentTypeRepositoryBase.cs | 4 ++-- .../SqlSyntax/SqlServerSyntaxProvider.cs | 2 +- .../Persistence/UmbracoDatabase.cs | 2 +- .../ImageCropperPropertyEditor.cs | 2 +- .../MultiUrlPickerValueEditor.cs | 4 ++-- .../RichTextEditorPastedImages.cs | 2 +- .../ValueConverters/GridValueConverter.cs | 2 +- .../ImageCropperValueConverter.cs | 2 +- .../ValueConverters/JsonValueConverter.cs | 2 +- .../Routing/NotFoundHandlerHelper.cs | 2 +- .../Runtime/CoreRuntime.cs | 2 +- .../Runtime/MainDomSemaphoreLock.cs | 2 +- .../Runtime/SqlMainDomLock.cs | 16 +++++++-------- .../Scheduling/BackgroundTaskRunner.cs | 6 +++--- .../Scheduling/LogScrubber.cs | 2 +- .../Scheduling/ScheduledPublishing.cs | 2 +- .../Search/BackgroundIndexRebuilder.cs | 2 +- .../Services/Implement/ContentService.cs | 10 +++++----- .../LocalizedTextServiceFileSources.cs | 2 +- .../Services/Implement/NotificationService.cs | 2 +- .../Sync/DatabaseServerMessenger.cs | 4 ++-- .../LiveModelsProvider.cs | 2 +- .../PureLiveModelFactory.cs | 2 +- .../ContentStore.cs | 4 ++-- .../LegacyXmlPublishedCache/PreviewContent.cs | 4 ++-- .../PublishedMediaCache.cs | 8 ++++---- .../LegacyXmlPublishedCache/XmlStore.cs | 8 ++++---- .../TestHelpers/TestWithDatabaseBase.cs | 2 +- .../Controllers/ContentController.cs | 2 +- .../Controllers/ContentTypeController.cs | 2 +- .../Controllers/DashboardController.cs | 6 +++--- .../Controllers/DictionaryController.cs | 4 ++-- .../ExamineManagementController.cs | 2 +- .../Controllers/MacrosController.cs | 4 ++-- .../Controllers/MediaController.cs | 2 +- .../Controllers/PackageInstallController.cs | 2 +- .../Controllers/RelationTypeController.cs | 4 ++-- .../FileUploadCleanupFilterAttribute.cs | 4 ++-- ...alidateAngularAntiForgeryTokenAttribute.cs | 2 +- .../HealthCheck/HealthCheckController.cs | 2 +- .../PropertyEditors/RteEmbedController.cs | 2 +- .../ImageCropperTemplateExtensions.cs | 2 +- .../Install/InstallApiController.cs | 6 +++--- .../Install/InstallAuthorizeAttribute.cs | 2 +- .../Middleware/UmbracoRequestMiddleware.cs | 6 +++--- src/Umbraco.Web/CdfLogger.cs | 4 ++-- src/Umbraco.Web/ImageProcessorLogger.cs | 4 ++-- src/Umbraco.Web/Logging/OwinLogger.cs | 2 +- .../Mvc/AdminTokenAuthorizeAttribute.cs | 2 +- .../AuthenticationOptionsExtensions.cs | 2 +- .../Security/MembershipProviderBase.cs | 2 +- src/Umbraco.Web/UmbracoApplicationBase.cs | 4 ++-- .../Filters/AngularAntiForgeryHelper.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 6 +++--- .../WebApi/UnhandledExceptionLogger.cs | 2 +- .../CDF/ClientDependencyConfiguration.cs | 6 +++--- 95 files changed, 187 insertions(+), 187 deletions(-) diff --git a/src/Umbraco.Core/Composing/ComponentCollection.cs b/src/Umbraco.Core/Composing/ComponentCollection.cs index 62b240f10f..a0c02c191b 100644 --- a/src/Umbraco.Core/Composing/ComponentCollection.cs +++ b/src/Umbraco.Core/Composing/ComponentCollection.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.Composing } catch (Exception ex) { - _logger.Error(ex, "Error while terminating component {ComponentType}.", componentType.FullName); + _logger.LogError(ex, "Error while terminating component {ComponentType}.", componentType.FullName); } } } diff --git a/src/Umbraco.Core/Composing/Composers.cs b/src/Umbraco.Core/Composing/Composers.cs index 004c2527e6..86c994c557 100644 --- a/src/Umbraco.Core/Composing/Composers.cs +++ b/src/Umbraco.Core/Composing/Composers.cs @@ -184,7 +184,7 @@ namespace Umbraco.Core.Composing { // in case of an error, force-dump everything to log _logger.Info("Composer Report:\r\n{ComposerReport}", GetComposersReport(requirements)); - _logger.Error(e, "Failed to sort composers."); + _logger.LogError(e, "Failed to sort composers."); throw; } diff --git a/src/Umbraco.Core/Composing/TypeFinder.cs b/src/Umbraco.Core/Composing/TypeFinder.cs index 3427c55731..82c5bdba9d 100644 --- a/src/Umbraco.Core/Composing/TypeFinder.cs +++ b/src/Umbraco.Core/Composing/TypeFinder.cs @@ -297,7 +297,7 @@ namespace Umbraco.Core.Composing } catch (TypeLoadException ex) { - _logger.Error(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); + _logger.LogError(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); continue; } @@ -372,7 +372,7 @@ namespace Umbraco.Core.Composing } catch (TypeLoadException ex) { - _logger.Error(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); + _logger.LogError(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); continue; } diff --git a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs index 6cf985fecb..882d9073a9 100644 --- a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs +++ b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs @@ -47,7 +47,7 @@ namespace Umbraco.Core.Configuration.Grid } catch (Exception ex) { - _logger.Error(ex, "Could not parse the contents of grid.editors.config.js into a JSON array '{Json}", sourceString); + _logger.LogError(ex, "Could not parse the contents of grid.editors.config.js into a JSON array '{Json}", sourceString); } } diff --git a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs index a4554a52fd..d8b4eb6c99 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs @@ -61,7 +61,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Config } catch (Exception ex) { - _logger.Error(ex, "Error trying to get configuration value"); + _logger.LogError(ex, "Error trying to get configuration value"); return new ConfigurationServiceResult { Success = false, @@ -107,7 +107,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Config } catch (Exception ex) { - _logger.Error(ex, "Error trying to update configuration"); + _logger.LogError(ex, "Error trying to update configuration"); return new ConfigurationServiceResult { Success = false, diff --git a/src/Umbraco.Core/IO/MediaFileSystem.cs b/src/Umbraco.Core/IO/MediaFileSystem.cs index 1df4e4a0fb..a16c9822c8 100644 --- a/src/Umbraco.Core/IO/MediaFileSystem.cs +++ b/src/Umbraco.Core/IO/MediaFileSystem.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.IO } catch (Exception e) { - _logger.Error(e, "Failed to delete media file '{File}'.", file); + _logger.LogError(e, "Failed to delete media file '{File}'.", file); } }); } diff --git a/src/Umbraco.Core/IO/PhysicalFileSystem.cs b/src/Umbraco.Core/IO/PhysicalFileSystem.cs index aa9d6174dd..22dfd8c43e 100644 --- a/src/Umbraco.Core/IO/PhysicalFileSystem.cs +++ b/src/Umbraco.Core/IO/PhysicalFileSystem.cs @@ -87,11 +87,11 @@ namespace Umbraco.Core.IO } catch (UnauthorizedAccessException ex) { - _logger.Error(ex, "Not authorized to get directories for '{Path}'", fullPath); + _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); } catch (DirectoryNotFoundException ex) { - _logger.Error(ex, "Directory not found for '{Path}'", fullPath); + _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); } return Enumerable.Empty(); @@ -123,7 +123,7 @@ namespace Umbraco.Core.IO } catch (DirectoryNotFoundException ex) { - _logger.Error(ex, "Directory not found for '{Path}'", fullPath); + _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); } } @@ -203,11 +203,11 @@ namespace Umbraco.Core.IO } catch (UnauthorizedAccessException ex) { - _logger.Error(ex, "Not authorized to get directories for '{Path}'", fullPath); + _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); } catch (DirectoryNotFoundException ex) { - _logger.Error(ex, "Directory not found for '{FullPath}'", fullPath); + _logger.LogError(ex, "Directory not found for '{FullPath}'", fullPath); } return Enumerable.Empty(); @@ -240,7 +240,7 @@ namespace Umbraco.Core.IO } catch (FileNotFoundException ex) { - _logger.Error(ex.InnerException, "DeleteFile failed with FileNotFoundException for '{Path}'", fullPath); + _logger.LogError(ex.InnerException, "DeleteFile failed with FileNotFoundException for '{Path}'", fullPath); } } diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index 275b8d988b..b4911d489d 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -42,30 +42,30 @@ namespace Umbraco.Core.Logging Console.WriteLine("FATAL {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void Error(Type reporting, Exception exception, string message) + public void LogError(Type reporting, Exception exception, string message) { Console.WriteLine("ERROR {0} - {1}", reporting.Name, message); Console.WriteLine(exception); } - public void Error(Type reporting, Exception exception) + public void LogError(Type reporting, Exception exception) { Console.WriteLine("ERROR {0}", reporting.Name); Console.WriteLine(exception); } - public void Error(Type reporting, string message) + public void LogError(Type reporting, string message) { Console.WriteLine("ERROR {0} - {1}", reporting.Name, message); } - public void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { Console.WriteLine("ERROR {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); Console.WriteLine(exception); } - public void Error(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) { Console.WriteLine("ERROR {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); } diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index 552daba713..1c3af3b36b 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -48,31 +48,31 @@ namespace Umbraco.Core.Logging } /// - public void Error(Type reporting, Exception exception, string message) + public void LogError(Type reporting, Exception exception, string message) { System.Diagnostics.Debug.WriteLine(message + Environment.NewLine + exception, reporting.FullName); } /// - public void Error(Type reporting, Exception exception) + public void LogError(Type reporting, Exception exception) { System.Diagnostics.Debug.WriteLine(Environment.NewLine + exception, reporting.FullName); } /// - public void Error(Type reporting, string message) + public void LogError(Type reporting, string message) { System.Diagnostics.Debug.WriteLine(message); } /// - public void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, reporting.FullName); } /// - public void Error(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); } diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index d854813b7d..9ae1dd8e71 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -84,7 +84,7 @@ namespace Umbraco.Core.Logging { if (_failed) { - _logger.Error(_loggerType, _failException, "{FailMessage} ({Duration}ms) [Timing {TimingId}]", _failMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.LogError(_loggerType, _failException, "{FailMessage} ({Duration}ms) [Timing {TimingId}]", _failMessage, Stopwatch.ElapsedMilliseconds, _timingId); } else switch (_level) { diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index fe7d798ebf..737b4c03f1 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -68,7 +68,7 @@ namespace Umbraco.Core.Logging /// The reporting type. /// An exception. /// A message. - void Error(Type reporting, Exception exception, string message); + void LogError(Type reporting, Exception exception, string message); /// /// Logs an error exception. @@ -76,14 +76,14 @@ namespace Umbraco.Core.Logging /// The reporting type. /// An exception. /// The message string is unspecified and is implementation-specific. - void Error(Type reporting, Exception exception); + void LogError(Type reporting, Exception exception); /// /// Logs an error message. /// /// The reporting type. /// A message. - void Error(Type reporting, string message); + void LogError(Type reporting, string message); /// /// Logs an error message with an exception. @@ -92,7 +92,7 @@ namespace Umbraco.Core.Logging /// An exception. /// A message template. /// Property values. - void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); + void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); /// /// Logs an error message. @@ -100,7 +100,7 @@ namespace Umbraco.Core.Logging /// The reporting type. /// A message template. /// Property values. - void Error(Type reporting, string messageTemplate, params object[] propertyValues); + void LogError(Type reporting, string messageTemplate, params object[] propertyValues); /// /// Logs a warning message. diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index 3b105ed888..5b86e28946 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -23,8 +23,8 @@ namespace Umbraco.Core.Logging /// The logger. /// A message. /// An exception. - public static void Error(this ILogger logger, Exception exception, string message) - => logger.Error(typeof(T), exception, message); + public static void LogError(this ILogger logger, Exception exception, string message) + => logger.LogError(typeof(T), exception, message); /// /// Logs an error message with an exception. @@ -34,8 +34,8 @@ namespace Umbraco.Core.Logging /// An exception. /// A message template. /// Property values. - public static void Error(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.Error(typeof(T), exception, messageTemplate, propertyValues); + public static void LogError(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) + => logger.LogError(typeof(T), exception, messageTemplate, propertyValues); /// /// Logs an error exception. @@ -43,8 +43,8 @@ namespace Umbraco.Core.Logging /// The reporting type. /// The logger. /// An exception. - public static void Error(this ILogger logger, Exception exception) - => logger.Error(typeof(T), exception); + public static void LogError(this ILogger logger, Exception exception) + => logger.LogError(typeof(T), exception); /// /// Logs an error message. @@ -52,8 +52,8 @@ namespace Umbraco.Core.Logging /// The reporting type. /// The logger. /// A message. - public static void Error(this ILogger logger, string message) - => logger.Error(typeof(T), message); + public static void LogError(this ILogger logger, string message) + => logger.LogError(typeof(T), message); /// /// Logs an error message. @@ -62,8 +62,8 @@ namespace Umbraco.Core.Logging /// The logger. /// A message template. /// Property values. - public static void Error(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.Error(typeof(T), messageTemplate, propertyValues); + public static void LogError(this ILogger logger, string messageTemplate, params object[] propertyValues) + => logger.LogError(typeof(T), messageTemplate, propertyValues); /// /// Logs a warning message. diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index 7945e0b965..3b40efe78e 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -31,27 +31,27 @@ namespace Umbraco.Core.Logging } - public void Error(Type reporting, Exception exception, string message) + public void LogError(Type reporting, Exception exception, string message) { } - public void Error(Type reporting, Exception exception) + public void LogError(Type reporting, Exception exception) { } - public void Error(Type reporting, string message) + public void LogError(Type reporting, string message) { } - public void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { } - public void Error(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index d642926147..3d323fe0dd 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -82,20 +82,20 @@ namespace Umbraco.Core.Logging public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) => Logger.Fatal(reporting, messageTemplate, propertyValues); - public void Error(Type reporting, Exception exception, string message) - => Logger.Error(reporting, exception, message); + public void LogError(Type reporting, Exception exception, string message) + => Logger.LogError(reporting, exception, message); - public void Error(Type reporting, Exception exception) - => Logger.Error(reporting, exception); + public void LogError(Type reporting, Exception exception) + => Logger.LogError(reporting, exception); - public void Error(Type reporting, string message) - => Logger.Error(reporting, message); + public void LogError(Type reporting, string message) + => Logger.LogError(reporting, message); - public void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - => Logger.Error(reporting, exception, messageTemplate, propertyValues); + public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + => Logger.LogError(reporting, exception, messageTemplate, propertyValues); - public void Error(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Error(reporting, messageTemplate, propertyValues); + public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) + => Logger.LogError(reporting, messageTemplate, propertyValues); public void Warn(Type reporting, string message) => Logger.Warn(reporting, message); diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs index a46a0b0d86..2f97a76b3c 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs @@ -38,7 +38,7 @@ namespace Umbraco.Web.Models.Mapping var editor = _propertyEditors[property.PropertyType.PropertyEditorAlias]; if (editor == null) { - _logger.Error>( + _logger.LogError>( new NullReferenceException("The property editor with alias " + property.PropertyType.PropertyEditorAlias + " does not exist"), "No property editor '{PropertyEditorAlias}' found, converting to a Label", property.PropertyType.PropertyEditorAlias); diff --git a/src/Umbraco.Core/Packaging/PackageActionRunner.cs b/src/Umbraco.Core/Packaging/PackageActionRunner.cs index 42a1a7042d..6054f6067d 100644 --- a/src/Umbraco.Core/Packaging/PackageActionRunner.cs +++ b/src/Umbraco.Core/Packaging/PackageActionRunner.cs @@ -34,7 +34,7 @@ namespace Umbraco.Core.Packaging catch (Exception ex) { e.Add($"{ipa.Alias()} - {ex.Message}"); - _logger.Error(ex, "Error loading package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); + _logger.LogError(ex, "Error loading package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); } } @@ -56,7 +56,7 @@ namespace Umbraco.Core.Packaging catch (Exception ex) { e.Add($"{ipa.Alias()} - {ex.Message}"); - _logger.Error(ex, "Error undoing package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); + _logger.LogError(ex, "Error undoing package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); } } errors = e; diff --git a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs index 352209b987..18658c8194 100644 --- a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs +++ b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs @@ -123,7 +123,7 @@ namespace Umbraco.Web.Routing } catch (Exception ex) { - logger.Error(ex, "GetUrl exception."); + logger.LogError(ex, "GetUrl exception."); url = "#ex"; } diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index 81db1b700d..9a20e65422 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -121,7 +121,7 @@ namespace Umbraco.Core.Runtime } catch (Exception e) { - _logger.Error(e, "Error while running callback"); + _logger.LogError(e, "Error while running callback"); continue; } } diff --git a/src/Umbraco.Core/Scheduling/KeepAlive.cs b/src/Umbraco.Core/Scheduling/KeepAlive.cs index a47080912c..5953d60822 100644 --- a/src/Umbraco.Core/Scheduling/KeepAlive.cs +++ b/src/Umbraco.Core/Scheduling/KeepAlive.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.Error(ex, "Keep alive failed (at '{keepAlivePingUrl}').", keepAlivePingUrl); + _logger.LogError(ex, "Keep alive failed (at '{keepAlivePingUrl}').", keepAlivePingUrl); } } diff --git a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs index 6ac1ff61fe..5651efea10 100644 --- a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs +++ b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs @@ -66,7 +66,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.Error(ex, "Could not delete temp file {FileName}", file.FullName); + _logger.LogError(ex, "Could not delete temp file {FileName}", file.FullName); } } } diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index 696c6a58a5..b904ce1f36 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -118,7 +118,7 @@ namespace Umbraco.Examine /// protected override void OnIndexingError(IndexingErrorEventArgs ex) { - ProfilingLogger.Error(GetType(), ex.InnerException, ex.Message); + ProfilingLogger.LogError(GetType(), ex.InnerException, ex.Message); base.OnIndexingError(ex); } diff --git a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs index c8bc02f604..200e3a578c 100644 --- a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs @@ -225,7 +225,7 @@ namespace Umbraco.Web.Compose } catch (Exception e) { - _logger.Error(e, "Failed (will repeat)."); + _logger.LogError(e, "Failed (will repeat)."); } return true; // repeat } @@ -268,7 +268,7 @@ namespace Umbraco.Web.Compose } catch (Exception ex) { - _logger.Error(ex, "Failed to update server record in database."); + _logger.LogError(ex, "Failed to update server record in database."); return false; // probably stop if we have an error } } diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index d9bef752a9..7cf0106903 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -65,7 +65,7 @@ namespace Umbraco.Examine } catch (Exception e) { - _logger.Error(e, "Index populating failed for populator {Populator}", populator.GetType()); + _logger.LogError(e, "Index populating failed for populator {Populator}", populator.GetType()); } } } diff --git a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs index e9aa87a25c..5103a7dd64 100644 --- a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs @@ -55,7 +55,7 @@ namespace Umbraco.Examine } catch (Exception ex) { - _logger.Error(ex, $"Could not Deserialize ImageCropperValue for item with key {m.Key} "); + _logger.LogError(ex, $"Could not Deserialize ImageCropperValue for item with key {m.Key} "); } if (cropper != null) diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index 8f3c05f5bd..b38e965ea8 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -27,7 +27,7 @@ namespace Umbraco.Web.HealthCheck } catch (Exception ex) { - Logger.Error(ex, "Error running scheduled health check: {HealthCheckName}", t.Name); + Logger.LogError(ex, "Error running scheduled health check: {HealthCheckName}", t.Name); var message = $"Health check failed with exception: {ex.Message}. See logs for details."; return new List { diff --git a/src/Umbraco.Infrastructure/Install/InstallHelper.cs b/src/Umbraco.Infrastructure/Install/InstallHelper.cs index 1333363355..aaba1b458b 100644 --- a/src/Umbraco.Infrastructure/Install/InstallHelper.cs +++ b/src/Umbraco.Infrastructure/Install/InstallHelper.cs @@ -103,7 +103,7 @@ namespace Umbraco.Web.Install } catch (Exception ex) { - _logger.Error(ex, "An error occurred in InstallStatus trying to check upgrades"); + _logger.LogError(ex, "An error occurred in InstallStatus trying to check upgrades"); } } @@ -154,7 +154,7 @@ namespace Umbraco.Web.Install } catch (AggregateException ex) { - _logger.Error(ex, "Could not download list of available starter kits"); + _logger.LogError(ex, "Could not download list of available starter kits"); } return packages; diff --git a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs index 0c88c7a096..68a23bf6b2 100644 --- a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs +++ b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs @@ -119,7 +119,7 @@ namespace Umbraco.Web.Install.InstallSteps } catch (Exception ex) { - _logger.Error(ex, "An error occurred, reconfiguring..."); + _logger.LogError(ex, "An error occurred, reconfiguring..."); //something went wrong, could not connect so probably need to reconfigure return true; } diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs index 38af9554ab..ce27a9e1b2 100644 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs @@ -115,14 +115,14 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Error(Type reporting, Exception exception, string message) + public void LogError(Type reporting, Exception exception, string message) { var logger = LoggerFor(reporting); logger.Error(exception, message); } /// - public void Error(Type reporting, Exception exception) + public void LogError(Type reporting, Exception exception) { var logger = LoggerFor(reporting); var message = "Exception"; @@ -130,19 +130,19 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Error(Type reporting, string message) + public void LogError(Type reporting, string message) { LoggerFor(reporting).Error(message); } /// - public void Error(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) { LoggerFor(reporting).Error(messageTemplate, propertyValues); } /// - public void Error(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { var logger = LoggerFor(reporting); logger.Error(exception, messageTemplate, propertyValues); diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs index 5bf079c1b4..bde6d8e919 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs @@ -128,7 +128,7 @@ namespace Umbraco.Core.Logging.Viewer { // As we are reading/streaming one line at a time in the JSON file // Thus we can not report the line number, as it will always be 1 - _logger.Error(ex, "Unable to parse a line in the JSON log file"); + _logger.LogError(ex, "Unable to parse a line in the JSON log file"); evt = null; return true; diff --git a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs index c6ffb9b6ef..05d6ab73fc 100644 --- a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs +++ b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs @@ -115,7 +115,7 @@ namespace Umbraco.Core.Manifest } catch (Exception e) { - _logger.Error(e, "Failed to parse manifest at '{Path}', ignoring.", path); + _logger.LogError(e, "Failed to parse manifest at '{Path}', ignoring.", path); } } diff --git a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs index 05d4744526..c675fa4079 100644 --- a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs +++ b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs @@ -74,7 +74,7 @@ namespace Umbraco.Web.Media } catch (Exception ex) { - _logger.Error(typeof(UploadAutoFillProperties), ex, "Could not populate upload auto-fill properties for file '{File}'.", filepath); + _logger.LogError(typeof(UploadAutoFillProperties), ex, "Could not populate upload auto-fill properties for file '{File}'.", filepath); ResetProperties(content, autoFillConfig, culture, segment); } } diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index 98d50d61b1..b5ff8f1c19 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -449,7 +449,7 @@ namespace Umbraco.Core.Migrations.Install private Result HandleInstallException(Exception ex) { - _logger.Error(ex, "Database configuration failed"); + _logger.LogError(ex, "Database configuration failed"); if (_databaseSchemaValidationResult != null) { diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs index 921ba0b3d5..d133819ec9 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs @@ -111,7 +111,7 @@ namespace Umbraco.Core.Migrations.Install { //swallow this for now, not sure how best to handle this with diff databases... though this is internal // and only used for unit tests. If this fails its because the table doesn't exist... generally! - _logger.Error(ex, "Could not drop table {TableName}", tableName); + _logger.LogError(ex, "Could not drop table {TableName}", tableName); } } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs index 243446c5df..6e88ab4db2 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.Error( + Logger.LogError( ex, "Invalid configuration: \"{Configuration}\", cannot convert editor.", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs index 4ab5d386b0..4efb685cf9 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs @@ -40,7 +40,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.Error( + Logger.LogError( ex, "Invalid property editor configuration detected: \"{Configuration}\", cannot convert editor, values will be cleared", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs index cdd330f190..35e5f71ffe 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs @@ -55,7 +55,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.Error( + Logger.LogError( ex, "Invalid configuration: \"{Configuration}\", cannot convert editor.", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs index 32ea6fce3f..99708d3fad 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs @@ -210,7 +210,7 @@ namespace Umbraco.Web.Models.Mapping //fixme: Don't explode if we can't find this, log an error and change this to a label if (propertyEditor == null) { - _logger.Error(GetType(), + _logger.LogError(GetType(), "No property editor could be resolved with the alias: {PropertyEditorAlias}, defaulting to label", p.PropertyEditorAlias); propertyEditorAlias = Constants.PropertyEditors.Aliases.Label; propertyEditor = _propertyEditors[propertyEditorAlias]; diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index 6b1aa96e69..b2d3c4dc73 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -539,7 +539,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _contentTypeService.CreateContainer(-1, rootFolder); if (tryCreateFolder == false) { - _logger.Error(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); throw tryCreateFolder.Exception; } var rootFolderId = tryCreateFolder.Result.Entity.Id; @@ -573,7 +573,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _contentTypeService.CreateContainer(current.Id, folderName); if (tryCreateFolder == false) { - _logger.Error(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); throw tryCreateFolder.Exception; } return _contentTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); @@ -952,7 +952,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _dataTypeService.CreateContainer(-1, rootFolder); if (tryCreateFolder == false) { - _logger.Error(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); throw tryCreateFolder.Exception; } current = _dataTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); @@ -985,7 +985,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _dataTypeService.CreateContainer(current.Id, folderName); if (tryCreateFolder == false) { - _logger.Error(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); throw tryCreateFolder.Exception; } return _dataTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs index af0f58eb0e..94d7b8c076 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs @@ -226,7 +226,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement if (string.IsNullOrWhiteSpace(entity.Alias)) { var ex = new Exception($"ContentType '{entity.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.Error("ContentType '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", entity.Name); + Logger.LogError("ContentType '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", entity.Name); throw ex; } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs index 5bfbd86486..96e98ae9c4 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs @@ -1216,7 +1216,7 @@ AND umbracoNode.id <> @id", { var ex = new InvalidOperationException($"Property Type '{pt.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.Error>("Property Type '{PropertyTypeName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", + Logger.LogError>("Property Type '{PropertyTypeName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", pt.Name); throw ex; @@ -1229,7 +1229,7 @@ AND umbracoNode.id <> @id", { var ex = new InvalidOperationException($"{typeof(TEntity).Name} '{entity.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.Error>("{EntityTypeName} '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", + Logger.LogError>("{EntityTypeName} '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", typeof(TEntity).Name, entity.Name); diff --git a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs index ec4cfca498..375ddac767 100644 --- a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs +++ b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs @@ -161,7 +161,7 @@ namespace Umbraco.Core.Persistence.SqlSyntax } catch (Exception e) { - logger.Error(e, "Failed to detected SqlServer version."); + logger.LogError(e, "Failed to detected SqlServer version."); version = new ServerVersionInfo(); // all unknown } } diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs index a4b4afbe25..deeaa4bc5f 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs @@ -226,7 +226,7 @@ namespace Umbraco.Core.Persistence protected override void OnException(Exception ex) { - _logger.Error(ex, "Exception ({InstanceId}).", InstanceId); + _logger.LogError(ex, "Exception ({InstanceId}).", InstanceId); _logger.Debug("At:\r\n{StackTrace}", Environment.StackTrace); if (EnableSqlTrace == false) _logger.Debug("Sql:\r\n{Sql}", CommandToString(LastSQL, LastArgs)); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs index 586a120609..2a00d2f788 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs @@ -103,7 +103,7 @@ namespace Umbraco.Web.PropertyEditors catch (Exception ex) { if (writeLog) - Logger.Error(ex, "Could not parse image cropper value '{Json}'", value); + Logger.LogError(ex, "Could not parse image cropper value '{Json}'", value); return null; } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs index 63814c05c7..67feea6cac 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs @@ -122,7 +122,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.Error("Error getting links", ex); + _logger.LogError("Error getting links", ex); } return base.ToEditor(property, culture, segment); @@ -157,7 +157,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.Error("Error saving links", ex); + _logger.LogError("Error saving links", ex); } return base.FromEditor(editorValue, currentValue); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs index 58a280e5db..81b3ba7a63 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs @@ -144,7 +144,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.Error(typeof(HtmlImageSourceParser), ex, "Could not delete temp file or folder {FileName}", absoluteTempImagePath); + _logger.LogError(typeof(HtmlImageSourceParser), ex, "Could not delete temp file or folder {FileName}", absoluteTempImagePath); } } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs index 3a35bdfc9a..ae34e4fe51 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs @@ -92,7 +92,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters } catch (Exception ex) { - Current.Logger.Error(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); + Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs index 0043eeed72..95352bffcf 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs @@ -44,7 +44,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters catch (Exception ex) { // cannot deserialize, assume it may be a raw image url - Current.Logger.Error(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); + Current.Logger.LogError(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); value = new ImageCropperValue { Src = sourceString }; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs index 3e6abdac64..6354b6c1a7 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs @@ -58,7 +58,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters } catch (Exception ex) { - Current.Logger.Error(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); + Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); } } diff --git a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs index 335e1f868a..d5b783e324 100644 --- a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs +++ b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs @@ -107,7 +107,7 @@ namespace Umbraco.Web.Routing } catch (Exception ex) { - Current.Logger.Error(ex, "Could not parse xpath expression: {ContentXPath}", errorPage.ContentXPath); + Current.Logger.LogError(ex, "Could not parse xpath expression: {ContentXPath}", errorPage.ContentXPath); return null; } } diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 2a925f9de9..08f0d8d378 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -270,7 +270,7 @@ namespace Umbraco.Core.Runtime var msg = "Unhandled exception in AppDomain"; if (isTerminating) msg += " (terminating)"; msg += "."; - Logger.Error(exception, msg); + Logger.LogError(exception, msg); }; } diff --git a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs index 419a1781a2..08e038a501 100644 --- a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs @@ -52,7 +52,7 @@ namespace Umbraco.Core.Runtime } catch (TimeoutException ex) { - _logger.Error(ex); + _logger.LogError(ex); return Task.FromResult(false); } finally diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index d3bb7eefac..bdb013f83b 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -78,7 +78,7 @@ namespace Umbraco.Core.Runtime { if (IsLockTimeoutException(ex)) { - _logger.Error(ex, "Sql timeout occurred, could not acquire MainDom."); + _logger.LogError(ex, "Sql timeout occurred, could not acquire MainDom."); _errorDuringAcquiring = true; return false; } @@ -103,7 +103,7 @@ namespace Umbraco.Core.Runtime catch (Exception ex) { // unexpected - _logger.Error(ex, "Unexpected error, cannot acquire MainDom"); + _logger.LogError(ex, "Unexpected error, cannot acquire MainDom"); _errorDuringAcquiring = true; return false; } @@ -186,7 +186,7 @@ namespace Umbraco.Core.Runtime } catch (Exception ex) { - _logger.Error(ex, "Unexpected error during listening."); + _logger.LogError(ex, "Unexpected error during listening."); // We need to keep on listening unless we've been notified by our own AppDomain to shutdown since // we don't want to shutdown resources controlled by MainDom inadvertently. We'll just keep listening otherwise. @@ -277,12 +277,12 @@ namespace Umbraco.Core.Runtime { if (IsLockTimeoutException(ex as SqlException)) { - _logger.Error(ex, "Sql timeout occurred, waiting for existing MainDom is canceled."); + _logger.LogError(ex, "Sql timeout occurred, waiting for existing MainDom is canceled."); _errorDuringAcquiring = true; return false; } // unexpected - _logger.Error(ex, "Unexpected error, waiting for existing MainDom is canceled."); + _logger.LogError(ex, "Unexpected error, waiting for existing MainDom is canceled."); _errorDuringAcquiring = true; return false; } @@ -321,11 +321,11 @@ namespace Umbraco.Core.Runtime if (IsLockTimeoutException(ex as SqlException)) { // something is wrong, we cannot acquire, not much we can do - _logger.Error(ex, "Sql timeout occurred, could not forcibly acquire MainDom."); + _logger.LogError(ex, "Sql timeout occurred, could not forcibly acquire MainDom."); _errorDuringAcquiring = true; return false; } - _logger.Error(ex, "Unexpected error, could not forcibly acquire MainDom."); + _logger.LogError(ex, "Unexpected error, could not forcibly acquire MainDom."); _errorDuringAcquiring = true; return false; } @@ -409,7 +409,7 @@ namespace Umbraco.Core.Runtime } catch (Exception ex) { - _logger.Error(ex, "Unexpected error during dipsose."); + _logger.LogError(ex, "Unexpected error during dipsose."); } finally { diff --git a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs index a9fff229f2..9aac31a562 100644 --- a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs +++ b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs @@ -414,7 +414,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.Error(ex, "{LogPrefix} Task runner exception", _logPrefix); + _logger.LogError(ex, "{LogPrefix} Task runner exception", _logPrefix); } } } @@ -573,7 +573,7 @@ namespace Umbraco.Web.Scheduling catch (Exception ex) { - _logger.Error(ex, "{LogPrefix} Task has failed", _logPrefix); + _logger.LogError(ex, "{LogPrefix} Task has failed", _logPrefix); } } @@ -617,7 +617,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.Error(ex, "{LogPrefix} {Name} exception occurred", _logPrefix, name); + _logger.LogError(ex, "{LogPrefix} {Name} exception occurred", _logPrefix, name); } } diff --git a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs index b3e30a7353..22df19cb2a 100644 --- a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs +++ b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs @@ -41,7 +41,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.Error(ex, "Unable to locate a log scrubbing maximum age. Defaulting to 24 hours."); + _logger.LogError(ex, "Unable to locate a log scrubbing maximum age. Defaulting to 24 hours."); } return maximumAge; diff --git a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs index 6ec0250d90..e5c35a32aa 100644 --- a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs +++ b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs @@ -98,7 +98,7 @@ namespace Umbraco.Web.Scheduling catch (Exception ex) { // important to catch *everything* to ensure the task repeats - _logger.Error(ex, "Failed."); + _logger.LogError(ex, "Failed."); } return true; // repeat diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index d18480eb82..101535a23e 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -95,7 +95,7 @@ namespace Umbraco.Web.Search } catch (Exception ex) { - _logger.Error(ex, "Failed to rebuild empty indexes."); + _logger.LogError(ex, "Failed to rebuild empty indexes."); } } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 4cd85bc408..1c939d4e18 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -1417,7 +1417,7 @@ namespace Umbraco.Core.Services.Implement var result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.Error(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1427,7 +1427,7 @@ namespace Umbraco.Core.Services.Implement d.ContentSchedule.Clear(ContentScheduleAction.Expire, date); var result = Unpublish(d, userId: d.WriterId); if (result.Success == false) - Logger.Error(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } } @@ -1498,7 +1498,7 @@ namespace Umbraco.Core.Services.Implement result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.Error(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1512,7 +1512,7 @@ namespace Umbraco.Core.Services.Implement : SaveAndPublish(d, userId: d.WriterId); if (result.Success == false) - Logger.Error(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -3164,7 +3164,7 @@ namespace Umbraco.Core.Services.Implement if (rollbackSaveResult.Success == false) { //Log the error/warning - Logger.Error("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); + Logger.LogError("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); } else { diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 77bc82f092..2c368871e5 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -206,7 +206,7 @@ namespace Umbraco.Core.Services.Implement } catch (Exception ex) { - _logger.Error(ex, "Could not load file into XML {File}", supplementaryFile.File.FullName); + _logger.LogError(ex, "Could not load file into XML {File}", supplementaryFile.File.FullName); continue; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs index cf53fb34cd..bac7cf7d8f 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs @@ -523,7 +523,7 @@ namespace Umbraco.Core.Services.Implement } catch (Exception ex) { - _logger.Error(ex, "An error occurred sending notification"); + _logger.LogError(ex, "An error occurred sending notification"); } finally { diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 2f6bb61e42..6b62002c71 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -361,7 +361,7 @@ namespace Umbraco.Core.Sync } catch (JsonException ex) { - Logger.Error(ex, "Failed to deserialize instructions ({DtoId}: '{DtoInstructions}').", + Logger.LogError(ex, "Failed to deserialize instructions ({DtoId}: '{DtoInstructions}').", dto.Id, dto.Instructions); @@ -419,7 +419,7 @@ namespace Umbraco.Core.Sync //} catch (Exception ex) { - Logger.Error( + Logger.LogError( ex, "DISTRIBUTED CACHE IS NOT UPDATED. Failed to execute instructions ({DtoId}: '{DtoInstructions}'). Instruction is being skipped/ignored", dto.Id, diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index 596a744b27..5fd48ad40b 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -97,7 +97,7 @@ namespace Umbraco.ModelsBuilder.Embedded catch (Exception e) { _mbErrors.Report("Failed to build Live models.", e); - _logger.Error("Failed to generate models.", e); + _logger.LogError("Failed to generate models.", e); } finally { diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index 6248267da1..5f04541dcb 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -305,7 +305,7 @@ namespace Umbraco.ModelsBuilder.Embedded { try { - _logger.Error("Failed to build models.", e); + _logger.LogError("Failed to build models.", e); _logger.Warn("Running without models."); // be explicit _errors.Report("Failed to build PureLive models.", e); } diff --git a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs index 48bb2c4069..419011ad3d 100644 --- a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs +++ b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs @@ -253,7 +253,7 @@ namespace Umbraco.Web.PublishedCache.NuCache catch (Exception ex) { /* TBD: May already be throwing so don't throw again */ - _logger.Error(ex, "Error trying to release DB"); + _logger.LogError(ex, "Error trying to release DB"); } finally { @@ -264,7 +264,7 @@ namespace Umbraco.Web.PublishedCache.NuCache } catch (Exception ex) { - _logger.Error(ex, "Error trying to lock"); + _logger.LogError(ex, "Error trying to lock"); throw; } finally diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs index c058c9ac48..5ccc070798 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs @@ -41,7 +41,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.Error(ex, "Could not load preview set {PreviewSet} for user {UserId}.", _previewSet, _userId); + Current.Logger.LogError(ex, "Could not load preview set {PreviewSet} for user {UserId}.", _previewSet, _userId); ClearPreviewSet(); @@ -147,7 +147,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.Error(ex, "Couldn't delete preview set {FileName} for user {UserId}", file.Name, userId); + Current.Logger.LogError(ex, "Couldn't delete preview set {FileName} for user {UserId}", file.Name, userId); } } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs index 8221a391b0..ed84a78304 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs @@ -134,13 +134,13 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache //See this thread: http://examine.cdodeplex.com/discussions/264341 //Catch the exception here for the time being, and just fallback to GetMedia // TODO: Need to fix examine in LB scenarios! - Current.Logger.Error(ex, "Could not load data from Examine index for media"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media"); } else if (ex is AlreadyClosedException) { //If the app domain is shutting down and the site is under heavy load the index reader will be closed and it really cannot //be re-opened since the app domain is shutting down. In this case we have no option but to try to load the data from the db. - Current.Logger.Error(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); } else throw; } @@ -302,13 +302,13 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache //See this thread: http://examine.cdodeplex.com/discussions/264341 //Catch the exception here for the time being, and just fallback to GetMedia // TODO: Need to fix examine in LB scenarios! - Current.Logger.Error(ex, "Could not load data from Examine index for media"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media"); } else if (ex is AlreadyClosedException) { //If the app domain is shutting down and the site is under heavy load the index reader will be closed and it really cannot //be re-opened since the app domain is shutting down. In this case we have no option but to try to load the data from the db. - Current.Logger.Error(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); } else throw; } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index dadf8b6824..1385975d9c 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -415,7 +415,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.Error(ex, "Failed to build a DTD for the Xml cache."); + Current.Logger.LogError(ex, "Failed to build a DTD for the Xml cache."); } dtd.AppendLine("]>"); @@ -705,7 +705,7 @@ AND (umbracoNode.id=@id)"; // if something goes wrong remove the file DeleteXmlFile(); - Current.Logger.Error(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); } } @@ -745,7 +745,7 @@ AND (umbracoNode.id=@id)"; // if something goes wrong remove the file DeleteXmlFile(); - Current.Logger.Error(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); } } @@ -802,7 +802,7 @@ AND (umbracoNode.id=@id)"; } catch (Exception ex) { - Current.Logger.Error(ex, "Failed to load Xml from file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to load Xml from file '{FileName}'.", _xmlFileName); try { DeleteXmlFile(); diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index cfcdacdadf..6616e94339 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -344,7 +344,7 @@ namespace Umbraco.Tests.TestHelpers } catch (Exception ex) { - Logger.Error(ex, "Could not remove the old database file"); + Logger.LogError(ex, "Could not remove the old database file"); // swallow this exception - that's because a sub class might require further teardown logic onFail?.Invoke(ex); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs index 7704b198ae..4b5cdc9c7f 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs @@ -1628,7 +1628,7 @@ namespace Umbraco.Web.Editors } catch (Exception ex) { - Logger.Error(ex, "Could not update content sort order"); + Logger.LogError(ex, "Could not update content sort order"); throw; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs index 146f2c32b7..7ea7096a09 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs @@ -632,7 +632,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(ex, "Error cleaning up temporary udt file in App_Data: {File}", filePath); + _logger.LogError(ex, "Error cleaning up temporary udt file in App_Data: {File}", filePath); } return Ok(); diff --git a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs index 03bbe132f3..5e4217ed8d 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs @@ -98,7 +98,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.Error(ex.InnerException ?? ex, "Error getting dashboard content from {Url}", url); + _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard content from {Url}", url); //it's still new JObject() - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); @@ -136,7 +136,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.Error(ex.InnerException ?? ex, "Error getting dashboard CSS from {Url}", url); + _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard CSS from {Url}", url); //it's still string.Empty - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); @@ -199,7 +199,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.Error(ex.InnerException ?? ex, "Error getting remote dashboard data from {UrlPrefix}{Url}", urlPrefix, url); + _logger.LogError(ex.InnerException ?? ex, "Error getting remote dashboard data from {UrlPrefix}{Url}", urlPrefix, url); //it's still string.Empty - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); diff --git a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs index e43f124cc8..882abd7440 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs @@ -124,7 +124,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(GetType(), ex, "Error creating dictionary with {Name} under {ParentId}", key, parentId); + _logger.LogError(GetType(), ex, "Error creating dictionary with {Name} under {ParentId}", key, parentId); throw HttpResponseException.CreateNotificationValidationErrorResponse("Error creating dictionary item"); } } @@ -257,7 +257,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(GetType(), ex, "Error saving dictionary with {Name} under {ParentId}", dictionary.Name, dictionary.ParentId); + _logger.LogError(GetType(), ex, "Error saving dictionary with {Name} under {ParentId}", dictionary.Name, dictionary.ParentId); throw HttpResponseException.CreateNotificationValidationErrorResponse("Something went wrong saving dictionary"); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index a302f7f7cf..f2724dacbb 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -162,7 +162,7 @@ namespace Umbraco.Web.BackOffice.Controllers { //ensure it's not listening index.IndexOperationComplete -= Indexer_IndexOperationComplete; - _logger.Error(ex, "An error occurred rebuilding index"); + _logger.LogError(ex, "An error occurred rebuilding index"); var response = new ConflictObjectResult("The index could not be rebuilt at this time, most likely there is another thread currently writing to the index. Error: {ex}"); HttpContext.SetReasonPhrase("Could Not Rebuild"); diff --git a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs index cf951a57c3..f7d00585d1 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs @@ -102,7 +102,7 @@ namespace Umbraco.Web.BackOffice.Controllers catch (Exception exception) { const string errorMessage = "Error creating macro"; - _logger.Error(exception, errorMessage); + _logger.LogError(exception, errorMessage); throw HttpResponseException.CreateNotificationValidationErrorResponse(errorMessage); } } @@ -226,7 +226,7 @@ namespace Umbraco.Web.BackOffice.Controllers catch (Exception exception) { const string errorMessage = "Error creating macro"; - _logger.Error(exception, errorMessage); + _logger.LogError(exception, errorMessage); throw HttpResponseException.CreateNotificationValidationErrorResponse(errorMessage); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs index ba19f7c2b4..26c98cb45e 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs @@ -629,7 +629,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - Logger.Error(ex, "Could not update media sort order"); + Logger.LogError(ex, "Could not update media sort order"); throw; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs index b61e86746a..b39da8862a 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs @@ -99,7 +99,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(ex, "Failed to uninstall."); + _logger.LogError(ex, "Failed to uninstall."); throw; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs index 54fc3352d3..b67a2f8b48 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs @@ -154,7 +154,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(GetType(), ex, "Error creating relation type with {Name}", relationType.Name); + _logger.LogError(GetType(), ex, "Error creating relation type with {Name}", relationType.Name); throw HttpResponseException.CreateNotificationValidationErrorResponse("Error creating relation type."); } } @@ -185,7 +185,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(GetType(), ex, "Error saving relation type with {Id}", relationType.Id); + _logger.LogError(GetType(), ex, "Error saving relation type with {Id}", relationType.Id); throw HttpResponseException.CreateNotificationValidationErrorResponse("Something went wrong when saving the relation type"); } } diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index 0646f94121..a838dea0eb 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -75,7 +75,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - _logger.Error(ex, + _logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } } @@ -129,7 +129,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - _logger.Error(ex, + _logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } diff --git a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs index acafacff47..941d9153a1 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs @@ -104,7 +104,7 @@ namespace Umbraco.Web.BackOffice.Filters } catch (AntiforgeryValidationException ex) { - _logger.Error(ex, "Could not validate XSRF token"); + _logger.LogError(ex, "Could not validate XSRF token"); return false; } } diff --git a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs index 6b8eada506..013dadcabc 100644 --- a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs +++ b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs @@ -71,7 +71,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.Error(ex, "Exception in health check: {HealthCheckName}", check.Name); + _logger.LogError(ex, "Exception in health check: {HealthCheckName}", check.Name); throw; } } diff --git a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs index 5ce8e09280..95660a721a 100644 --- a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs +++ b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs @@ -63,7 +63,7 @@ namespace Umbraco.Web.BackOffice.PropertyEditors } catch(Exception ex) { - _logger.Error(ex, "Error embedding url {Url} - width: {Width} height: {Height}", url, width, height); + _logger.LogError(ex, "Error embedding url {Url} - width: {Width} height: {Height}", url, width, height); result.OEmbedStatus = OEmbedStatus.Error; } diff --git a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs index ddcd8e7abe..2cd90e83db 100644 --- a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs @@ -27,7 +27,7 @@ namespace Umbraco.Extensions } catch (Exception ex) { - Current.Logger.Error(typeof(ImageCropperTemplateExtensions), ex, "Could not parse the json string: {Json}", json); + Current.Logger.LogError(typeof(ImageCropperTemplateExtensions), ex, "Could not parse the json string: {Json}", json); } } diff --git a/src/Umbraco.Web.Common/Install/InstallApiController.cs b/src/Umbraco.Web.Common/Install/InstallApiController.cs index edc73ef293..a9d2fecfec 100644 --- a/src/Umbraco.Web.Common/Install/InstallApiController.cs +++ b/src/Umbraco.Web.Common/Install/InstallApiController.cs @@ -155,7 +155,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.Error(ex, "An error occurred during installation step {Step}", + _logger.LogError(ex, "An error occurred during installation step {Step}", step.Name); if (ex is TargetInvocationException && ex.InnerException != null) @@ -268,7 +268,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.Error(ex, "Checking if step requires execution ({Step}) failed.", + _logger.LogError(ex, "Checking if step requires execution ({Step}) failed.", step.Name); throw; } @@ -299,7 +299,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.Error(ex, "Installation step {Step} failed.", step.Name); + _logger.LogError(ex, "Installation step {Step} failed.", step.Name); throw; } } diff --git a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs index 80a21d6724..dd75aea739 100644 --- a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs +++ b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs @@ -45,7 +45,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - logger.Error(ex, "An error occurred determining authorization"); + logger.LogError(ex, "An error occurred determining authorization"); return false; } } diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index 587a60caa9..67334e941d 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -65,7 +65,7 @@ namespace Umbraco.Web.Common.Middleware catch (Exception ex) { // try catch so we don't kill everything in all requests - _logger.Error(ex); + _logger.LogError(ex); } finally { @@ -128,7 +128,7 @@ namespace Umbraco.Web.Common.Middleware } catch (Exception ex) { - logger.Error("Could not dispose item with key " + k, ex); + logger.LogError("Could not dispose item with key " + k, ex); } try { @@ -136,7 +136,7 @@ namespace Umbraco.Web.Common.Middleware } catch (Exception ex) { - logger.Error("Could not dispose item key " + k, ex); + logger.LogError("Could not dispose item key " + k, ex); } } } diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index 83a51a7b38..b8f3ae00db 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -36,12 +36,12 @@ namespace Umbraco.Web public void Error(string msg, Exception ex) { - _logger.Error(ex, msg); + _logger.LogError(ex, msg); } public void Fatal(string msg, Exception ex) { - _logger.Error(ex, msg); + _logger.LogError(ex, msg); } } } diff --git a/src/Umbraco.Web/ImageProcessorLogger.cs b/src/Umbraco.Web/ImageProcessorLogger.cs index d01207b401..8f6be923ef 100644 --- a/src/Umbraco.Web/ImageProcessorLogger.cs +++ b/src/Umbraco.Web/ImageProcessorLogger.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web { // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. var message = $"{callerName} {lineNumber} : {text}"; - Current.Logger.Error(new ImageProcessingException(message)); + Current.Logger.LogError(new ImageProcessingException(message)); } /// @@ -42,7 +42,7 @@ namespace Umbraco.Web { // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. var message = $"{callerName} {lineNumber} : {text}"; - Current.Logger.Error(type, new ImageProcessingException(message)); + Current.Logger.LogError(type, new ImageProcessingException(message)); } } } diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index 7ca3d2a915..96f02a5347 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -30,7 +30,7 @@ namespace Umbraco.Web.Logging _logger.Fatal(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Error: - _logger.Error(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogError(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Warning: _logger.Warn(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); diff --git a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs index 882cb5624c..eac73fc7da 100644 --- a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs +++ b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs @@ -119,7 +119,7 @@ namespace Umbraco.Web.Mvc } catch (Exception ex) { - Logger.Error(ex, "Failed to format passed in token value"); + Logger.LogError(ex, "Failed to format passed in token value"); return false; } } diff --git a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs index 7616282689..48a13f265d 100644 --- a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs +++ b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs @@ -109,7 +109,7 @@ namespace Umbraco.Web.Security } catch (System.Exception ex) { - Current.Logger.Error(typeof (AuthenticationOptionsExtensions), ex, "Could not read AuthenticationOptions properties"); + Current.Logger.LogError(typeof (AuthenticationOptionsExtensions), ex, "Could not read AuthenticationOptions properties"); } } else diff --git a/src/Umbraco.Web/Security/MembershipProviderBase.cs b/src/Umbraco.Web/Security/MembershipProviderBase.cs index eacb992b0b..e3deda725c 100644 --- a/src/Umbraco.Web/Security/MembershipProviderBase.cs +++ b/src/Umbraco.Web/Security/MembershipProviderBase.cs @@ -257,7 +257,7 @@ namespace Umbraco.Web.Security if ((PasswordFormat == MembershipPasswordFormat.Hashed) && EnablePasswordRetrieval) { var ex = new ProviderException("Provider can not retrieve a hashed password"); - Current.Logger.Error(ex, "Cannot specify a Hashed password format with the enabledPasswordRetrieval option set to true"); + Current.Logger.LogError(ex, "Cannot specify a Hashed password format with the enabledPasswordRetrieval option set to true"); throw ex; } diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 55ef6747a0..b85ba9de67 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -291,7 +291,7 @@ namespace Umbraco.Web // ignore HTTP errors if (exception.GetType() == typeof(HttpException)) return; - Current.Logger.Error(exception, "An unhandled exception occurred"); + Current.Logger.LogError(exception, "An unhandled exception occurred"); } // called by ASP.NET (auto event wireup) at any phase in the application life cycle @@ -314,7 +314,7 @@ namespace Umbraco.Web } catch (Exception ex) { - Current.Logger.Error(ex, "Error in {Name} handler.", name); + Current.Logger.LogError(ex, "Error in {Name} handler.", name); throw; } } diff --git a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs index a15014d4e5..98e518e7d0 100644 --- a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs +++ b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs @@ -44,7 +44,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - Current.Logger.Error(typeof(AngularAntiForgeryHelper), ex, "Could not validate XSRF token"); + Current.Logger.LogError(typeof(AngularAntiForgeryHelper), ex, "Could not validate XSRF token"); return false; } return true; diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index 1646c8a426..9ef704bb52 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -57,7 +57,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.Error(ex, "Could not delete temp file {FileName}", f.TempFilePath); + Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } } } @@ -89,7 +89,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.Error(ex, "Could not acquire actionExecutedContext.Response.Content"); + Current.Logger.LogError(ex, "Could not acquire actionExecutedContext.Response.Content"); return; } @@ -119,7 +119,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.Error(ex, "Could not delete temp file {FileName}", f.TempFilePath); + Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } //clear out the temp path so it's not returned in the response diff --git a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs index 323ab2e727..970098e957 100644 --- a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs +++ b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web.WebApi var requestUrl = context.ExceptionContext?.ControllerContext?.Request?.RequestUri?.AbsoluteUri; var controllerType = context.ExceptionContext?.ActionContext?.ControllerContext?.Controller?.GetType(); - _logger.Error(controllerType, context.Exception, "Unhandled controller exception occurred for request '{RequestUrl}'", requestUrl); + _logger.LogError(controllerType, context.Exception, "Unhandled controller exception occurred for request '{RequestUrl}'", requestUrl); } } diff --git a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs index e4360e0845..59a4f43bec 100644 --- a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs +++ b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs @@ -91,7 +91,7 @@ namespace Umbraco.Web.WebAssets.CDF } catch (Exception ex) { - _logger.Error(ex, "Couldn't update ClientDependency version number"); + _logger.LogError(ex, "Couldn't update ClientDependency version number"); } return false; @@ -124,7 +124,7 @@ namespace Umbraco.Web.WebAssets.CDF catch (Exception ex) { //invalid path format or something... try/catch to be safe - _logger.Error(ex, "Could not get path from ClientDependency.config"); + _logger.LogError(ex, "Could not get path from ClientDependency.config"); } var success = true; @@ -140,7 +140,7 @@ namespace Umbraco.Web.WebAssets.CDF catch (Exception ex) { // Something could be locking the directory or the was another error, making sure we don't break the upgrade installer - _logger.Error(ex, "Could not clear temp files"); + _logger.LogError(ex, "Could not clear temp files"); success = false; } } From a1ecc4a5c955d55c181ddd8d0aba7eb72f39cb80 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 10:17:32 +0200 Subject: [PATCH 02/85] Change Warn to LogWarning --- src/Umbraco.Core/Composing/TypeFinder.cs | 2 +- src/Umbraco.Core/Composing/TypeLoader.cs | 2 +- .../ContentApps/ContentAppFactoryCollection.cs | 2 +- src/Umbraco.Core/Logging/ConsoleLogger.cs | 8 ++++---- .../Logging/DebugDiagnosticsLogger.cs | 8 ++++---- src/Umbraco.Core/Logging/ILogger.cs | 8 ++++---- src/Umbraco.Core/Logging/LoggerExtensions.cs | 16 ++++++++-------- src/Umbraco.Core/Logging/NullLogger.cs | 8 ++++---- src/Umbraco.Core/Logging/ProfilingLogger.cs | 16 ++++++++-------- src/Umbraco.Core/Models/Member.cs | 4 ++-- .../Packaging/PackageDefinitionXmlParser.cs | 2 +- src/Umbraco.Core/Packaging/PackagesRepository.cs | 2 +- .../Routing/ContentFinderByUrlAndTemplate.cs | 2 +- src/Umbraco.Core/Routing/PublishedRouter.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 4 ++-- src/Umbraco.Core/Scheduling/KeepAlive.cs | 2 +- .../LuceneIndexDiagnostics.cs | 4 ++-- .../BatchedDatabaseServerMessenger.cs | 2 +- .../Cache/DistributedCacheBinder.cs | 2 +- .../Compose/NotificationsComponent.cs | 4 ++-- .../HealthCheck/HealthCheckResults.cs | 2 +- .../Upgrade/V_8_0_0/DataTypeMigration.cs | 6 +++--- .../V_8_0_0/PropertyEditorsMigrationBase.cs | 2 +- .../Models/Mapping/DataTypeMapDefinition.cs | 2 +- .../Models/Mapping/MacroMapDefinition.cs | 2 +- .../Models/PathValidationExtensions.cs | 2 +- .../Models/PropertyTagsExtensions.cs | 2 +- .../Packaging/PackageDataInstallation.cs | 8 ++++---- .../Persistence/DbConnectionExtensions.cs | 2 +- .../Persistence/Factories/DataTypeFactory.cs | 2 +- .../Implement/ContentRepositoryBase.cs | 2 +- .../Implement/ContentTypeRepositoryBase.cs | 2 +- .../Repositories/Implement/LanguageRepository.cs | 2 +- .../PropertyEditors/BlockEditorPropertyEditor.cs | 4 ++-- .../PropertyEditors/DataValueEditor.cs | 2 +- .../ImageCropperPropertyValueEditor.cs | 2 +- .../NestedContentPropertyEditor.cs | 4 ++-- .../Runtime/SqlMainDomLock.cs | 2 +- src/Umbraco.Infrastructure/RuntimeState.cs | 2 +- .../Search/BackgroundIndexRebuilder.cs | 2 +- .../Services/Implement/ContentService.cs | 2 +- .../Services/Implement/LocalizedTextService.cs | 8 ++++---- .../Implement/LocalizedTextServiceFileSources.cs | 4 ++-- .../Services/Implement/UserService.cs | 2 +- .../Sync/DatabaseServerMessenger.cs | 6 +++--- .../LiveModelsProvider.cs | 2 +- .../PureLiveModelFactory.cs | 2 +- .../ContentStore.cs | 8 ++++---- .../DataSource/DatabaseDataSource.cs | 4 ++-- .../PublishedSnapshotService.cs | 4 ++-- .../DictionaryPublishedContent.cs | 2 +- .../PublishedMediaCache.cs | 4 ++-- .../XmlStoreFilePersister.cs | 2 +- .../Controllers/AuthenticationController.cs | 4 ++-- .../Controllers/BackOfficeController.cs | 10 +++++----- .../Controllers/ContentController.cs | 4 ++-- .../Controllers/ContentControllerBase.cs | 2 +- .../Controllers/ContentTypeController.cs | 2 +- .../Controllers/MediaController.cs | 2 +- .../Filters/ContentModelValidator.cs | 2 +- .../Filters/FileUploadCleanupFilterAttribute.cs | 12 ++++++------ .../Security/PasswordChanger.cs | 4 ++-- .../Trees/ContentTreeControllerBase.cs | 2 +- .../Install/InstallController.cs | 2 +- src/Umbraco.Web.Common/Macros/MacroRenderer.cs | 2 +- src/Umbraco.Web/CdfLogger.cs | 2 +- .../Editors/AuthenticationController.cs | 6 +++--- src/Umbraco.Web/Editors/BackOfficeController.cs | 4 ++-- src/Umbraco.Web/Editors/PasswordChanger.cs | 4 ++-- src/Umbraco.Web/Logging/OwinLogger.cs | 2 +- src/Umbraco.Web/Macros/MacroRenderer.cs | 2 +- src/Umbraco.Web/Mvc/RenderMvcController.cs | 2 +- src/Umbraco.Web/Mvc/RenderRouteHandler.cs | 2 +- src/Umbraco.Web/Security/MembershipHelper.cs | 4 ++-- .../Providers/UmbracoMembershipProvider.cs | 4 ++-- src/Umbraco.Web/UmbracoHelper.cs | 2 +- src/Umbraco.Web/UmbracoInjectedModule.cs | 2 +- src/Umbraco.Web/UmbracoModule.cs | 2 +- .../Filters/FileUploadCleanupFilterAttribute.cs | 14 +++++++------- 79 files changed, 152 insertions(+), 152 deletions(-) diff --git a/src/Umbraco.Core/Composing/TypeFinder.cs b/src/Umbraco.Core/Composing/TypeFinder.cs index 82c5bdba9d..efd3a6cb23 100644 --- a/src/Umbraco.Core/Composing/TypeFinder.cs +++ b/src/Umbraco.Core/Composing/TypeFinder.cs @@ -442,7 +442,7 @@ namespace Umbraco.Core.Composing if (_notifiedLoadExceptionAssemblies.Contains(a.FullName) == false) { _notifiedLoadExceptionAssemblies.Add(a.FullName); - _logger.Warn(typeof (TypeFinder), ex, "Could not load all types from {TypeName}.", a.GetName().Name); + _logger.LogWarning(typeof (TypeFinder), ex, "Could not load all types from {TypeName}.", a.GetName().Name); } } return rex.Types.WhereNotNull().ToArray(); diff --git a/src/Umbraco.Core/Composing/TypeLoader.cs b/src/Umbraco.Core/Composing/TypeLoader.cs index 1d40149936..b10063e563 100644 --- a/src/Umbraco.Core/Composing/TypeLoader.cs +++ b/src/Umbraco.Core/Composing/TypeLoader.cs @@ -674,7 +674,7 @@ namespace Umbraco.Core.Composing else { // in case of any exception, we have to exit, and revert to scanning - _logger.Warn("Getting {TypeName}: failed to load cache file type {CacheType}, reverting to scanning assemblies.", GetName(baseType, attributeType), type); + _logger.LogWarning("Getting {TypeName}: failed to load cache file type {CacheType}, reverting to scanning assemblies.", GetName(baseType, attributeType), type); scan = true; break; } diff --git a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs index 4e85e51af3..d79485fe7e 100644 --- a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs +++ b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs @@ -51,7 +51,7 @@ namespace Umbraco.Web.ContentApps // dying is not user-friendly, so let's write to log instead, and wish people read logs... //throw new InvalidOperationException($"Duplicate content app aliases found: {string.Join(",", dups)}"); - _logger.Warn("Duplicate content app aliases found: {DuplicateAliases}", string.Join(",", dups)); + _logger.LogWarning("Duplicate content app aliases found: {DuplicateAliases}", string.Join(",", dups)); } return apps; diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index b4911d489d..e44d6b4b83 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -70,23 +70,23 @@ namespace Umbraco.Core.Logging Console.WriteLine("ERROR {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void Warn(Type reporting, string message) + public void LogWarning(Type reporting, string message) { Console.WriteLine("WARN {0} - {1}", reporting.Name, message); } - public void Warn(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Type reporting, string message, params object[] propertyValues) { Console.WriteLine("WARN {0} - {1}", reporting.Name, _messageTemplates.Render(message, propertyValues)); } - public void Warn(Type reporting, Exception exception, string message) + public void LogWarning(Type reporting, Exception exception, string message) { Console.WriteLine("WARN {0} - {1}", reporting.Name, message); Console.WriteLine(exception); } - public void Warn(Type reporting, Exception exception, string message, params object[] propertyValues) + public void LogWarning(Type reporting, Exception exception, string message, params object[] propertyValues) { Console.WriteLine("WARN {0} - {1}", reporting.Name, _messageTemplates.Render(message, propertyValues)); Console.WriteLine(exception); diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index 1c3af3b36b..dec3fc6c24 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -78,25 +78,25 @@ namespace Umbraco.Core.Logging } /// - public void Warn(Type reporting, string message) + public void LogWarning(Type reporting, string message) { System.Diagnostics.Debug.WriteLine(message, reporting.FullName); } /// - public void Warn(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Type reporting, string message, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message, propertyValues), reporting.FullName); } /// - public void Warn(Type reporting, Exception exception, string message) + public void LogWarning(Type reporting, Exception exception, string message) { System.Diagnostics.Debug.WriteLine(message + Environment.NewLine + exception, reporting.FullName); } /// - public void Warn(Type reporting, Exception exception, string message, params object[] propertyValues) + public void LogWarning(Type reporting, Exception exception, string message, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message + Environment.NewLine + exception, propertyValues), reporting.FullName); } diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index 737b4c03f1..e56b20f5a3 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -107,7 +107,7 @@ namespace Umbraco.Core.Logging /// /// The reporting type. /// A message. - void Warn(Type reporting, string message); + void LogWarning(Type reporting, string message); /// /// Logs a warning message. @@ -115,7 +115,7 @@ namespace Umbraco.Core.Logging /// The reporting type. /// A message template. /// Property values. - void Warn(Type reporting, string messageTemplate, params object[] propertyValues); + void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues); /// /// Logs a warning message with an exception. @@ -123,7 +123,7 @@ namespace Umbraco.Core.Logging /// The reporting type. /// An exception. /// A message. - void Warn(Type reporting, Exception exception, string message); + void LogWarning(Type reporting, Exception exception, string message); /// /// Logs a warning message with an exception. @@ -132,7 +132,7 @@ namespace Umbraco.Core.Logging /// An exception. /// A message template. /// Property values. - void Warn(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); + void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); /// /// Logs an information message. diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index 5b86e28946..e75e66318c 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -71,8 +71,8 @@ namespace Umbraco.Core.Logging /// The reporting type. /// The logger. /// A message. - public static void Warn(this ILogger logger, string message) - => logger.Warn(typeof(T), message); + public static void LogWarning(this ILogger logger, string message) + => logger.LogWarning(typeof(T), message); /// /// Logs a warning message. @@ -81,8 +81,8 @@ namespace Umbraco.Core.Logging /// The logger. /// A message template. /// Property values. - public static void Warn(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.Warn(typeof(T), messageTemplate, propertyValues); + public static void LogWarning(this ILogger logger, string messageTemplate, params object[] propertyValues) + => logger.LogWarning(typeof(T), messageTemplate, propertyValues); /// /// Logs a warning message with an exception. @@ -91,8 +91,8 @@ namespace Umbraco.Core.Logging /// The logger. /// An exception. /// A message. - public static void Warn(this ILogger logger, Exception exception, string message) - => logger.Warn(typeof(T), exception, message); + public static void LogWarning(this ILogger logger, Exception exception, string message) + => logger.LogWarning(typeof(T), exception, message); /// /// Logs a warning message with an exception. @@ -102,8 +102,8 @@ namespace Umbraco.Core.Logging /// An exception. /// A message template. /// Property values. - public static void Warn(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.Warn(typeof(T), exception, messageTemplate, propertyValues); + public static void LogWarning(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) + => logger.LogWarning(typeof(T), exception, messageTemplate, propertyValues); /// /// Logs an information message. diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index 3b40efe78e..d3f29168a0 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -56,22 +56,22 @@ namespace Umbraco.Core.Logging } - public void Warn(Type reporting, string message) + public void LogWarning(Type reporting, string message) { } - public void Warn(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues) { } - public void Warn(Type reporting, Exception exception, string message) + public void LogWarning(Type reporting, Exception exception, string message) { } - public void Warn(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 3d323fe0dd..e6db3516ad 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -97,17 +97,17 @@ namespace Umbraco.Core.Logging public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) => Logger.LogError(reporting, messageTemplate, propertyValues); - public void Warn(Type reporting, string message) - => Logger.Warn(reporting, message); + public void LogWarning(Type reporting, string message) + => Logger.LogWarning(reporting, message); - public void Warn(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Warn(reporting, messageTemplate, propertyValues); + public void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues) + => Logger.LogWarning(reporting, messageTemplate, propertyValues); - public void Warn(Type reporting, Exception exception, string message) - => Logger.Warn(reporting, exception, message); + public void LogWarning(Type reporting, Exception exception, string message) + => Logger.LogWarning(reporting, exception, message); - public void Warn(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - => Logger.Warn(reporting, exception, messageTemplate, propertyValues); + public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + => Logger.LogWarning(reporting, exception, messageTemplate, propertyValues); public void Info(Type reporting, string message) => Logger.Info(reporting, message); diff --git a/src/Umbraco.Core/Models/Member.cs b/src/Umbraco.Core/Models/Member.cs index 706729b71a..52a887bbfb 100644 --- a/src/Umbraco.Core/Models/Member.cs +++ b/src/Umbraco.Core/Models/Member.cs @@ -472,7 +472,7 @@ namespace Umbraco.Core.Models { void DoLog(string logPropertyAlias, string logPropertyName) { - Current.Logger.Warn("Trying to access the '{PropertyName}' property on '{MemberType}' " + + Current.Logger.LogWarning("Trying to access the '{PropertyName}' property on '{MemberType}' " + "but the {PropertyAlias} property does not exist on the member type so a default value is returned. " + "Ensure that you have a property type with alias: {PropertyAlias} configured on your member type in order to use the '{PropertyName}' property on the model correctly.", logPropertyName, @@ -497,7 +497,7 @@ namespace Umbraco.Core.Models { void DoLog(string logPropertyAlias, string logPropertyName) { - Current.Logger.Warn("An attempt was made to set a value on the property '{PropertyName}' on type '{MemberType}' but the " + + Current.Logger.LogWarning("An attempt was made to set a value on the property '{PropertyName}' on type '{MemberType}' but the " + "property type {PropertyAlias} does not exist on the member type, ensure that this property type exists so that setting this property works correctly.", logPropertyName, typeof(Member), diff --git a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs index d28ee828c5..553346ad70 100644 --- a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs +++ b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs @@ -68,7 +68,7 @@ namespace Umbraco.Core.Packaging } catch (Exception e) { - _logger.Warn(e, "Could not add package actions to the package xml definition, the xml did not parse"); + _logger.LogWarning(e, "Could not add package actions to the package xml definition, the xml did not parse"); } var packageXml = new XElement("package", diff --git a/src/Umbraco.Core/Packaging/PackagesRepository.cs b/src/Umbraco.Core/Packaging/PackagesRepository.cs index 0764378b06..9ab36d0988 100644 --- a/src/Umbraco.Core/Packaging/PackagesRepository.cs +++ b/src/Umbraco.Core/Packaging/PackagesRepository.cs @@ -213,7 +213,7 @@ namespace Umbraco.Core.Packaging } catch (Exception e) { - _logger.Warn(e, "Could not add package actions to the package, the xml did not parse"); + _logger.LogWarning(e, "Could not add package actions to the package, the xml did not parse"); } } diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs index 7bcea4681e..a756a4a6b5 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web.Routing // IsAllowedTemplate deals both with DisableAlternativeTemplates and ValidateAlternativeTemplates settings if (!node.IsAllowedTemplate(_contentTypeService, _webRoutingSettings, template.Id)) { - Logger.Warn("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); + Logger.LogWarning("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); frequest.PublishedContent = null; // clear return false; } diff --git a/src/Umbraco.Core/Routing/PublishedRouter.cs b/src/Umbraco.Core/Routing/PublishedRouter.cs index 1a422dea92..811e1eea01 100644 --- a/src/Umbraco.Core/Routing/PublishedRouter.cs +++ b/src/Umbraco.Core/Routing/PublishedRouter.cs @@ -685,7 +685,7 @@ namespace Umbraco.Web.Routing } else { - _logger.Warn("FindTemplate: Alternative template {TemplateAlias} is not allowed on node {NodeId}, ignoring.", altTemplate, request.PublishedContent.Id); + _logger.LogWarning("FindTemplate: Alternative template {TemplateAlias} is not allowed on node {NodeId}, ignoring.", altTemplate, request.PublishedContent.Id); // no allowed, back to default var templateId = request.PublishedContent.TemplateId; diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index 9a20e65422..d4aa5d9518 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -86,7 +86,7 @@ namespace Umbraco.Core.Runtime if (_signaled) return false; if (_isMainDom == false) { - _logger.Warn("Register called when MainDom has not been acquired"); + _logger.LogWarning("Register called when MainDom has not been acquired"); return false; } @@ -177,7 +177,7 @@ namespace Umbraco.Core.Runtime catch (OperationCanceledException ex) { // the waiting task could be canceled if this appdomain is naturally shutting down, we'll just swallow this exception - _logger.Warn(ex, ex.Message); + _logger.LogWarning(ex, ex.Message); } _logger.Info("Acquired."); diff --git a/src/Umbraco.Core/Scheduling/KeepAlive.cs b/src/Umbraco.Core/Scheduling/KeepAlive.cs index 5953d60822..513bc31b35 100644 --- a/src/Umbraco.Core/Scheduling/KeepAlive.cs +++ b/src/Umbraco.Core/Scheduling/KeepAlive.cs @@ -61,7 +61,7 @@ namespace Umbraco.Web.Scheduling var umbracoAppUrl = _requestAccessor.GetApplicationUrl().ToString(); if (umbracoAppUrl.IsNullOrWhiteSpace()) { - _logger.Warn("No umbracoApplicationUrl for service (yet), skip."); + _logger.LogWarning("No umbracoApplicationUrl for service (yet), skip."); return true; // repeat } diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs index 836d5f6e66..e4d6460eb4 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs @@ -34,7 +34,7 @@ namespace Umbraco.Examine } catch (AlreadyClosedException) { - Logger.Warn(typeof(UmbracoContentIndex), "Cannot get GetIndexDocumentCount, the writer is already closed"); + Logger.LogWarning(typeof(UmbracoContentIndex), "Cannot get GetIndexDocumentCount, the writer is already closed"); return 0; } } @@ -50,7 +50,7 @@ namespace Umbraco.Examine } catch (AlreadyClosedException) { - Logger.Warn(typeof(UmbracoContentIndex), "Cannot get GetIndexFieldCount, the writer is already closed"); + Logger.LogWarning(typeof(UmbracoContentIndex), "Cannot get GetIndexFieldCount, the writer is already closed"); return 0; } } diff --git a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs index fa76fb6f11..b3c5b00472 100644 --- a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs @@ -52,7 +52,7 @@ namespace Umbraco.Web if (_databaseFactory.CanConnect == false) { - Logger.Warn("Cannot connect to the database, distributed calls will not be enabled for this server."); + Logger.LogWarning("Cannot connect to the database, distributed calls will not be enabled for this server."); } else { diff --git a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs index 92ed7de881..ba97415ac0 100644 --- a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs +++ b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Cache { // TODO: should this be fatal (ie, an exception)? var name = e.Sender.GetType().Name + "_" + e.EventName; - _logger.Warn("Dropping event {EventName} because no corresponding handler was found.", name); + _logger.LogWarning("Dropping event {EventName} because no corresponding handler was found.", name); continue; } diff --git a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs index b1303859e0..6dd265483d 100644 --- a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs @@ -222,7 +222,7 @@ namespace Umbraco.Web.Compose user = _userService.GetUserById(Constants.Security.SuperUserId); if (user == null) { - _logger.Warn(typeof(Notifier), "Notifications can not be sent, no admin user with id {SuperUserId} could be resolved", Constants.Security.SuperUserId); + _logger.LogWarning(typeof(Notifier), "Notifications can not be sent, no admin user with id {SuperUserId} could be resolved", Constants.Security.SuperUserId); return; } } @@ -235,7 +235,7 @@ namespace Umbraco.Web.Compose if (sender == null) throw new ArgumentNullException(nameof(sender)); if (siteUri == null) { - _logger.Warn(typeof(Notifier), "Notifications can not be sent, no site url is set (might be during boot process?)"); + _logger.LogWarning(typeof(Notifier), "Notifications can not be sent, no site url is set (might be during boot process?)"); return; } diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index b38e965ea8..a14c59866f 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -66,7 +66,7 @@ namespace Umbraco.Web.HealthCheck } else { - Logger.Warn("Checks for '{HealthCheckName}' completed with errors.", checkName); + Logger.LogWarning("Checks for '{HealthCheckName}' completed with errors.", checkName); } foreach (var checkResult in checkResults) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs index 95b272dcb4..e5d47ca45c 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs @@ -94,7 +94,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 { if (!LegacyAliases.Contains(dataType.EditorAlias)) { - _logger.Warn( + _logger.LogWarning( "Skipping validation of configuration for data type {NodeId} : {EditorAlias}." + " Please ensure that the configuration is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, dataType.EditorAlias); @@ -104,7 +104,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 { if (!LegacyAliases.Contains(newAlias)) { - _logger.Warn("Skipping validation of configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})" + _logger.LogWarning("Skipping validation of configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})" + " because no property editor with that alias was found." + " Please ensure that the configuration is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, newAlias, dataType.EditorAlias); @@ -119,7 +119,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception e) { - _logger.Warn(e, "Failed to validate configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})." + _logger.LogWarning(e, "Failed to validate configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})." + " Please fix the configuration and ensure it is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, newAlias, dataType.EditorAlias); } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs index 5ac92b7966..554402fe38 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs @@ -78,7 +78,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 continue; } - Logger.Warn(GetType(), "Could not find PropertyData {PropertyDataId} value '{PropertyValue}' in the datatype configuration: {Values}.", + Logger.LogWarning(GetType(), "Could not find PropertyData {PropertyDataId} value '{PropertyValue}' in the datatype configuration: {Values}.", propData.Id, id, string.Join(", ", config.Items.Select(x => x.Id + ":" + x.Value))); canConvert = false; } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs index 0bd6d54c08..6e34e62c80 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs @@ -174,7 +174,7 @@ namespace Umbraco.Web.Models.Mapping else { // weird - just leave the field without a value - but warn - _logger.Warn("Could not find a value for configuration field '{ConfigField}'", field.Key); + _logger.LogWarning("Could not find a value for configuration field '{ConfigField}'", field.Key); } } } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs index d980958a91..3438f5ecd2 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Models.Mapping { //we'll just map this to a text box paramEditor = _parameterEditors[Constants.PropertyEditors.Aliases.TextBox]; - _logger.Warn("Could not resolve a parameter editor with alias {PropertyEditorAlias}, a textbox will be rendered in it's place", source.EditorAlias); + _logger.LogWarning("Could not resolve a parameter editor with alias {PropertyEditorAlias}, a textbox will be rendered in it's place", source.EditorAlias); } target.View = paramEditor.GetValueEditor().View; diff --git a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs index 2db954b316..ed027026bc 100644 --- a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs @@ -88,7 +88,7 @@ namespace Umbraco.Core.Models if (entity.ValidatePath() == false) { - logger.Warn(typeof(PathValidationExtensions), "The content item {EntityId} has an invalid path: {EntityPath} with parentID: {EntityParentId}", entity.Id, entity.Path, entity.ParentId); + logger.LogWarning(typeof(PathValidationExtensions), "The content item {EntityId} has an invalid path: {EntityPath} with parentID: {EntityParentId}", entity.Id, entity.Path, entity.ParentId); if (entity.ParentId == -1) { entity.Path = string.Concat("-1,", entity.Id); diff --git a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs index b9e471d961..f2e4bd1074 100644 --- a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs @@ -218,7 +218,7 @@ namespace Umbraco.Core.Models } catch (Exception ex) { - Current.Logger.Warn(typeof(PropertyTagsExtensions), ex, "Could not automatically convert stored json value to an enumerable string '{Json}'", value.ToString()); + Current.Logger.LogWarning(typeof(PropertyTagsExtensions), ex, "Could not automatically convert stored json value to an enumerable string '{Json}'", value.ToString()); } break; diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index b2d3c4dc73..1c1ca97f54 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -686,7 +686,7 @@ namespace Umbraco.Core.Packaging } else { - _logger.Warn("Packager: Error handling allowed templates. Template with alias '{TemplateAlias}' could not be found.", alias); + _logger.LogWarning("Packager: Error handling allowed templates. Template with alias '{TemplateAlias}' could not be found.", alias); } } @@ -702,7 +702,7 @@ namespace Umbraco.Core.Packaging } else { - _logger.Warn("Packager: Error handling default template. Default template with alias '{DefaultTemplateAlias}' could not be found.", defaultTemplateElement.Value); + _logger.LogWarning("Packager: Error handling default template. Default template with alias '{DefaultTemplateAlias}' could not be found.", defaultTemplateElement.Value); } } } @@ -774,7 +774,7 @@ namespace Umbraco.Core.Packaging if (dataTypeDefinition == null) { // TODO: We should expose this to the UI during install! - _logger.Warn("Packager: Error handling creation of PropertyType '{PropertyType}'. Could not find DataTypeDefintion with unique id '{DataTypeDefinitionId}' nor one referencing the DataType with a property editor alias (or legacy control id) '{PropertyEditorAlias}'. Did the package creator forget to package up custom datatypes? This property will be converted to a label/readonly editor if one exists.", + _logger.LogWarning("Packager: Error handling creation of PropertyType '{PropertyType}'. Could not find DataTypeDefintion with unique id '{DataTypeDefinitionId}' nor one referencing the DataType with a property editor alias (or legacy control id) '{PropertyEditorAlias}'. Did the package creator forget to package up custom datatypes? This property will be converted to a label/readonly editor if one exists.", property.Element("Name").Value, dataTypeDefinitionId, property.Element("Type").Value.Trim()); //convert to a label! @@ -831,7 +831,7 @@ namespace Umbraco.Core.Packaging var allowedChild = importedContentTypes.ContainsKey(alias) ? importedContentTypes[alias] : _contentTypeService.Get(alias); if (allowedChild == null) { - _logger.Warn( + _logger.LogWarning( "Packager: Error handling DocumentType structure. DocumentType with alias '{DoctypeAlias}' could not be found and was not added to the structure for '{DoctypeStructureAlias}'.", alias, contentType.Alias); continue; diff --git a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs index b79b1160b1..66f47bba14 100644 --- a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs +++ b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs @@ -53,7 +53,7 @@ namespace Umbraco.Core.Persistence catch (DbException e) { // Don't swallow this error, the exception is super handy for knowing "why" its not available - Current.Logger.Warn(e, "Configured database is reporting as not being available."); + Current.Logger.LogWarning(e, "Configured database is reporting as not being available."); return false; } diff --git a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs index fa991d6679..71186bfea5 100644 --- a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs @@ -13,7 +13,7 @@ namespace Umbraco.Core.Persistence.Factories // Check we have an editor for the data type. if (!editors.TryGet(dto.EditorAlias, out var editor)) { - logger.Warn(typeof(DataType), "Could not find an editor with alias {EditorAlias}, treating as Label. " + + logger.LogWarning(typeof(DataType), "Could not find an editor with alias {EditorAlias}, treating as Label. " + "The site may fail to boot and/or load data types and run.", dto.EditorAlias); // Create as special type, which downstream can be handled by converting to a LabelPropertyEditor to make clear diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs index 6c216e938f..215011171c 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs @@ -709,7 +709,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { if (ContentRepositoryBase.ThrowOnWarning) throw new InvalidOperationException($"The query returned multiple property sets for content {temp.Id}, {temp.ContentType.Name}"); - Logger.Warn>("The query returned multiple property sets for content {ContentId}, {ContentTypeName}", temp.Id, temp.ContentType.Name); + Logger.LogWarning>("The query returned multiple property sets for content {ContentId}, {ContentTypeName}", temp.Id, temp.ContentType.Name); } result[temp.VersionId] = new PropertyCollection(properties); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs index 96e98ae9c4..b481ee2dc7 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs @@ -1261,7 +1261,7 @@ AND umbracoNode.id <> @id", } else { - Logger.Warn>("Could not assign a data type for the property type {PropertyTypeAlias} since no data type was found with a property editor {PropertyEditorAlias}", propertyType.Alias, propertyType.PropertyEditorAlias); + Logger.LogWarning>("Could not assign a data type for the property type {PropertyTypeAlias} since no data type was found with a property editor {PropertyEditorAlias}", propertyType.Alias, propertyType.PropertyEditorAlias); } } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs index 8ba34c7cdb..be5f8533d2 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs @@ -317,7 +317,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement if (language != null) return language; // this is an anomaly, the service/repo should ensure it cannot happen - Logger.Warn("There is no default language. Fix this anomaly by editing the language table in database and setting one language as the default language."); + Logger.LogWarning("There is no default language. Fix this anomaly by editing the language table in database and setting one language as the default language."); // still, don't kill the site, and return "something" diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs index b78cae7ac4..e1d6123107 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs @@ -156,7 +156,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.PropertyValues.Remove(prop.Key); - _logger.Warn( + _logger.LogWarning( "ToEditor removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Key, property.PropertyType.Alias); continue; @@ -405,7 +405,7 @@ namespace Umbraco.Web.PropertyEditors if (!propertyTypes.TryGetValue(prop.Key, out var propType)) { block.RawPropertyValues.Remove(prop.Key); - _logger.Warn("The property {PropertyKey} for block {BlockKey} was removed because the property type {PropertyTypeAlias} was not found on {ContentTypeAlias}", + _logger.LogWarning("The property {PropertyKey} for block {BlockKey} was removed because the property type {PropertyTypeAlias} was not found on {ContentTypeAlias}", prop.Key, block.Key, prop.Key, contentType.Alias); } else diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs index 9765038adf..73c73f8452 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs @@ -217,7 +217,7 @@ namespace Umbraco.Core.PropertyEditors var result = TryConvertValueToCrlType(editorValue.Value); if (result.Success == false) { - Current.Logger.Warn("The value {EditorValue} cannot be converted to the type {StorageTypeValue}", editorValue.Value, ValueTypes.ToStorageType(ValueType)); + Current.Logger.LogWarning("The value {EditorValue} cannot be converted to the type {StorageTypeValue}", editorValue.Value, ValueTypes.ToStorageType(ValueType)); return null; } return result.Result; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs index 1c7c8b922a..929d08c042 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs @@ -82,7 +82,7 @@ namespace Umbraco.Web.PropertyEditors catch (Exception ex) { // for some reason the value is invalid so continue as if there was no value there - _logger.Warn(ex, "Could not parse current db value to a JObject."); + _logger.LogWarning(ex, "Could not parse current db value to a JObject."); } if (string.IsNullOrWhiteSpace(currentPath) == false) currentPath = _mediaFileSystem.GetRelativePath(currentPath); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs index 01a03d36e3..93b71e9b2d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs @@ -143,7 +143,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.RawPropertyValues.Remove(prop.Key); - _logger.Warn( + _logger.LogWarning( ex, "ConvertDbToString removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Id, propertyType.Alias); @@ -212,7 +212,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.RawPropertyValues.Remove(prop.Key); - _logger.Warn( + _logger.LogWarning( ex, "ToEditor removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Id, property.PropertyType.Alias); diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index bdb013f83b..20d720ae79 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -120,7 +120,7 @@ namespace Umbraco.Core.Runtime { if (_errorDuringAcquiring) { - _logger.Warn("Could not acquire MainDom, listening is canceled."); + _logger.LogWarning("Could not acquire MainDom, listening is canceled."); return Task.CompletedTask; } diff --git a/src/Umbraco.Infrastructure/RuntimeState.cs b/src/Umbraco.Infrastructure/RuntimeState.cs index 9b88430080..7f6359d15e 100644 --- a/src/Umbraco.Infrastructure/RuntimeState.cs +++ b/src/Umbraco.Infrastructure/RuntimeState.cs @@ -122,7 +122,7 @@ namespace Umbraco.Core catch (Exception e) { // can connect to the database but cannot check the upgrade state... oops - _logger.Warn(e, "Could not check the upgrade state."); + _logger.LogWarning(e, "Could not check the upgrade state."); if (_globalSettings.InstallEmptyDatabase) { diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 101535a23e..deea247c4b 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -42,7 +42,7 @@ namespace Umbraco.Web.Search { if (_rebuildOnStartupRunner != null && _rebuildOnStartupRunner.IsRunning) { - _logger.Warn("Call was made to RebuildIndexes but the task runner for rebuilding is already running"); + _logger.LogWarning("Call was made to RebuildIndexes but the task runner for rebuilding is already running"); return; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 1c939d4e18..6d35196533 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -1481,7 +1481,7 @@ namespace Umbraco.Core.Services.Implement var impact = CultureImpact.Explicit(culture, IsDefaultCulture(allLangs.Value, culture)); var tryPublish = d.PublishCulture(impact) && _propertyValidationService.Value.IsPropertyDataValid(d, out invalidProperties, impact); if (invalidProperties != null && invalidProperties.Length > 0) - Logger.Warn("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", + Logger.LogWarning("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", d.Id, culture, string.Join(",", invalidProperties.Select(x => x.Alias))); publishing &= tryPublish; //set the culture to be published diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs index 4f5121def7..b182fbfa4c 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs @@ -104,7 +104,7 @@ namespace Umbraco.Core.Services.Implement { if (xmlSource.ContainsKey(culture) == false) { - _logger.Warn("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return result; } @@ -124,7 +124,7 @@ namespace Umbraco.Core.Services.Implement { if (_dictionarySource.ContainsKey(culture) == false) { - _logger.Warn("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return result; } @@ -207,7 +207,7 @@ namespace Umbraco.Core.Services.Implement { if (_dictionarySource.ContainsKey(culture) == false) { - _logger.Warn("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return "[" + key + "]"; } @@ -245,7 +245,7 @@ namespace Umbraco.Core.Services.Implement { if (xmlSource.ContainsKey(culture) == false) { - _logger.Warn("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return "[" + key + "]"; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 2c368871e5..823f5cecad 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.Services.Implement if (fileSourceFolder.Exists == false) { - Current.Logger.Warn("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); + Current.Logger.LogWarning("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); } else { @@ -99,7 +99,7 @@ namespace Umbraco.Core.Services.Implement } catch (CultureNotFoundException) { - Current.Logger.Warn("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); + Current.Logger.LogWarning("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); //If the culture in the file is invalid, we'll just hope the file name is a valid culture below, otherwise // an exception will be thrown. } diff --git a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs index faf7889fbf..4868eb7442 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs @@ -291,7 +291,7 @@ namespace Umbraco.Core.Services.Implement // if we are upgrading and an exception occurs, log and swallow it if (_isUpgrading == false) throw; - Logger.Warn(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); + Logger.LogWarning(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); // we don't want the uow to rollback its scope! scope.Complete(); diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 6b62002c71..f9556e9408 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -151,7 +151,7 @@ namespace Umbraco.Core.Sync var idle =_syncIdle.WaitOne(5000); if (idle == false) { - Logger.Warn("The wait lock timed out, application is shutting down. The current instruction batch will be re-processed."); + Logger.LogWarning("The wait lock timed out, application is shutting down. The current instruction batch will be re-processed."); } }, weight); @@ -187,7 +187,7 @@ namespace Umbraco.Core.Sync { // we haven't synced - in this case we aren't going to sync the whole thing, we will assume this is a new // server and it will need to rebuild it's own caches, eg Lucene or the xml cache file. - Logger.Warn("No last synced Id found, this generally means this is a new server/install." + Logger.LogWarning("No last synced Id found, this generally means this is a new server/install." + " The server will build its caches and indexes, and then adjust its last synced Id to the latest found in" + " the database and maintain cache updates based on that Id."); @@ -201,7 +201,7 @@ namespace Umbraco.Core.Sync if (count > Options.MaxProcessingInstructionCount) { //too many instructions, proceed to cold boot - Logger.Warn( + Logger.LogWarning( "The instruction count ({InstructionCount}) exceeds the specified MaxProcessingInstructionCount ({MaxProcessingInstructionCount})." + " The server will skip existing instructions, rebuild its caches and indexes entirely, adjust its last synced Id" + " to the latest found in the database and maintain cache updates based on that Id.", diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index 5fd48ad40b..4f32457417 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -92,7 +92,7 @@ namespace Umbraco.ModelsBuilder.Embedded } catch (TimeoutException) { - _logger.Warn("Timeout, models were NOT generated."); + _logger.LogWarning("Timeout, models were NOT generated."); } catch (Exception e) { diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index 5f04541dcb..c138d68ae9 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -306,7 +306,7 @@ namespace Umbraco.ModelsBuilder.Embedded try { _logger.LogError("Failed to build models.", e); - _logger.Warn("Running without models."); // be explicit + _logger.LogWarning("Running without models."); // be explicit _errors.Report("Failed to build PureLive models.", e); } finally diff --git a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs index 419011ad3d..4dceb6f550 100644 --- a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs +++ b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs @@ -521,7 +521,7 @@ namespace Umbraco.Web.PublishedCache.NuCache parent = GetParentLink(kit.Node, null); if (parent == null) { - _logger.Warn($"Skip item id={kit.Node.Id}, could not find parent id={kit.Node.ParentContentId}."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find parent id={kit.Node.ParentContentId}."); return false; } @@ -530,21 +530,21 @@ namespace Umbraco.Web.PublishedCache.NuCache // because the data sort operation is by path. if (parent.Value == null) { - _logger.Warn($"Skip item id={kit.Node.Id}, no Data assigned for linked node with path {kit.Node.Path} and parent id {kit.Node.ParentContentId}. This can indicate data corruption for the Path value for node {kit.Node.Id}. See the Health Check dashboard in Settings to resolve data integrity issues."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, no Data assigned for linked node with path {kit.Node.Path} and parent id {kit.Node.ParentContentId}. This can indicate data corruption for the Path value for node {kit.Node.Id}. See the Health Check dashboard in Settings to resolve data integrity issues."); return false; } // make sure the kit is valid if (kit.DraftData == null && kit.PublishedData == null) { - _logger.Warn($"Skip item id={kit.Node.Id}, both draft and published data are null."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, both draft and published data are null."); return false; } // unknown = bad if (_contentTypesById.TryGetValue(kit.ContentTypeId, out var link) == false || link.Value == null) { - _logger.Warn($"Skip item id={kit.Node.Id}, could not find content type id={kit.ContentTypeId}."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find content type id={kit.ContentTypeId}."); return false; } diff --git a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs index 3fedfbb7eb..78bf8389e3 100644 --- a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs +++ b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs @@ -215,7 +215,7 @@ namespace Umbraco.Web.PublishedCache.NuCache.DataSource { if (Debugger.IsAttached) throw new InvalidOperationException("Missing cmsContentNu edited content for node " + dto.Id + ", consider rebuilding."); - _logger.Warn("Missing cmsContentNu edited content for node {NodeId}, consider rebuilding.", dto.Id); + _logger.LogWarning("Missing cmsContentNu edited content for node {NodeId}, consider rebuilding.", dto.Id); } else { @@ -242,7 +242,7 @@ namespace Umbraco.Web.PublishedCache.NuCache.DataSource { if (Debugger.IsAttached) throw new InvalidOperationException("Missing cmsContentNu published content for node " + dto.Id + ", consider rebuilding."); - _logger.Warn("Missing cmsContentNu published content for node {NodeId}, consider rebuilding.", dto.Id); + _logger.LogWarning("Missing cmsContentNu published content for node {NodeId}, consider rebuilding.", dto.Id); } else { diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index 815fe0a168..7d41243098 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -243,14 +243,14 @@ namespace Umbraco.Web.PublishedCache.NuCache { okContent = LockAndLoadContent(scope => LoadContentFromLocalDbLocked(true)); if (!okContent) - _logger.Warn("Loading content from local db raised warnings, will reload from database."); + _logger.LogWarning("Loading content from local db raised warnings, will reload from database."); } if (_localMediaDbExists) { okMedia = LockAndLoadMedia(scope => LoadMediaFromLocalDbLocked(true)); if (!okMedia) - _logger.Warn("Loading media from local db raised warnings, will reload from database."); + _logger.LogWarning("Loading media from local db raised warnings, will reload from database."); } if (!okContent) diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs index 04c02f34d2..627e42da98 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs @@ -108,7 +108,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache else { // this is a property that does not correspond to anything, ignore and log - Current.Logger.Warn("Dropping property '{PropertyKey}' because it does not belong to the content type.", i.Key); + Current.Logger.LogWarning("Dropping property '{PropertyKey}' because it does not belong to the content type.", i.Key); } } } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs index ed84a78304..c0a6dc4f33 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs @@ -326,7 +326,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache var miss = Interlocked.CompareExchange(ref _examineIndexMiss, 0, 0); // volatile read if (miss < ExamineIndexMissMax && Interlocked.Increment(ref _examineIndexMiss) == ExamineIndexMissMax) - Current.Logger.Warn("Failed ({ExamineIndexMissMax} times) to retrieve medias from Examine index and had to load" + Current.Logger.LogWarning("Failed ({ExamineIndexMissMax} times) to retrieve medias from Examine index and had to load" + " them from DB. This may indicate that the Examine index is corrupted.", ExamineIndexMissMax); return ConvertFromIMedia(media); @@ -344,7 +344,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache : ConvertFromXPathNavigator(media.Current); } - Current.Logger.Warn("Could not retrieve media {MediaId} from Examine index or from legacy library.GetMedia method", id); + Current.Logger.LogWarning("Could not retrieve media {MediaId} from Examine index or from legacy library.GetMedia method", id); return null; } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs index 56c09b18ac..d719875ffb 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs @@ -135,7 +135,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache if (runNow) //Run(); - _logger.Warn("Cannot write now because we are going down, changes may be lost."); + _logger.LogWarning("Cannot write now because we are going down, changes may be lost."); return ret; // this, by default, unless we created a new one } diff --git a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs index 06eef1c1bb..d8197f71ce 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs @@ -357,13 +357,13 @@ namespace Umbraco.Web.BackOffice.Controllers var unlockResult = await _userManager.SetLockoutEndDateAsync(identityUser, DateTimeOffset.Now); if (unlockResult.Succeeded == false) { - _logger.Warn("Could not unlock for user {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); + _logger.LogWarning("Could not unlock for user {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); } var resetAccessFailedCountResult = await _userManager.ResetAccessFailedCountAsync(identityUser); if (resetAccessFailedCountResult.Succeeded == false) { - _logger.Warn("Could not reset access failed count {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); + _logger.LogWarning("Could not reset access failed count {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs index 1970205ebc..918faef664 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs @@ -99,7 +99,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (invite == null) { - _logger.Warn("VerifyUser endpoint reached with invalid token: NULL"); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: NULL"); return RedirectToAction(nameof(Default)); } @@ -107,7 +107,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (parts.Length != 2) { - _logger.Warn("VerifyUser endpoint reached with invalid token: {Invite}", invite); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); return RedirectToAction(nameof(Default)); } @@ -116,7 +116,7 @@ namespace Umbraco.Web.BackOffice.Controllers var decoded = token.FromUrlBase64(); if (decoded.IsNullOrWhiteSpace()) { - _logger.Warn("VerifyUser endpoint reached with invalid token: {Invite}", invite); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); return RedirectToAction(nameof(Default)); } @@ -125,7 +125,7 @@ namespace Umbraco.Web.BackOffice.Controllers var identityUser = await _userManager.FindByIdAsync(id); if (identityUser == null) { - _logger.Warn("VerifyUser endpoint reached with non existing user: {UserId}", id); + _logger.LogWarning("VerifyUser endpoint reached with non existing user: {UserId}", id); return RedirectToAction(nameof(Default)); } @@ -133,7 +133,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (result.Succeeded == false) { - _logger.Warn("Could not verify email, Error: {Errors}, Token: {Invite}", result.Errors.ToErrorMessage(), invite); + _logger.LogWarning("Could not verify email, Error: {Errors}, Token: {Invite}", result.Errors.ToErrorMessage(), invite); return new RedirectResult(Url.Action(nameof(Default)) + "#/login/false?invite=3"); } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs index 4b5cdc9c7f..c4a56830db 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs @@ -1619,7 +1619,7 @@ namespace Umbraco.Web.Editors var sortResult = contentService.Sort(sorted.IdSortOrder, _webSecurity.CurrentUser.Id); if (!sortResult.Success) { - Logger.Warn("Content sorting failed, this was probably caused by an event being cancelled"); + Logger.LogWarning("Content sorting failed, this was probably caused by an event being cancelled"); // TODO: Now you can cancel sorting, does the event messages bubble up automatically? throw HttpResponseException.CreateValidationErrorResponse("Content sorting failed, this was probably caused by an event being cancelled"); } @@ -2001,7 +2001,7 @@ namespace Umbraco.Web.Editors if (template == null) { //ModelState.AddModelError("Template", "No template exists with the specified alias: " + contentItem.TemplateAlias); - Logger.Warn("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); + Logger.LogWarning("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); } else if (template.Id != contentSave.PersistedContent.TemplateId) { diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs index 9e9f7e8fbd..2313e9b5f7 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web.BackOffice.Controllers // get the property editor if (propertyDto.PropertyEditor == null) { - Logger.Warn("No property editor found for property {PropertyAlias}", propertyDto.Alias); + Logger.LogWarning("No property editor found for property {PropertyAlias}", propertyDto.Alias); continue; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs index 7ea7096a09..dc21196158 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs @@ -461,7 +461,7 @@ namespace Umbraco.Web.BackOffice.Controllers var tryCreateTemplate = _fileService.CreateTemplateForContentType(contentTypeAlias, contentTypeName); if (tryCreateTemplate == false) { - _logger.Warn("Could not create a template for Content Type: \"{ContentTypeAlias}\", status: {Status}", + _logger.LogWarning("Could not create a template for Content Type: \"{ContentTypeAlias}\", status: {Status}", contentTypeAlias, tryCreateTemplate.Result.Result); } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs index 26c98cb45e..cdac1cdf8f 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs @@ -622,7 +622,7 @@ namespace Umbraco.Web.BackOffice.Controllers // Save Media with new sort order and update content xml in db accordingly if (mediaService.Sort(sortedMedia) == false) { - Logger.Warn("Media sorting failed, this was probably caused by an event being cancelled"); + Logger.LogWarning("Media sorting failed, this was probably caused by an event being cancelled"); throw HttpResponseException.CreateValidationErrorResponse("Media sorting failed, this was probably caused by an event being cancelled"); } return Ok(); diff --git a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs index 71323b1659..73746704e6 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs @@ -144,7 +144,7 @@ namespace Umbraco.Web.BackOffice.Filters { var message = $"Could not find property editor \"{p.DataType.EditorAlias}\" for property with id {p.Id}."; - Logger.Warn(message); + Logger.LogWarning(message); continue; } diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index a838dea0eb..9e14a4f5db 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -86,20 +86,20 @@ namespace Umbraco.Web.WebApi.Filters { if (context == null) { - _logger.Warn("The context is null!!??"); + _logger.LogWarning("The context is null!!??"); return Task.CompletedTask; } if (context.Result == null) { - _logger.Warn( + _logger.LogWarning( "The context.Result is null!!??"); return Task.CompletedTask; } if(!(context.Result is ObjectResult objectResult)) { - _logger.Warn( + _logger.LogWarning( "Could not acquire context.Result as ObjectResult"); return Task.CompletedTask; } @@ -138,20 +138,20 @@ namespace Umbraco.Web.WebApi.Filters } else { - _logger.Warn( + _logger.LogWarning( "The f.TempFilePath is null or whitespace!!??"); } } } else { - _logger.Warn( + _logger.LogWarning( "The uploadedFiles.UploadedFiles is null!!??"); } } else { - _logger.Warn( + _logger.LogWarning( "The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectResult.Value.GetType()); } diff --git a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs index 2ee74aad01..78fc5329c3 100644 --- a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs +++ b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs @@ -72,7 +72,7 @@ namespace Umbraco.Web.BackOffice.Security if (resetResult.Succeeded == false) { var errors = resetResult.Errors.ToErrorMessage(); - _logger.Warn("Could not reset user password {PasswordErrors}", errors); + _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "value" }) }); } @@ -92,7 +92,7 @@ namespace Umbraco.Web.BackOffice.Security { //no, fail with error messages for "password" var errors = changeResult.Errors.ToErrorMessage(); - _logger.Warn("Could not change user password {PasswordErrors}", errors); + _logger.LogWarning("Could not change user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "password" }) }); } return Attempt.Succeed(new PasswordChangedModel()); diff --git a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs index 8e05cb874e..fcaeef977a 100644 --- a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs @@ -196,7 +196,7 @@ namespace Umbraco.Web.Trees // TODO: in the future we could return a validation statement so we can have some UI to notify the user they don't have access if (ignoreUserStartNodes == false && HasPathAccess(id, queryStrings) == false) { - _logger.Warn("User {Username} does not have access to node with id {Id}", _webSecurity.CurrentUser.Username, id); + _logger.LogWarning("User {Username} does not have access to node with id {Id}", _webSecurity.CurrentUser.Username, id); return nodes; } diff --git a/src/Umbraco.Web.Common/Install/InstallController.cs b/src/Umbraco.Web.Common/Install/InstallController.cs index dbd0def5e9..e9c8de2a83 100644 --- a/src/Umbraco.Web.Common/Install/InstallController.cs +++ b/src/Umbraco.Web.Common/Install/InstallController.cs @@ -118,7 +118,7 @@ namespace Umbraco.Web.Common.Install if (_reported && _reportedLevel == level) return; _reported = true; _reportedLevel = level; - logger.Warn(typeof(UmbracoInstallApplicationBuilderExtensions), message); + logger.LogWarning(typeof(UmbracoInstallApplicationBuilderExtensions), message); } } } diff --git a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs index 8685c0b8b1..1c0486c778 100644 --- a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs @@ -282,7 +282,7 @@ namespace Umbraco.Web.Macros } catch (Exception e) { - _plogger.Warn(e, "Failed {MsgIn}", msgIn); + _plogger.LogWarning(e, "Failed {MsgIn}", msgIn); var macroErrorEventArgs = new MacroErrorEventArgs { diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index b8f3ae00db..5c329d89c9 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -31,7 +31,7 @@ namespace Umbraco.Web public void Warn(string msg) { - _logger.Warn(msg); + _logger.LogWarning(msg); } public void Error(string msg, Exception ex) diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index c3eedaab3b..021128d551 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -117,7 +117,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - Logger.Warn("Get2FAProviders :: No verified user found, returning 404"); + Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -136,7 +136,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - Logger.Warn("Get2FAProviders :: No verified user found, returning 404"); + Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -159,7 +159,7 @@ namespace Umbraco.Web.Editors var userName = await SignInManager.GetVerifiedUserNameAsync(); if (userName == null) { - Logger.Warn("Get2FAProviders :: No verified user found, returning 404"); + Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs index b963871a58..ca5279fe2f 100644 --- a/src/Umbraco.Web/Editors/BackOfficeController.cs +++ b/src/Umbraco.Web/Editors/BackOfficeController.cs @@ -175,7 +175,7 @@ namespace Umbraco.Web.Editors var authType = OwinContext.Authentication.GetExternalAuthenticationTypes().FirstOrDefault(x => x.AuthenticationType == loginInfo.Login.LoginProvider); if (authType == null) { - Logger.Warn("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); + Logger.LogWarning("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); } else { @@ -198,7 +198,7 @@ namespace Umbraco.Web.Editors shouldSignIn = autoLinkOptions.OnExternalLogin(user, loginInfo); if (shouldSignIn == false) { - Logger.Warn("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); + Logger.LogWarning("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); } } diff --git a/src/Umbraco.Web/Editors/PasswordChanger.cs b/src/Umbraco.Web/Editors/PasswordChanger.cs index 631403d71f..4267c4327f 100644 --- a/src/Umbraco.Web/Editors/PasswordChanger.cs +++ b/src/Umbraco.Web/Editors/PasswordChanger.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Editors if (resetResult.Succeeded == false) { var errors = resetResult.Errors.ToErrorMessage(); - _logger.Warn("Could not reset user password {PasswordErrors}", errors); + _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "value" }) }); } @@ -93,7 +93,7 @@ namespace Umbraco.Web.Editors { //no, fail with error messages for "password" var errors = changeResult.Errors.ToErrorMessage(); - _logger.Warn("Could not change user password {PasswordErrors}", errors); + _logger.LogWarning("Could not change user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "password" }) }); } return Attempt.Succeed(new PasswordChangedModel()); diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index 96f02a5347..4d1eeb1e19 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -33,7 +33,7 @@ namespace Umbraco.Web.Logging _logger.LogError(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Warning: - _logger.Warn(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogWarning(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Information: _logger.Info(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); diff --git a/src/Umbraco.Web/Macros/MacroRenderer.cs b/src/Umbraco.Web/Macros/MacroRenderer.cs index 7f6a1cdbf3..9e9bbcd0e5 100644 --- a/src/Umbraco.Web/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web/Macros/MacroRenderer.cs @@ -280,7 +280,7 @@ namespace Umbraco.Web.Macros } catch (Exception e) { - _plogger.Warn(e, "Failed {MsgIn}", msgIn); + _plogger.LogWarning(e, "Failed {MsgIn}", msgIn); var macroErrorEventArgs = new MacroErrorEventArgs { diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 7286f52c64..57a1b34892 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -68,7 +68,7 @@ namespace Umbraco.Web.Mvc var result = ViewEngines.Engines.FindView(ControllerContext, template, null); if (result.View != null) return true; - Logger.Warn("No physical template file was found for template {Template}", template); + Logger.LogWarning("No physical template file was found for template {Template}", template); return false; } diff --git a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs index 9000e426ac..af74e1da08 100644 --- a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs +++ b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs @@ -280,7 +280,7 @@ namespace Umbraco.Web.Mvc } else { - Current.Logger.Warn("The current Document Type {ContentTypeAlias} matches a locally declared controller of type {ControllerName}. Custom Controllers for Umbraco routing must implement '{UmbracoRenderController}' and inherit from '{UmbracoControllerBase}'.", + Current.Logger.LogWarning("The current Document Type {ContentTypeAlias} matches a locally declared controller of type {ControllerName}. Custom Controllers for Umbraco routing must implement '{UmbracoRenderController}' and inherit from '{UmbracoControllerBase}'.", request.PublishedContent.ContentType.Alias, controllerType.FullName, typeof(IRenderController).FullName, diff --git a/src/Umbraco.Web/Security/MembershipHelper.cs b/src/Umbraco.Web/Security/MembershipHelper.cs index f13be1c6ea..ffbf5a5b09 100644 --- a/src/Umbraco.Web/Security/MembershipHelper.cs +++ b/src/Umbraco.Web/Security/MembershipHelper.cs @@ -305,7 +305,7 @@ namespace Umbraco.Web.Security if (member == null) { //this should not happen - Current.Logger.Warn("The member validated but then no member was returned with the username {Username}", username); + Current.Logger.LogWarning("The member validated but then no member was returned with the username {Username}", username); return false; } //Log them in @@ -847,7 +847,7 @@ namespace Umbraco.Web.Security } catch (Exception ex) { - _logger.Warn(ex, "Could not change member password"); + _logger.LogWarning(ex, "Could not change member password"); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult("Could not change password, error: " + ex.Message + " (see log for full details)", new[] { "value" }) }); } diff --git a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs index b099110911..95b2dcda58 100644 --- a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs +++ b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs @@ -131,7 +131,7 @@ namespace Umbraco.Web.Security.Providers if (MemberService.Exists(username)) { status = MembershipCreateStatus.DuplicateUserName; - Current.Logger.Warn>("Cannot create member as username already exists: {Username}", username); + Current.Logger.LogWarning>("Cannot create member as username already exists: {Username}", username); return null; } @@ -139,7 +139,7 @@ namespace Umbraco.Web.Security.Providers if (MemberService.GetByEmail(email) != null && RequiresUniqueEmail) { status = MembershipCreateStatus.DuplicateEmail; - Current.Logger.Warn>("Cannot create member as a member with the same email address exists: {Email}", email); + Current.Logger.LogWarning>("Cannot create member as a member with the same email address exists: {Email}", email); return null; } diff --git a/src/Umbraco.Web/UmbracoHelper.cs b/src/Umbraco.Web/UmbracoHelper.cs index 5b72e9cda0..78a296ad39 100644 --- a/src/Umbraco.Web/UmbracoHelper.cs +++ b/src/Umbraco.Web/UmbracoHelper.cs @@ -455,7 +455,7 @@ namespace Umbraco.Web } catch (Exception ex) when (ex is FormatException || ex is ArgumentException) { - Current.Logger.Warn(typeof(UmbracoHelper), "A value was detected in the ufprt parameter but Umbraco could not decrypt the string"); + Current.Logger.LogWarning(typeof(UmbracoHelper), "A value was detected in the ufprt parameter but Umbraco could not decrypt the string"); parts = null; return false; } diff --git a/src/Umbraco.Web/UmbracoInjectedModule.cs b/src/Umbraco.Web/UmbracoInjectedModule.cs index ecb67c997d..b0510fb4ca 100644 --- a/src/Umbraco.Web/UmbracoInjectedModule.cs +++ b/src/Umbraco.Web/UmbracoInjectedModule.cs @@ -229,7 +229,7 @@ namespace Umbraco.Web if (context.Content.HasContent()) return true; - _logger.Warn("Umbraco has no content"); + _logger.LogWarning("Umbraco has no content"); if (RouteTable.Routes[Constants.Web.NoContentRouteName] is Route route) { diff --git a/src/Umbraco.Web/UmbracoModule.cs b/src/Umbraco.Web/UmbracoModule.cs index 2dffe13851..e5b7914626 100644 --- a/src/Umbraco.Web/UmbracoModule.cs +++ b/src/Umbraco.Web/UmbracoModule.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web response.TrySkipIisCustomErrors = Current.Configs.WebRouting().TrySkipIisCustomErrors; if (response.TrySkipIisCustomErrors == false) - logger.Warn("Status code is 404 yet TrySkipIisCustomErrors is false - IIS will take over."); + logger.LogWarning("Status code is 404 yet TrySkipIisCustomErrors is false - IIS will take over."); } if (pcr.ResponseStatusCode > 0) diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index 9ef704bb52..1180cbd9d6 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -67,17 +67,17 @@ namespace Umbraco.Web.WebApi.Filters { if (actionExecutedContext == null) { - Current.Logger.Warn("The actionExecutedContext is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext is null!!??"); return; } if (actionExecutedContext.Request == null) { - Current.Logger.Warn("The actionExecutedContext.Request is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext.Request is null!!??"); return; } if (actionExecutedContext.Request.Content == null) { - Current.Logger.Warn("The actionExecutedContext.Request.Content is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content is null!!??"); return; } @@ -127,23 +127,23 @@ namespace Umbraco.Web.WebApi.Filters } else { - Current.Logger.Warn("The f.TempFilePath is null or whitespace!!??"); + Current.Logger.LogWarning("The f.TempFilePath is null or whitespace!!??"); } } } else { - Current.Logger.Warn("The uploadedFiles.UploadedFiles is null!!??"); + Current.Logger.LogWarning("The uploadedFiles.UploadedFiles is null!!??"); } } else { - Current.Logger.Warn("The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectContent.Value.GetType()); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectContent.Value.GetType()); } } else { - Current.Logger.Warn("The actionExecutedContext.Request.Content is not ObjectContent, it is {RequestObjectType}", actionExecutedContext.Request.Content.GetType()); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content is not ObjectContent, it is {RequestObjectType}", actionExecutedContext.Request.Content.GetType()); } } } From b8c60d16661f627e813a9fdfb8c954023aa74160 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 11:23:17 +0200 Subject: [PATCH 03/85] Refactor Fatal with simple message --- src/Umbraco.Core/Logging/ConsoleLogger.cs | 11 +++----- .../Logging/DebugDiagnosticsLogger.cs | 8 +----- src/Umbraco.Core/Logging/ILogger.cs | 14 +++------- src/Umbraco.Core/Logging/NullLogger.cs | 7 +---- src/Umbraco.Core/Logging/ProfilingLogger.cs | 7 ++--- .../Logging/Serilog/SerilogLogger.cs | 26 +++++++------------ .../Implementations/TestHelper.cs | 2 +- .../Testing/UmbracoIntegrationTest.cs | 2 +- .../LegacyXmlPublishedCache/XmlStore.cs | 6 ++--- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 +-- .../Scheduling/BackgroundTaskRunnerTests.cs | 2 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 4 +-- .../UmbracoExamine/ExamineBaseTest.cs | 2 +- .../UmbracoCoreServiceCollectionExtensions.cs | 2 +- src/Umbraco.Web/RoutableDocumentFilter.cs | 2 +- src/Umbraco.Web/UmbracoApplicationBase.cs | 2 +- 16 files changed, 35 insertions(+), 66 deletions(-) diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index e44d6b4b83..98ec79358c 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Logging { - public class ConsoleLogger : ILogger + public class ConsoleLogger : ILogger { private readonly IMessageTemplates _messageTemplates; @@ -26,20 +26,15 @@ namespace Umbraco.Core.Logging Console.WriteLine(exception); } - public void Fatal(Type reporting, string message) - { - Console.WriteLine("FATAL {0} - {1}", reporting.Name, message); - } - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { Console.WriteLine("FATAL {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); Console.WriteLine(exception); } - public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogCritical(string messageTemplate, params object[] propertyValues) { - Console.WriteLine("FATAL {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } public void LogError(Type reporting, Exception exception, string message) diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index dec3fc6c24..7bc412c4dd 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -29,12 +29,6 @@ namespace Umbraco.Core.Logging System.Diagnostics.Debug.WriteLine(Environment.NewLine + exception, reporting.FullName); } - /// - public void Fatal(Type reporting, string message) - { - System.Diagnostics.Debug.WriteLine(message); - } - /// public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { @@ -42,7 +36,7 @@ namespace Umbraco.Core.Logging } /// - public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogCritical(string messageTemplate, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); } diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index e56b20f5a3..db550c0c6e 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -3,6 +3,8 @@ namespace Umbraco.Core.Logging { + public interface ILogger : ILogger{} + /// /// Defines the logging service. /// @@ -13,7 +15,7 @@ namespace Umbraco.Core.Logging /// specification includes support for traditional C# numeric placeholders. /// For instance, "Processed {Input} in {Time}ms." /// - public interface ILogger + public interface ILogger { /// /// Determines if logging is enabled at a specified level, for a reporting type. @@ -38,13 +40,6 @@ namespace Umbraco.Core.Logging /// The message string is unspecified and is implementation-specific. void Fatal(Type reporting, Exception exception); - /// - /// Logs a fatal message. - /// - /// The reporting type. - /// A message. - void Fatal(Type reporting, string message); - /// /// Logs a fatal message with an exception. /// @@ -57,10 +52,9 @@ namespace Umbraco.Core.Logging /// /// Logs a fatal message. /// - /// The reporting type. /// A message template. /// Property values. - void Fatal(Type reporting, string messageTemplate, params object[] propertyValues); + void LogCritical(string messageTemplate, params object[] propertyValues); /// /// Logs an error message with an exception. diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index d3f29168a0..1a607eea29 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -16,17 +16,12 @@ namespace Umbraco.Core.Logging } - public void Fatal(Type reporting, string message) - { - - } - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { } - public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogCritical(string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index e6db3516ad..660c37baac 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -73,14 +73,11 @@ namespace Umbraco.Core.Logging public void Fatal(Type reporting, Exception exception) => Logger.Fatal(reporting, exception); - public void Fatal(Type reporting, string message) - => Logger.Fatal(reporting, message); - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) => Logger.Fatal(reporting, exception, messageTemplate, propertyValues); - public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Fatal(reporting, messageTemplate, propertyValues); + public void LogCritical(string messageTemplate, params object[] propertyValues) + => Logger.LogCritical(messageTemplate, propertyValues); public void LogError(Type reporting, Exception exception, string message) => Logger.LogError(reporting, exception, message); diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs index ce27a9e1b2..c9f3af7a3b 100644 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs @@ -10,12 +10,12 @@ namespace Umbraco.Core.Logging.Serilog /// /// Implements on top of Serilog. /// - public class SerilogLogger : ILogger, IDisposable + public class SerilogLogger : ILogger, IDisposable { public global::Serilog.ILogger SerilogLog { get; } /// - /// Initialize a new instance of the class with a configuration file. + /// Initialize a new instance of the class with a configuration file. /// /// public SerilogLogger(FileInfo logConfigFile) @@ -35,7 +35,7 @@ namespace Umbraco.Core.Logging.Serilog /// Creates a logger with some pre-defined configuration and remainder from config file /// /// Used by UmbracoApplicationBase to get its logger. - public static SerilogLogger CreateWithDefaultConfiguration(IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) + public static SerilogLogger CreateWithDefaultConfiguration(IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) { var loggerConfig = new LoggerConfiguration(); loggerConfig @@ -43,7 +43,7 @@ namespace Umbraco.Core.Logging.Serilog .ReadFromConfigFile(loggingConfiguration) .ReadFromUserConfigFile(loggingConfiguration); - return new SerilogLogger(loggerConfig); + return new SerilogLogger(loggerConfig); } /// @@ -96,15 +96,9 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Fatal(Type reporting, string message) + public void LogCritical(string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Fatal(message); - } - - /// - public void Fatal(Type reporting, string messageTemplate, params object[] propertyValues) - { - LoggerFor(reporting).Fatal(messageTemplate, propertyValues); + LoggerFor(typeof(T)).Fatal(messageTemplate, propertyValues); } /// @@ -149,25 +143,25 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Warn(Type reporting, string message) + public void LogWarning(Type reporting, string message) { LoggerFor(reporting).Warning(message); } /// - public void Warn(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Type reporting, string message, params object[] propertyValues) { LoggerFor(reporting).Warning(message, propertyValues); } /// - public void Warn(Type reporting, Exception exception, string message) + public void LogWarning(Type reporting, Exception exception, string message) { LoggerFor(reporting).Warning(exception, message); } /// - public void Warn(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) { LoggerFor(reporting).Warning(exception, messageTemplate, propertyValues); } diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index 7faa4dac34..a5a4f0415c 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Integration.Implementations _hostingLifetime = new AspNetCoreApplicationShutdownRegistry(Mock.Of()); - Logger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); + Logger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); } diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index c9e88b9deb..173bf8127b 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -220,7 +220,7 @@ namespace Umbraco.Tests.Integration.Testing services.AddMvc(); - services.AddSingleton(new ConsoleLogger(new MessageTemplates())); + services.AddSingleton(new ConsoleLogger(new MessageTemplates())); CustomTestSetup(services); } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index 1385975d9c..b21ef866ff 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -286,8 +286,8 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache throw new Exception("Cannot run with both ContinouslyUpdateXmlDiskCache and XmlContentCheckForDiskChanges being true."); if (XmlIsImmutable == false) - //Current.Logger.Warn("Running with CloneXmlContent being false is a bad idea."); - Current.Logger.Warn("CloneXmlContent is false - ignored, we always clone."); + //Current.Logger.LogWarning("Running with CloneXmlContent being false is a bad idea."); + Current.Logger.LogWarning("CloneXmlContent is false - ignored, we always clone."); // note: if SyncFromXmlFile then we should also disable / warn that local edits are going to cause issues... } @@ -797,7 +797,7 @@ AND (umbracoNode.id=@id)"; } catch (FileNotFoundException) { - Current.Logger.Warn("Failed to load Xml, file does not exist."); + Current.Logger.LogWarning("Failed to load Xml, file does not exist."); return null; } catch (Exception ex) diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 70dfc9ccc6..0bc30f4460 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -59,7 +59,7 @@ namespace Umbraco.Tests.Runtimes // FIXME: we need a better management of settings here (and, true config files?) // create the very basic and essential things we need - var logger = new ConsoleLogger(new MessageTemplates()); + var logger = new ConsoleLogger(new MessageTemplates()); var profiler = new LogProfiler(logger); var profilingLogger = new ProfilingLogger(logger, profiler); var appCaches = AppCaches.Disabled; @@ -255,7 +255,7 @@ namespace Umbraco.Tests.Runtimes // - assigning the factory to Current.Factory // create the very basic and essential things we need - var logger = new ConsoleLogger(new MessageTemplates()); + var logger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); var profilingLogger = new ProfilingLogger(logger, profiler); var appCaches = AppCaches.Disabled; diff --git a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs index 2291584f66..62ec6746dd 100644 --- a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs +++ b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Scheduling [OneTimeSetUp] public void InitializeFixture() { - _logger = new ConsoleLogger(new MessageTemplates()); + _logger = new ConsoleLogger(new MessageTemplates()); _hostingEnvironment = TestHelper.GetHostingEnvironmentLifetime(); } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 94c52e8d96..60dad4b464 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -264,11 +264,11 @@ namespace Umbraco.Tests.Testing profiler = Mock.Of(); break; case UmbracoTestOptions.Logger.Serilog: - logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); + logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); profiler = new LogProfiler(logger); break; case UmbracoTestOptions.Logger.Console: - logger = new ConsoleLogger(new MessageTemplates()); + logger = new ConsoleLogger(new MessageTemplates()); profiler = new LogProfiler(logger); break; default: diff --git a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs index 0d55fd99d7..b9f5f935c8 100644 --- a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs +++ b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs @@ -18,7 +18,7 @@ namespace Umbraco.Tests.UmbracoExamine public void InitializeFixture() { - var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); + var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); _profilingLogger = new ProfilingLogger(logger, new LogProfiler(logger)); } diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index fd24122b3d..5ab13b72ab 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -341,7 +341,7 @@ namespace Umbraco.Extensions private static Core.Logging.ILogger AddLogger(IServiceCollection services, Core.Hosting.IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) { // Create a serilog logger - var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); + var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); // Wire up all the bits that serilog needs. We need to use our own code since the Serilog ext methods don't cater to our needs since // we don't want to use the global serilog `Log` object and we don't have our own ILogger implementation before the HostBuilder runs which diff --git a/src/Umbraco.Web/RoutableDocumentFilter.cs b/src/Umbraco.Web/RoutableDocumentFilter.cs index 43e47a39b3..cf87e3cf56 100644 --- a/src/Umbraco.Web/RoutableDocumentFilter.cs +++ b/src/Umbraco.Web/RoutableDocumentFilter.cs @@ -80,7 +80,7 @@ namespace Umbraco.Web //NOTE: No need to warn, plus if we do we should log the document, as this message doesn't really tell us anything :) //if (!maybeDoc) //{ - // Logger.Warn("Not a document"); + // Logger.LogWarning("Not a document"); //} return maybeDoc; } diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index b85ba9de67..3a68572fa1 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -45,7 +45,7 @@ namespace Umbraco.Web Path.Combine(hostingEnvironment.ApplicationPhysicalPath, "config\\serilog.config"), Path.Combine(hostingEnvironment.ApplicationPhysicalPath, "config\\serilog.user.config")); var ioHelper = new IOHelper(hostingEnvironment); - var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); + var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); var configs = configFactory.Create(); From db4652c0bee3c348cfba12ceaa0b28f30ff518f9 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 11:49:47 +0200 Subject: [PATCH 04/85] Align fatal exception with message --- src/Umbraco.Core/Logging/ConsoleLogger.cs | 10 ++-------- src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs | 12 +++--------- src/Umbraco.Core/Logging/ILogger.cs | 11 +---------- src/Umbraco.Core/Logging/LoggerExtensions.cs | 4 ++-- src/Umbraco.Core/Logging/NullLogger.cs | 7 +------ src/Umbraco.Core/Logging/ProfilingLogger.cs | 7 ++----- .../Logging/Serilog/SerilogLogger.cs | 11 ++--------- .../Umbraco.Core/Composing/TypeFinderTests.cs | 2 +- .../Migrations/AdvancedMigrationTests.cs | 10 +++++----- src/Umbraco.Tests/Models/ContentTests.cs | 2 +- .../Persistence/NPocoTests/NPocoBulkInsertTests.cs | 2 +- src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 4 ++-- .../Scheduling/BackgroundTaskRunnerTests2.cs | 4 ++-- .../Services/ContentServicePerformanceTest.cs | 2 +- src/Umbraco.Tests/Services/PerformanceTests.cs | 2 +- src/Umbraco.Web/Logging/OwinLogger.cs | 2 +- 16 files changed, 28 insertions(+), 64 deletions(-) diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index 98ec79358c..26f119d0af 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -14,21 +14,15 @@ namespace Umbraco.Core.Logging public bool IsEnabled(Type reporting, LogLevel level) => true; - public void Fatal(Type reporting, Exception exception, string message) - { - Console.WriteLine("FATAL {0} - {1}", reporting.Name, message); - Console.WriteLine(exception); - } - public void Fatal(Type reporting, Exception exception) { Console.WriteLine("FATAL {0}", reporting.Name); Console.WriteLine(exception); } - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) { - Console.WriteLine("FATAL {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); Console.WriteLine(exception); } diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index 7bc412c4dd..9fe37dd40f 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -5,7 +5,7 @@ namespace Umbraco.Core.Logging /// /// Implements on top of . /// - public class DebugDiagnosticsLogger : ILogger + public class DebugDiagnosticsLogger : ILogger { private readonly IMessageTemplates _messageTemplates; @@ -17,12 +17,6 @@ namespace Umbraco.Core.Logging public bool IsEnabled(Type reporting, LogLevel level) => true; - /// - public void Fatal(Type reporting, Exception exception, string message) - { - System.Diagnostics.Debug.WriteLine(message + Environment.NewLine + exception, reporting.FullName); - } - /// public void Fatal(Type reporting, Exception exception) { @@ -30,9 +24,9 @@ namespace Umbraco.Core.Logging } /// - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, typeof(T).FullName); } /// diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index db550c0c6e..dfaa42f1aa 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -24,14 +24,6 @@ namespace Umbraco.Core.Logging /// The level. bool IsEnabled(Type reporting, LogLevel level); - /// - /// Logs a fatal message with an exception. - /// - /// The reporting type. - /// An exception. - /// A message. - void Fatal(Type reporting, Exception exception, string message); - /// /// Logs a fatal exception. /// @@ -43,11 +35,10 @@ namespace Umbraco.Core.Logging /// /// Logs a fatal message with an exception. /// - /// The reporting type. /// An exception. /// A message template. /// Property values. - void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); + void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues); /// /// Logs a fatal message. diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index e75e66318c..ef006edd21 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -170,7 +170,7 @@ namespace Umbraco.Core.Logging /// An exception. /// A message. public static void Fatal(this ILogger logger, Exception exception, string message) - => logger.Fatal(typeof(T), exception, message); + => logger.LogCritical(exception, message, new object[] { }); /// /// Logs a fatal message. @@ -181,6 +181,6 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void Fatal(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.Fatal(typeof(T), exception, messageTemplate, propertyValues); + => logger.LogCritical(exception, messageTemplate, propertyValues); } } diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index 1a607eea29..302fe46592 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -6,17 +6,12 @@ namespace Umbraco.Core.Logging { public bool IsEnabled(Type reporting, LogLevel level) => false; - public void Fatal(Type reporting, Exception exception, string message) - { - - } - public void Fatal(Type reporting, Exception exception) { } - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 660c37baac..9670874d65 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -67,14 +67,11 @@ namespace Umbraco.Core.Logging public bool IsEnabled(Type reporting, LogLevel level) => Logger.IsEnabled(reporting, level); - public void Fatal(Type reporting, Exception exception, string message) - => Logger.Fatal(reporting, exception, message); - public void Fatal(Type reporting, Exception exception) => Logger.Fatal(reporting, exception); - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - => Logger.Fatal(reporting, exception, messageTemplate, propertyValues); + public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) + => Logger.LogCritical(exception, messageTemplate, propertyValues); public void LogCritical(string messageTemplate, params object[] propertyValues) => Logger.LogCritical(messageTemplate, propertyValues); diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs index c9f3af7a3b..dac7e86f51 100644 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs @@ -80,13 +80,6 @@ namespace Umbraco.Core.Logging.Serilog public bool IsEnabled(Type reporting, LogLevel level) => LoggerFor(reporting).IsEnabled(MapLevel(level)); - /// - public void Fatal(Type reporting, Exception exception, string message) - { - var logger = LoggerFor(reporting); - logger.Fatal(exception, message); - } - /// public void Fatal(Type reporting, Exception exception) { @@ -102,9 +95,9 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Fatal(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) { - var logger = LoggerFor(reporting); + var logger = LoggerFor(typeof(T)); logger.Fatal(exception, messageTemplate, propertyValues); } diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index e0e87fb1ee..7f7a67dacc 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -60,7 +60,7 @@ namespace Umbraco.Tests.Composing private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 966c4109c6..9b55362c67 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -21,7 +21,7 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateTableOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var builder = Mock.Of(); Mock.Get(builder) @@ -53,7 +53,7 @@ namespace Umbraco.Tests.Migrations [Test] public void DeleteKeysAndIndexesOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var builder = Mock.Of(); Mock.Get(builder) @@ -87,7 +87,7 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateKeysAndIndexesOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var builder = Mock.Of(); Mock.Get(builder) @@ -124,7 +124,7 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateKeysAndIndexes() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var builder = Mock.Of(); Mock.Get(builder) @@ -161,7 +161,7 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateColumn() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var builder = Mock.Of(); Mock.Get(builder) diff --git a/src/Umbraco.Tests/Models/ContentTests.cs b/src/Umbraco.Tests/Models/ContentTests.cs index 31e928159b..951daad18c 100644 --- a/src/Umbraco.Tests/Models/ContentTests.cs +++ b/src/Umbraco.Tests/Models/ContentTests.cs @@ -237,7 +237,7 @@ namespace Umbraco.Tests.Models private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs index 6c4a23fa00..2781737f21 100644 --- a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs +++ b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs @@ -27,7 +27,7 @@ namespace Umbraco.Tests.Persistence.NPocoTests // create the db // prob not what we want, this is not a real database, but hey, the test is ignored anyways // we'll fix this when we have proper testing infrastructure - var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(new DebugDiagnosticsLogger(new MessageTemplates())); + var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(new DebugDiagnosticsLogger(new MessageTemplates())); //drop the table dbSqlServer.Execute("DROP TABLE [umbracoServer]"); diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index e53e6bfb8a..25e7fbb456 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -70,7 +70,7 @@ namespace Umbraco.Tests.Runtimes Assert.IsTrue(TestComponent.Ctored); Assert.IsNotNull(TestComponent.ProfilingLogger); Assert.IsInstanceOf(TestComponent.ProfilingLogger); - Assert.IsInstanceOf(((ProfilingLogger) TestComponent.ProfilingLogger).Logger); + Assert.IsInstanceOf>(((ProfilingLogger) TestComponent.ProfilingLogger).Logger); // note: components are NOT disposed after boot @@ -88,7 +88,7 @@ namespace Umbraco.Tests.Runtimes { } - private static readonly DebugDiagnosticsLogger _logger = new DebugDiagnosticsLogger(new MessageTemplates()); + private static readonly DebugDiagnosticsLogger _logger = new DebugDiagnosticsLogger(new MessageTemplates()); private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; private static readonly IProfiler _profiler = new TestProfiler(); private static readonly Configs _configs = GetConfigs(); diff --git a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs index 01169abce2..5d1cbb4591 100644 --- a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs +++ b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs @@ -21,7 +21,7 @@ namespace Umbraco.Tests.Scheduling [Timeout(4000)] public async Task ThreadResumeIssue() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, logger, TestHelper.GetHostingEnvironmentLifetime()); var work = new ThreadResumeIssueWorkItem(); runner.Add(work); @@ -76,7 +76,7 @@ namespace Umbraco.Tests.Scheduling [Ignore("Only runs in the debugger.")] public async Task DebuggerInterferenceIssue() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, logger, TestHelper.GetHostingEnvironmentLifetime()); var taskCompleted = false; runner.TaskCompleted += (sender, args) => diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index d5afde6477..a47e327e20 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -65,7 +65,7 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Services/PerformanceTests.cs b/src/Umbraco.Tests/Services/PerformanceTests.cs index 67de1c91d7..87818fd270 100644 --- a/src/Umbraco.Tests/Services/PerformanceTests.cs +++ b/src/Umbraco.Tests/Services/PerformanceTests.cs @@ -58,7 +58,7 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = new DebugDiagnosticsLogger(new MessageTemplates()); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index 4d1eeb1e19..dcd1a0f531 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -27,7 +27,7 @@ namespace Umbraco.Web.Logging switch (eventType) { case TraceEventType.Critical: - _logger.Fatal(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogCritical(exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Error: _logger.LogError(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); From 161061dbbc062a77a971be883ccea08756e52f51 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 14:10:19 +0200 Subject: [PATCH 05/85] Remove exception logging and finish LogWarning --- src/Umbraco.Core/Composing/TypeFinder.cs | 6 +- src/Umbraco.Core/Logging/ConsoleLogger.cs | 38 +++-------- .../Logging/DebugDiagnosticsLogger.cs | 38 ++--------- src/Umbraco.Core/Logging/DisposableTimer.cs | 2 +- src/Umbraco.Core/Logging/ILogger.cs | 64 ++----------------- src/Umbraco.Core/Logging/LoggerExtensions.cs | 27 +++----- src/Umbraco.Core/Logging/NullLogger.cs | 28 ++------ src/Umbraco.Core/Logging/ProfilingLogger.cs | 34 +++------- .../LuceneIndexDiagnostics.cs | 4 +- .../UmbracoExamineIndex.cs | 2 +- .../Compose/NotificationsComponent.cs | 4 +- .../Logging/Serilog/SerilogLogger.cs | 49 +++----------- .../Media/UploadAutoFillProperties.cs | 2 +- .../V_8_0_0/PropertyEditorsMigrationBase.cs | 2 +- .../Models/Mapping/PropertyTypeGroupMapper.cs | 3 +- .../Models/PathValidationExtensions.cs | 2 +- .../Models/PropertyTagsExtensions.cs | 2 +- .../Persistence/Factories/DataTypeFactory.cs | 4 +- .../RichTextEditorPastedImages.cs | 2 +- .../Runtime/MainDomSemaphoreLock.cs | 2 +- .../Controllers/DictionaryController.cs | 4 +- .../Controllers/RelationTypeController.cs | 4 +- .../ImageCropperTemplateExtensions.cs | 2 +- .../Install/InstallController.cs | 2 +- .../Middleware/UmbracoRequestMiddleware.cs | 2 +- src/Umbraco.Web/ImageProcessorLogger.cs | 4 +- src/Umbraco.Web/Logging/OwinLogger.cs | 4 +- .../AuthenticationOptionsExtensions.cs | 2 +- src/Umbraco.Web/UmbracoHelper.cs | 2 +- .../Filters/AngularAntiForgeryHelper.cs | 2 +- .../WebApi/UnhandledExceptionLogger.cs | 2 +- 31 files changed, 84 insertions(+), 261 deletions(-) diff --git a/src/Umbraco.Core/Composing/TypeFinder.cs b/src/Umbraco.Core/Composing/TypeFinder.cs index efd3a6cb23..0d4faf261b 100644 --- a/src/Umbraco.Core/Composing/TypeFinder.cs +++ b/src/Umbraco.Core/Composing/TypeFinder.cs @@ -297,7 +297,7 @@ namespace Umbraco.Core.Composing } catch (TypeLoadException ex) { - _logger.LogError(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); + _logger.LogError(ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); continue; } @@ -372,7 +372,7 @@ namespace Umbraco.Core.Composing } catch (TypeLoadException ex) { - _logger.LogError(typeof(TypeFinder), ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); + _logger.LogError(ex, "Could not query types on {Assembly} assembly, this is most likely due to this assembly not being compatible with the current Umbraco version", assembly); continue; } @@ -442,7 +442,7 @@ namespace Umbraco.Core.Composing if (_notifiedLoadExceptionAssemblies.Contains(a.FullName) == false) { _notifiedLoadExceptionAssemblies.Add(a.FullName); - _logger.LogWarning(typeof (TypeFinder), ex, "Could not load all types from {TypeName}.", a.GetName().Name); + _logger.LogWarning(ex, "Could not load all types from {TypeName}.", a.GetName().Name); } } return rex.Types.WhereNotNull().ToArray(); diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index 26f119d0af..2e78b798b7 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -31,53 +31,31 @@ namespace Umbraco.Core.Logging Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void LogError(Type reporting, Exception exception, string message) - { - Console.WriteLine("ERROR {0} - {1}", reporting.Name, message); - Console.WriteLine(exception); - } - public void LogError(Type reporting, Exception exception) { Console.WriteLine("ERROR {0}", reporting.Name); Console.WriteLine(exception); } - public void LogError(Type reporting, string message) + public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) { - Console.WriteLine("ERROR {0} - {1}", reporting.Name, message); - } - - public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("ERROR {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); Console.WriteLine(exception); } - public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(string messageTemplate, params object[] propertyValues) { - Console.WriteLine("ERROR {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void LogWarning(Type reporting, string message) + public void LogWarning(string message, params object[] propertyValues) { - Console.WriteLine("WARN {0} - {1}", reporting.Name, message); + Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); } - public void LogWarning(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Exception exception, string message, params object[] propertyValues) { - Console.WriteLine("WARN {0} - {1}", reporting.Name, _messageTemplates.Render(message, propertyValues)); - } - - public void LogWarning(Type reporting, Exception exception, string message) - { - Console.WriteLine("WARN {0} - {1}", reporting.Name, message); - Console.WriteLine(exception); - } - - public void LogWarning(Type reporting, Exception exception, string message, params object[] propertyValues) - { - Console.WriteLine("WARN {0} - {1}", reporting.Name, _messageTemplates.Render(message, propertyValues)); + Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); Console.WriteLine(exception); } diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index 9fe37dd40f..7dc880c4c5 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -35,12 +35,6 @@ namespace Umbraco.Core.Logging System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); } - /// - public void LogError(Type reporting, Exception exception, string message) - { - System.Diagnostics.Debug.WriteLine(message + Environment.NewLine + exception, reporting.FullName); - } - /// public void LogError(Type reporting, Exception exception) { @@ -48,45 +42,27 @@ namespace Umbraco.Core.Logging } /// - public void LogError(Type reporting, string message) + public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(message); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, typeof(T).FullName); } /// - public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, reporting.FullName); - } - - /// - public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(string messageTemplate, params object[] propertyValues) { System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); } /// - public void LogWarning(Type reporting, string message) + public void LogWarning(string message, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(message, reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message, propertyValues), typeof(T).FullName); } /// - public void LogWarning(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Exception exception, string message, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message, propertyValues), reporting.FullName); - } - - /// - public void LogWarning(Type reporting, Exception exception, string message) - { - System.Diagnostics.Debug.WriteLine(message + Environment.NewLine + exception, reporting.FullName); - } - - /// - public void LogWarning(Type reporting, Exception exception, string message, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message + Environment.NewLine + exception, propertyValues), reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message + Environment.NewLine + exception, propertyValues), typeof(T).FullName); } /// diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index 9ae1dd8e71..bd133a5fd2 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -84,7 +84,7 @@ namespace Umbraco.Core.Logging { if (_failed) { - _logger.LogError(_loggerType, _failException, "{FailMessage} ({Duration}ms) [Timing {TimingId}]", _failMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.LogError(_failException, "{FailMessage} ({Duration}ms) [Timing {TimingId}]", _failMessage, Stopwatch.ElapsedMilliseconds, _timingId); } else switch (_level) { diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index dfaa42f1aa..db58169ce3 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -3,7 +3,7 @@ namespace Umbraco.Core.Logging { - public interface ILogger : ILogger{} + public interface ILogger : ILogger { } /// /// Defines the logging service. @@ -24,14 +24,6 @@ namespace Umbraco.Core.Logging /// The level. bool IsEnabled(Type reporting, LogLevel level); - /// - /// Logs a fatal exception. - /// - /// The reporting type. - /// An exception. - /// The message string is unspecified and is implementation-specific. - void Fatal(Type reporting, Exception exception); - /// /// Logs a fatal message with an exception. /// @@ -50,74 +42,32 @@ namespace Umbraco.Core.Logging /// /// Logs an error message with an exception. /// - /// The reporting type. /// An exception. - /// A message. - void LogError(Type reporting, Exception exception, string message); - - /// - /// Logs an error exception. - /// - /// The reporting type. - /// An exception. - /// The message string is unspecified and is implementation-specific. - void LogError(Type reporting, Exception exception); + /// A message template. + /// Property values. + void LogError(Exception exception, string messageTemplate, params object[] propertyValues); /// /// Logs an error message. /// - /// The reporting type. - /// A message. - void LogError(Type reporting, string message); - - /// - /// Logs an error message with an exception. - /// - /// The reporting type. - /// An exception. /// A message template. /// Property values. - void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); - - /// - /// Logs an error message. - /// - /// The reporting type. - /// A message template. - /// Property values. - void LogError(Type reporting, string messageTemplate, params object[] propertyValues); + void LogError(string messageTemplate, params object[] propertyValues); /// /// Logs a warning message. /// - /// The reporting type. - /// A message. - void LogWarning(Type reporting, string message); - - /// - /// Logs a warning message. - /// - /// The reporting type. /// A message template. /// Property values. - void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues); + void LogWarning(string messageTemplate, params object[] propertyValues); /// /// Logs a warning message with an exception. /// - /// The reporting type. - /// An exception. - /// A message. - void LogWarning(Type reporting, Exception exception, string message); - - /// - /// Logs a warning message with an exception. - /// - /// The reporting type. /// An exception. /// A message template. /// Property values. - void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues); + void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues); /// /// Logs an information message. diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index ef006edd21..515fed9db1 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -24,7 +24,7 @@ namespace Umbraco.Core.Logging /// A message. /// An exception. public static void LogError(this ILogger logger, Exception exception, string message) - => logger.LogError(typeof(T), exception, message); + => logger.LogError(exception, message); /// /// Logs an error message with an exception. @@ -35,16 +35,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void LogError(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.LogError(typeof(T), exception, messageTemplate, propertyValues); - - /// - /// Logs an error exception. - /// - /// The reporting type. - /// The logger. - /// An exception. - public static void LogError(this ILogger logger, Exception exception) - => logger.LogError(typeof(T), exception); + => logger.LogError(exception, messageTemplate, propertyValues); /// /// Logs an error message. @@ -53,7 +44,7 @@ namespace Umbraco.Core.Logging /// The logger. /// A message. public static void LogError(this ILogger logger, string message) - => logger.LogError(typeof(T), message); + => logger.LogError(message); /// /// Logs an error message. @@ -63,7 +54,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void LogError(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogError(typeof(T), messageTemplate, propertyValues); + => logger.LogError(messageTemplate, propertyValues); /// /// Logs a warning message. @@ -72,7 +63,7 @@ namespace Umbraco.Core.Logging /// The logger. /// A message. public static void LogWarning(this ILogger logger, string message) - => logger.LogWarning(typeof(T), message); + => logger.LogWarning(message); /// /// Logs a warning message. @@ -82,7 +73,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void LogWarning(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogWarning(typeof(T), messageTemplate, propertyValues); + => logger.LogWarning(messageTemplate, propertyValues); /// /// Logs a warning message with an exception. @@ -92,7 +83,7 @@ namespace Umbraco.Core.Logging /// An exception. /// A message. public static void LogWarning(this ILogger logger, Exception exception, string message) - => logger.LogWarning(typeof(T), exception, message); + => logger.LogWarning(exception, message); /// /// Logs a warning message with an exception. @@ -103,7 +94,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void LogWarning(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.LogWarning(typeof(T), exception, messageTemplate, propertyValues); + => logger.LogWarning(exception, messageTemplate, propertyValues); /// /// Logs an information message. @@ -170,7 +161,7 @@ namespace Umbraco.Core.Logging /// An exception. /// A message. public static void Fatal(this ILogger logger, Exception exception, string message) - => logger.LogCritical(exception, message, new object[] { }); + => logger.LogCritical(exception, message); /// /// Logs a fatal message. diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index 302fe46592..902da4c9c9 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -21,47 +21,27 @@ namespace Umbraco.Core.Logging } - public void LogError(Type reporting, Exception exception, string message) - { - - } - public void LogError(Type reporting, Exception exception) { } - public void LogError(Type reporting, string message) + public void LogError(string message, params object[] propertyValues) { } - public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) { } - public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogWarning(string messageTemplate, params object[] propertyValues) { } - public void LogWarning(Type reporting, string message) - { - - } - - public void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues) - { - - } - - public void LogWarning(Type reporting, Exception exception, string message) - { - - } - - public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) + public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 9670874d65..331d9f2b36 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -67,41 +67,23 @@ namespace Umbraco.Core.Logging public bool IsEnabled(Type reporting, LogLevel level) => Logger.IsEnabled(reporting, level); - public void Fatal(Type reporting, Exception exception) - => Logger.Fatal(reporting, exception); - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) => Logger.LogCritical(exception, messageTemplate, propertyValues); public void LogCritical(string messageTemplate, params object[] propertyValues) => Logger.LogCritical(messageTemplate, propertyValues); - public void LogError(Type reporting, Exception exception, string message) - => Logger.LogError(reporting, exception, message); + public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) + => Logger.LogError(exception, messageTemplate, propertyValues); - public void LogError(Type reporting, Exception exception) - => Logger.LogError(reporting, exception); + public void LogError(string messageTemplate, params object[] propertyValues) + => Logger.LogError(messageTemplate, propertyValues); - public void LogError(Type reporting, string message) - => Logger.LogError(reporting, message); + public void LogWarning(string messageTemplate, params object[] propertyValues) + => Logger.LogWarning(messageTemplate, propertyValues); - public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - => Logger.LogError(reporting, exception, messageTemplate, propertyValues); - - public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.LogError(reporting, messageTemplate, propertyValues); - - public void LogWarning(Type reporting, string message) - => Logger.LogWarning(reporting, message); - - public void LogWarning(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.LogWarning(reporting, messageTemplate, propertyValues); - - public void LogWarning(Type reporting, Exception exception, string message) - => Logger.LogWarning(reporting, exception, message); - - public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - => Logger.LogWarning(reporting, exception, messageTemplate, propertyValues); + public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) + => Logger.LogWarning(exception, messageTemplate, propertyValues); public void Info(Type reporting, string message) => Logger.Info(reporting, message); diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs index e4d6460eb4..341eb67772 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs @@ -34,7 +34,7 @@ namespace Umbraco.Examine } catch (AlreadyClosedException) { - Logger.LogWarning(typeof(UmbracoContentIndex), "Cannot get GetIndexDocumentCount, the writer is already closed"); + Logger.LogWarning("Cannot get GetIndexDocumentCount, the writer is already closed"); return 0; } } @@ -50,7 +50,7 @@ namespace Umbraco.Examine } catch (AlreadyClosedException) { - Logger.LogWarning(typeof(UmbracoContentIndex), "Cannot get GetIndexFieldCount, the writer is already closed"); + Logger.LogWarning("Cannot get GetIndexFieldCount, the writer is already closed"); return 0; } } diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index b904ce1f36..10a1d075b0 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -118,7 +118,7 @@ namespace Umbraco.Examine /// protected override void OnIndexingError(IndexingErrorEventArgs ex) { - ProfilingLogger.LogError(GetType(), ex.InnerException, ex.Message); + ProfilingLogger.LogError(ex.InnerException, ex.Message); base.OnIndexingError(ex); } diff --git a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs index 6dd265483d..49c34331c4 100644 --- a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs @@ -222,7 +222,7 @@ namespace Umbraco.Web.Compose user = _userService.GetUserById(Constants.Security.SuperUserId); if (user == null) { - _logger.LogWarning(typeof(Notifier), "Notifications can not be sent, no admin user with id {SuperUserId} could be resolved", Constants.Security.SuperUserId); + _logger.LogWarning("Notifications can not be sent, no admin user with id {SuperUserId} could be resolved", Constants.Security.SuperUserId); return; } } @@ -235,7 +235,7 @@ namespace Umbraco.Web.Compose if (sender == null) throw new ArgumentNullException(nameof(sender)); if (siteUri == null) { - _logger.LogWarning(typeof(Notifier), "Notifications can not be sent, no site url is set (might be during boot process?)"); + _logger.LogWarning("Notifications can not be sent, no site url is set (might be during boot process?)"); return; } diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs index dac7e86f51..00a5ff918f 100644 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs @@ -80,14 +80,6 @@ namespace Umbraco.Core.Logging.Serilog public bool IsEnabled(Type reporting, LogLevel level) => LoggerFor(reporting).IsEnabled(MapLevel(level)); - /// - public void Fatal(Type reporting, Exception exception) - { - var logger = LoggerFor(reporting); - var message = "Exception."; - logger.Fatal(exception, message); - } - /// public void LogCritical(string messageTemplate, params object[] propertyValues) { @@ -101,13 +93,6 @@ namespace Umbraco.Core.Logging.Serilog logger.Fatal(exception, messageTemplate, propertyValues); } - /// - public void LogError(Type reporting, Exception exception, string message) - { - var logger = LoggerFor(reporting); - logger.Error(exception, message); - } - /// public void LogError(Type reporting, Exception exception) { @@ -117,46 +102,28 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void LogError(Type reporting, string message) + public void LogError(string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Error(message); + LoggerFor(typeof(T)).Error(messageTemplate, propertyValues); } /// - public void LogError(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Error(messageTemplate, propertyValues); - } - - /// - public void LogError(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - { - var logger = LoggerFor(reporting); + var logger = LoggerFor(typeof(T)); logger.Error(exception, messageTemplate, propertyValues); } /// - public void LogWarning(Type reporting, string message) + public void LogWarning(string message, params object[] propertyValues) { - LoggerFor(reporting).Warning(message); + LoggerFor(typeof(T)).Warning(message, propertyValues); } /// - public void LogWarning(Type reporting, string message, params object[] propertyValues) + public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Warning(message, propertyValues); - } - - /// - public void LogWarning(Type reporting, Exception exception, string message) - { - LoggerFor(reporting).Warning(exception, message); - } - - /// - public void LogWarning(Type reporting, Exception exception, string messageTemplate, params object[] propertyValues) - { - LoggerFor(reporting).Warning(exception, messageTemplate, propertyValues); + LoggerFor(typeof(T)).Warning(exception, messageTemplate, propertyValues); } /// diff --git a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs index c675fa4079..e947afe6e2 100644 --- a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs +++ b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs @@ -74,7 +74,7 @@ namespace Umbraco.Web.Media } catch (Exception ex) { - _logger.LogError(typeof(UploadAutoFillProperties), ex, "Could not populate upload auto-fill properties for file '{File}'.", filepath); + _logger.LogError(ex, "Could not populate upload auto-fill properties for file '{File}'.", filepath); ResetProperties(content, autoFillConfig, culture, segment); } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs index 554402fe38..61e69fe234 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs @@ -78,7 +78,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 continue; } - Logger.LogWarning(GetType(), "Could not find PropertyData {PropertyDataId} value '{PropertyValue}' in the datatype configuration: {Values}.", + Logger.LogWarning("Could not find PropertyData {PropertyDataId} value '{PropertyValue}' in the datatype configuration: {Values}.", propData.Id, id, string.Join(", ", config.Items.Select(x => x.Id + ":" + x.Value))); canConvert = false; } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs index 99708d3fad..e67fba2206 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs @@ -210,8 +210,7 @@ namespace Umbraco.Web.Models.Mapping //fixme: Don't explode if we can't find this, log an error and change this to a label if (propertyEditor == null) { - _logger.LogError(GetType(), - "No property editor could be resolved with the alias: {PropertyEditorAlias}, defaulting to label", p.PropertyEditorAlias); + _logger.LogError("No property editor could be resolved with the alias: {PropertyEditorAlias}, defaulting to label", p.PropertyEditorAlias); propertyEditorAlias = Constants.PropertyEditors.Aliases.Label; propertyEditor = _propertyEditors[propertyEditorAlias]; } diff --git a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs index ed027026bc..722bd8fd85 100644 --- a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs @@ -88,7 +88,7 @@ namespace Umbraco.Core.Models if (entity.ValidatePath() == false) { - logger.LogWarning(typeof(PathValidationExtensions), "The content item {EntityId} has an invalid path: {EntityPath} with parentID: {EntityParentId}", entity.Id, entity.Path, entity.ParentId); + logger.LogWarning("The content item {EntityId} has an invalid path: {EntityPath} with parentID: {EntityParentId}", entity.Id, entity.Path, entity.ParentId); if (entity.ParentId == -1) { entity.Path = string.Concat("-1,", entity.Id); diff --git a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs index f2e4bd1074..ff3ad57585 100644 --- a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs @@ -218,7 +218,7 @@ namespace Umbraco.Core.Models } catch (Exception ex) { - Current.Logger.LogWarning(typeof(PropertyTagsExtensions), ex, "Could not automatically convert stored json value to an enumerable string '{Json}'", value.ToString()); + Current.Logger.LogWarning(ex, "Could not automatically convert stored json value to an enumerable string '{Json}'", value.ToString()); } break; diff --git a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs index 71186bfea5..e447233493 100644 --- a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs @@ -13,8 +13,8 @@ namespace Umbraco.Core.Persistence.Factories // Check we have an editor for the data type. if (!editors.TryGet(dto.EditorAlias, out var editor)) { - logger.LogWarning(typeof(DataType), "Could not find an editor with alias {EditorAlias}, treating as Label. " + - "The site may fail to boot and/or load data types and run.", dto.EditorAlias); + logger.LogWarning("Could not find an editor with alias {EditorAlias}, treating as Label. " + + "The site may fail to boot and/or load data types and run.", dto.EditorAlias); // Create as special type, which downstream can be handled by converting to a LabelPropertyEditor to make clear // the situation to the user. diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs index 81b3ba7a63..d7d795c175 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs @@ -144,7 +144,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.LogError(typeof(HtmlImageSourceParser), ex, "Could not delete temp file or folder {FileName}", absoluteTempImagePath); + _logger.LogError(ex, "Could not delete temp file or folder {FileName}", absoluteTempImagePath); } } } diff --git a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs index 08e038a501..50c4b91671 100644 --- a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs @@ -52,7 +52,7 @@ namespace Umbraco.Core.Runtime } catch (TimeoutException ex) { - _logger.LogError(ex); + _logger.LogError(ex.Message); return Task.FromResult(false); } finally diff --git a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs index 882abd7440..f763deae0a 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs @@ -124,7 +124,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(GetType(), ex, "Error creating dictionary with {Name} under {ParentId}", key, parentId); + _logger.LogError(ex, "Error creating dictionary with {Name} under {ParentId}", key, parentId); throw HttpResponseException.CreateNotificationValidationErrorResponse("Error creating dictionary item"); } } @@ -257,7 +257,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(GetType(), ex, "Error saving dictionary with {Name} under {ParentId}", dictionary.Name, dictionary.ParentId); + _logger.LogError(ex, "Error saving dictionary with {Name} under {ParentId}", dictionary.Name, dictionary.ParentId); throw HttpResponseException.CreateNotificationValidationErrorResponse("Something went wrong saving dictionary"); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs index b67a2f8b48..8b57703a9f 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs @@ -154,7 +154,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(GetType(), ex, "Error creating relation type with {Name}", relationType.Name); + _logger.LogError(ex, "Error creating relation type with {Name}", relationType.Name); throw HttpResponseException.CreateNotificationValidationErrorResponse("Error creating relation type."); } } @@ -185,7 +185,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(GetType(), ex, "Error saving relation type with {Id}", relationType.Id); + _logger.LogError(ex, "Error saving relation type with {Id}", relationType.Id); throw HttpResponseException.CreateNotificationValidationErrorResponse("Something went wrong when saving the relation type"); } } diff --git a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs index 2cd90e83db..7808c83295 100644 --- a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs @@ -27,7 +27,7 @@ namespace Umbraco.Extensions } catch (Exception ex) { - Current.Logger.LogError(typeof(ImageCropperTemplateExtensions), ex, "Could not parse the json string: {Json}", json); + Current.Logger.LogError(ex, "Could not parse the json string: {Json}", json); } } diff --git a/src/Umbraco.Web.Common/Install/InstallController.cs b/src/Umbraco.Web.Common/Install/InstallController.cs index e9c8de2a83..7840a1097b 100644 --- a/src/Umbraco.Web.Common/Install/InstallController.cs +++ b/src/Umbraco.Web.Common/Install/InstallController.cs @@ -118,7 +118,7 @@ namespace Umbraco.Web.Common.Install if (_reported && _reportedLevel == level) return; _reported = true; _reportedLevel = level; - logger.LogWarning(typeof(UmbracoInstallApplicationBuilderExtensions), message); + logger.LogWarning(message); } } } diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index 67334e941d..e38c91b1f5 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -65,7 +65,7 @@ namespace Umbraco.Web.Common.Middleware catch (Exception ex) { // try catch so we don't kill everything in all requests - _logger.LogError(ex); + _logger.LogError(ex.Message); } finally { diff --git a/src/Umbraco.Web/ImageProcessorLogger.cs b/src/Umbraco.Web/ImageProcessorLogger.cs index 8f6be923ef..78c0cd231e 100644 --- a/src/Umbraco.Web/ImageProcessorLogger.cs +++ b/src/Umbraco.Web/ImageProcessorLogger.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web { // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. var message = $"{callerName} {lineNumber} : {text}"; - Current.Logger.LogError(new ImageProcessingException(message)); + Current.Logger.LogError(new ImageProcessingException(message).Message); } /// @@ -42,7 +42,7 @@ namespace Umbraco.Web { // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. var message = $"{callerName} {lineNumber} : {text}"; - Current.Logger.LogError(type, new ImageProcessingException(message)); + Current.Logger.LogError(new ImageProcessingException(message).Message); } } } diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index dcd1a0f531..dcbbb3506e 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -30,10 +30,10 @@ namespace Umbraco.Web.Logging _logger.LogCritical(exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Error: - _logger.LogError(_type.Value, exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogError(exception, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Warning: - _logger.LogWarning(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogWarning("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Information: _logger.Info(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); diff --git a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs index 48a13f265d..660007917c 100644 --- a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs +++ b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs @@ -109,7 +109,7 @@ namespace Umbraco.Web.Security } catch (System.Exception ex) { - Current.Logger.LogError(typeof (AuthenticationOptionsExtensions), ex, "Could not read AuthenticationOptions properties"); + Current.Logger.LogError(ex, "Could not read AuthenticationOptions properties"); } } else diff --git a/src/Umbraco.Web/UmbracoHelper.cs b/src/Umbraco.Web/UmbracoHelper.cs index 78a296ad39..93b1acfbe4 100644 --- a/src/Umbraco.Web/UmbracoHelper.cs +++ b/src/Umbraco.Web/UmbracoHelper.cs @@ -455,7 +455,7 @@ namespace Umbraco.Web } catch (Exception ex) when (ex is FormatException || ex is ArgumentException) { - Current.Logger.LogWarning(typeof(UmbracoHelper), "A value was detected in the ufprt parameter but Umbraco could not decrypt the string"); + Current.Logger.LogWarning("A value was detected in the ufprt parameter but Umbraco could not decrypt the string"); parts = null; return false; } diff --git a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs index 98e518e7d0..717df89a7b 100644 --- a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs +++ b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs @@ -44,7 +44,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - Current.Logger.LogError(typeof(AngularAntiForgeryHelper), ex, "Could not validate XSRF token"); + Current.Logger.LogError(ex, "Could not validate XSRF token"); return false; } return true; diff --git a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs index 970098e957..3803cdbab6 100644 --- a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs +++ b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web.WebApi var requestUrl = context.ExceptionContext?.ControllerContext?.Request?.RequestUri?.AbsoluteUri; var controllerType = context.ExceptionContext?.ActionContext?.ControllerContext?.Controller?.GetType(); - _logger.LogError(controllerType, context.Exception, "Unhandled controller exception occurred for request '{RequestUrl}'", requestUrl); + _logger.LogError(context.Exception, "Unhandled controller exception occurred for request '{RequestUrl}'", requestUrl); } } From 5e17aa3bf1466e3ce6a35f07d09cfad2b379a997 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Mon, 14 Sep 2020 14:25:59 +0200 Subject: [PATCH 06/85] Finish aligning ILogger to MS ILogger --- src/Umbraco.Core/Logging/ConsoleLogger.cs | 27 +++---------- .../Logging/DebugDiagnosticsLogger.cs | 30 +++----------- src/Umbraco.Core/Logging/DisposableTimer.cs | 8 ++-- src/Umbraco.Core/Logging/ILogger.cs | 30 ++------------ src/Umbraco.Core/Logging/LoggerExtensions.cs | 19 +++------ src/Umbraco.Core/Logging/NullLogger.cs | 12 +++--- src/Umbraco.Core/Logging/ProfilingLogger.cs | 24 ++++++------ src/Umbraco.Core/Templates/HtmlUrlParser.cs | 2 +- src/Umbraco.Core/UriExtensions.cs | 2 +- .../ExamineExtensions.cs | 2 +- .../UmbracoContentIndex.cs | 2 +- .../UmbracoExamineIndex.cs | 3 +- .../Compose/NotificationsComponent.cs | 2 +- .../Logging/Serilog/SerilogLogger.cs | 39 ++++--------------- .../Migrations/MigrationExpressionBase.cs | 8 ++-- .../DataTypes/PreValueMigratorCollection.cs | 4 +- src/Umbraco.Infrastructure/Suspendable.cs | 12 +++--- .../Controllers/HelpController.cs | 2 +- src/Umbraco.Web/Logging/OwinLogger.cs | 14 +++---- 19 files changed, 75 insertions(+), 167 deletions(-) diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs index 2e78b798b7..9f8757916c 100644 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ b/src/Umbraco.Core/Logging/ConsoleLogger.cs @@ -59,34 +59,19 @@ namespace Umbraco.Core.Logging Console.WriteLine(exception); } - public void Info(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogInformation(string messageTemplate, params object[] propertyValues) { - Console.WriteLine("INFO {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("INFO {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void Info(Type reporting, string message) + public void LogDebug(string messageTemplate, params object[] propertyValues) { - Console.WriteLine("INFO {0} - {1}", reporting.Name, message); + Console.WriteLine("DEBUG {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } - public void Debug(Type reporting, string message) + public void LogTrace(string messageTemplate, params object[] propertyValues) { - Console.WriteLine("DEBUG {0} - {1}", reporting.Name, message); - } - - public void Debug(Type reporting, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("DEBUG {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void Verbose(Type reporting, string message) - { - Console.WriteLine("VERBOSE {0} - {1}", reporting.Name, message); - } - - public void Verbose(Type reporting, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("VERBOSE {0} - {1}", reporting.Name, _messageTemplates.Render(messageTemplate, propertyValues)); + Console.WriteLine("VERBOSE {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); } } } diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs index 7dc880c4c5..2492dee672 100644 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs @@ -66,39 +66,21 @@ namespace Umbraco.Core.Logging } /// - public void Info(Type reporting, string message) + public void LogInformation(string messageTemplate, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(message, reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); } /// - public void Info(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogDebug(string messageTemplate, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); } /// - public void Debug(Type reporting, string message) + public void LogTrace(string messageTemplate, params object[] propertyValues) { - System.Diagnostics.Debug.WriteLine(message, reporting.FullName); - } - - /// - public void Debug(Type reporting, string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), reporting.FullName); - } - - /// - public void Verbose(Type reporting, string message) - { - System.Diagnostics.Debug.WriteLine(message, reporting.FullName); - } - - /// - public void Verbose(Type reporting, string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), reporting.FullName); + System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); } } } diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index bd133a5fd2..7fd3f62987 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -37,10 +37,10 @@ namespace Umbraco.Core.Logging switch (_level) { case LogLevel.Debug: - logger.Debug(loggerType, "{StartMessage} [Timing {TimingId}]", startMessage, _timingId); + logger.Debug("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); break; case LogLevel.Information: - logger.Info(loggerType, "{StartMessage} [Timing {TimingId}]", startMessage, _timingId); + logger.Info("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); break; default: throw new ArgumentOutOfRangeException(nameof(level)); @@ -89,10 +89,10 @@ namespace Umbraco.Core.Logging else switch (_level) { case LogLevel.Debug: - _logger.Debug(_loggerType, "{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.Debug("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); break; case LogLevel.Information: - _logger.Info(_loggerType, "{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.Info("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); break; // filtered in the ctor //default: diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index db58169ce3..10926eecca 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -69,49 +69,25 @@ namespace Umbraco.Core.Logging /// Property values. void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues); - /// - /// Logs an information message. - /// - /// The reporting type. - /// A message. - void Info(Type reporting, string message); - /// /// Logs a info message. /// - /// The reporting type. /// A message template. /// Property values. - void Info(Type reporting, string messageTemplate, params object[] propertyValues); - - /// - /// Logs a debugging message. - /// - /// The reporting type. - /// A message. - void Debug(Type reporting, string message); + void LogInformation(string messageTemplate, params object[] propertyValues); /// /// Logs a debug message. /// - /// The reporting type. /// A message template. /// Property values. - void Debug(Type reporting, string messageTemplate, params object[] propertyValues); + void LogDebug(string messageTemplate, params object[] propertyValues); /// /// Logs a verbose message. /// - /// The reporting type. - /// A message. - void Verbose(Type reporting, string message); - - /// - /// Logs a verbose message. - /// - /// The reporting type. /// A message template. /// Property values. - void Verbose(Type reporting, string messageTemplate, params object[] propertyValues); + void LogTrace(string messageTemplate, params object[] propertyValues); } } diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index 515fed9db1..ddcd3b450b 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -103,7 +103,7 @@ namespace Umbraco.Core.Logging /// The logger. /// A message. public static void Info(this ILogger logger, string message) - => logger.Info(typeof(T), message); + => logger.LogInformation(message); /// /// Logs a information message. @@ -113,7 +113,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void Info(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.Info(typeof(T), messageTemplate, propertyValues); + => logger.LogInformation(messageTemplate, propertyValues); /// /// Logs a debugging message. @@ -122,7 +122,7 @@ namespace Umbraco.Core.Logging /// The logger. /// A message. public static void Debug(this ILogger logger, string message) - => logger.Debug(typeof(T), message); + => logger.LogDebug(message); /// /// Logs a debugging message. @@ -132,16 +132,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void Debug(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.Debug(typeof(T), messageTemplate, propertyValues); - - /// - /// Logs a verbose message. - /// - /// The reporting type. - /// The logger. - /// A message. - public static void Verbose(this ILogger logger, string message) - => logger.Verbose(typeof(T), message); + => logger.LogDebug(messageTemplate, propertyValues); /// /// Logs a verbose message. @@ -151,7 +142,7 @@ namespace Umbraco.Core.Logging /// A message template. /// Property values. public static void Verbose(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.Verbose(typeof(T), messageTemplate, propertyValues); + => logger.LogTrace(messageTemplate, propertyValues); /// /// Logs a fatal message. diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index 902da4c9c9..ef2df582a6 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -46,32 +46,32 @@ namespace Umbraco.Core.Logging } - public void Info(Type reporting, string message) + public void LogInformation(string message, params object[] propertyValues) { } - public void Info(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogInformation(string messageTemplate, params object[] propertyValues) { } - public void Debug(Type reporting, string message) + public void LogDebug(string message, params object[] propertyValues) { } - public void Debug(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogDebug(string messageTemplate, params object[] propertyValues) { } - public void Verbose(Type reporting, string message) + public void LogTrace(string message, params object[] propertyValues) { } - public void Verbose(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogTrace(string messageTemplate, params object[] propertyValues) { } diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 331d9f2b36..5164f0f067 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -85,23 +85,23 @@ namespace Umbraco.Core.Logging public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) => Logger.LogWarning(exception, messageTemplate, propertyValues); - public void Info(Type reporting, string message) - => Logger.Info(reporting, message); + public void LogInformation(string message, params object[] propertyValues) + => Logger.LogInformation(message, propertyValues); - public void Info(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Info(reporting, messageTemplate, propertyValues); + public void LogInformation(string messageTemplate, params object[] propertyValues) + => Logger.Info(messageTemplate, propertyValues); - public void Debug(Type reporting, string message) - => Logger.Debug(reporting, message); + public void LogDebug(string message, params object[] propertyValues) + => Logger.LogDebug(message, propertyValues); - public void Debug(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Debug(reporting, messageTemplate, propertyValues); + public void LogDebug(string messageTemplate, params object[] propertyValues) + => Logger.Debug(messageTemplate, propertyValues); - public void Verbose(Type reporting, string message) - => Logger.Verbose(reporting, message); + public void LogTrace(string message, params object[] propertyValues) + => Logger.LogTrace(message, propertyValues); - public void Verbose(Type reporting, string messageTemplate, params object[] propertyValues) - => Logger.Verbose(reporting, messageTemplate, propertyValues); + public void LogTrace(string messageTemplate, params object[] propertyValues) + => Logger.Verbose(messageTemplate, propertyValues); #endregion } diff --git a/src/Umbraco.Core/Templates/HtmlUrlParser.cs b/src/Umbraco.Core/Templates/HtmlUrlParser.cs index 566fce8b87..ff89b9dc59 100644 --- a/src/Umbraco.Core/Templates/HtmlUrlParser.cs +++ b/src/Umbraco.Core/Templates/HtmlUrlParser.cs @@ -38,7 +38,7 @@ namespace Umbraco.Web.Templates { // find all relative urls (ie. urls that contain ~) var tags = ResolveUrlPattern.Matches(text); - _logger.Debug(typeof(IOHelper), "After regex: {Duration} matched: {TagsCount}", timer.Stopwatch.ElapsedMilliseconds, tags.Count); + _logger.Debug("After regex: {Duration} matched: {TagsCount}", timer.Stopwatch.ElapsedMilliseconds, tags.Count); foreach (Match tag in tags) { var url = ""; diff --git a/src/Umbraco.Core/UriExtensions.cs b/src/Umbraco.Core/UriExtensions.cs index 13aa6bde46..456ae9fa2a 100644 --- a/src/Umbraco.Core/UriExtensions.cs +++ b/src/Umbraco.Core/UriExtensions.cs @@ -159,7 +159,7 @@ namespace Umbraco.Core } catch (ArgumentException) { - Current.Logger.Debug(typeof(UriExtensions), "Failed to determine if request was client side (invalid chars in path \"{Path}\"?)", url.LocalPath); + Current.Logger.Debug("Failed to determine if request was client side (invalid chars in path \"{Path}\"?)", url.LocalPath); return false; } } diff --git a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs index d697bf6f0d..6d23f15a27 100644 --- a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs +++ b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs @@ -87,7 +87,7 @@ namespace Umbraco.Examine var dir = luceneIndexer.GetLuceneDirectory(); if (IndexWriter.IsLocked(dir)) { - logger.Info(typeof(ExamineExtensions), "Forcing index {IndexerName} to be unlocked since it was left in a locked state", luceneIndexer.Name); + logger.Info("Forcing index {IndexerName} to be unlocked since it was left in a locked state", luceneIndexer.Name); IndexWriter.Unlock(dir); } } diff --git a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs index 4cb26d5ae5..0e9b35ca41 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs @@ -138,7 +138,7 @@ namespace Umbraco.Examine var filtered = c.NativeQuery(rawQuery); var results = filtered.Execute(); - ProfilingLogger.Debug(GetType(), "DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); + ProfilingLogger.Debug("DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); //need to queue a delete item for each one found QueueIndexOperation(results.Select(r => new IndexOperation(new ValueSet(r.Id), IndexOperationType.Delete))); diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index 10a1d075b0..a911e2553d 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -154,8 +154,7 @@ namespace Umbraco.Examine /// protected override void AddDocument(Document doc, ValueSet valueSet, IndexWriter writer) { - ProfilingLogger.Debug(GetType(), - "Write lucene doc id:{DocumentId}, category:{DocumentCategory}, type:{DocumentItemType}", + ProfilingLogger.Debug("Write lucene doc id:{DocumentId}, category:{DocumentCategory}, type:{DocumentItemType}", valueSet.Id, valueSet.Category, valueSet.ItemType); diff --git a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs index 49c34331c4..9cdea0d5ec 100644 --- a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs @@ -218,7 +218,7 @@ namespace Umbraco.Web.Compose //if there is no current user, then use the admin if (user == null) { - _logger.Debug(typeof(Notifier), "There is no current Umbraco user logged in, the notifications will be sent from the administrator"); + _logger.LogDebug("There is no current Umbraco user logged in, the notifications will be sent from the administrator", TODO); user = _userService.GetUserById(Constants.Security.SuperUserId); if (user == null) { diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs index 00a5ff918f..95bf17cb23 100644 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs @@ -1,5 +1,6 @@ using System; using System.IO; +using Org.BouncyCastle.Asn1.X509.Qualified; using Serilog; using Serilog.Events; using Umbraco.Core.Hosting; @@ -93,14 +94,6 @@ namespace Umbraco.Core.Logging.Serilog logger.Fatal(exception, messageTemplate, propertyValues); } - /// - public void LogError(Type reporting, Exception exception) - { - var logger = LoggerFor(reporting); - var message = "Exception"; - logger.Error(exception, message); - } - /// public void LogError(string messageTemplate, params object[] propertyValues) { @@ -127,39 +120,21 @@ namespace Umbraco.Core.Logging.Serilog } /// - public void Info(Type reporting, string message) + public void LogInformation(string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Information(message); + LoggerFor(typeof(T)).Information(messageTemplate, propertyValues); } /// - public void Info(Type reporting, string messageTemplate, params object[] propertyValues) + public void LogDebug(string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Information(messageTemplate, propertyValues); + LoggerFor(typeof(T)).Debug(messageTemplate, propertyValues); } /// - public void Debug(Type reporting, string message) + public void LogTrace(string messageTemplate, params object[] propertyValues) { - LoggerFor(reporting).Debug(message); - } - - /// - public void Debug(Type reporting, string messageTemplate, params object[] propertyValues) - { - LoggerFor(reporting).Debug(messageTemplate, propertyValues); - } - - /// - public void Verbose(Type reporting, string message) - { - LoggerFor(reporting).Verbose(message); - } - - /// - public void Verbose(Type reporting, string messageTemplate, params object[] propertyValues) - { - LoggerFor(reporting).Verbose(messageTemplate, propertyValues); + LoggerFor(typeof(T)).Verbose(messageTemplate, propertyValues); } public void Dispose() diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs index be06a32ec7..63fddae99e 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs @@ -55,7 +55,7 @@ namespace Umbraco.Core.Migrations if (string.IsNullOrWhiteSpace(sql)) { - Logger.Info(GetType(), "SQL [{ContextIndex}]: ", Context.Index); + Logger.Info("SQL [{ContextIndex}]: ", Context.Index); } else { @@ -96,11 +96,11 @@ namespace Umbraco.Core.Migrations if (sql == null) { - Logger.Info(GetType(), $"SQL [{Context.Index}]: "); + Logger.LogInformation($"SQL [{Context.Index}]: ", TODO); } else { - Logger.Info(GetType(), $"SQL [{Context.Index}]: {sql.ToText()}"); + Logger.LogInformation($"SQL [{Context.Index}]: {sql.ToText()}", TODO); Database.Execute(sql); } @@ -116,7 +116,7 @@ namespace Umbraco.Core.Migrations private void ExecuteStatement(StringBuilder stmtBuilder) { var stmt = stmtBuilder.ToString(); - Logger.Info(GetType(), "SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); + Logger.Info("SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); Database.Execute(stmt); stmtBuilder.Clear(); } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs index 06f5d45deb..af735b8d01 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs @@ -13,13 +13,13 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes : base(items) { _logger = logger; - _logger.Debug(GetType(), "Migrators: " + string.Join(", ", items.Select(x => x.GetType().Name))); + _logger.LogDebug("Migrators: " + string.Join(", ", items.Select(x => x.GetType().Name)), TODO); } public IPreValueMigrator GetMigrator(string editorAlias) { var migrator = this.FirstOrDefault(x => x.CanMigrate(editorAlias)); - _logger.Debug(GetType(), "Getting migrator for \"{EditorAlias}\" = {MigratorType}", editorAlias, migrator == null ? "" : migrator.GetType().Name); + _logger.Debug("Getting migrator for \"{EditorAlias}\" = {MigratorType}", editorAlias, migrator == null ? "" : migrator.GetType().Name); return migrator; } } diff --git a/src/Umbraco.Infrastructure/Suspendable.cs b/src/Umbraco.Infrastructure/Suspendable.cs index 7287d1c364..75797b5f54 100644 --- a/src/Umbraco.Infrastructure/Suspendable.cs +++ b/src/Umbraco.Infrastructure/Suspendable.cs @@ -30,7 +30,7 @@ namespace Umbraco.Web public static void SuspendDocumentCache() { - Current.Logger.Info(typeof (PageCacheRefresher), "Suspend document cache."); + Current.Logger.LogInformation("Suspend document cache.", TODO); _suspended = true; } @@ -38,7 +38,7 @@ namespace Umbraco.Web { _suspended = false; - Current.Logger.Info(typeof (PageCacheRefresher), "Resume document cache (reload:{Tried}).", _tried); + Current.Logger.Info("Resume document cache (reload:{Tried}).", _tried); if (_tried == false) return; _tried = false; @@ -66,7 +66,7 @@ namespace Umbraco.Web public static void SuspendIndexers(ILogger logger) { - logger.Info(typeof (ExamineEvents), "Suspend indexers."); + logger.LogInformation("Suspend indexers.", TODO); _suspended = true; } @@ -74,7 +74,7 @@ namespace Umbraco.Web { _suspended = false; - logger.Info(typeof (ExamineEvents), "Resume indexers (rebuild:{Tried}).", _tried); + logger.Info("Resume indexers (rebuild:{Tried}).", _tried); if (_tried == false) return; _tried = false; @@ -91,13 +91,13 @@ namespace Umbraco.Web public static void Suspend() { - Current.Logger.Info(typeof (ScheduledPublishing), "Suspend scheduled publishing."); + Current.Logger.LogInformation("Suspend scheduled publishing.", TODO); _suspended = true; } public static void Resume() { - Current.Logger.Info(typeof (ScheduledPublishing), "Resume scheduled publishing."); + Current.Logger.LogInformation("Resume scheduled publishing.", TODO); _suspended = false; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs b/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs index 24ec184519..7d88cdecd9 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs @@ -40,7 +40,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException rex) { - _logger.Info(GetType(), $"Check your network connection, exception: {rex.Message}"); + _logger.LogInformation($"Check your network connection, exception: {rex.Message}"); } return new List(); diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index dcbbb3506e..a9533c0124 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -36,25 +36,25 @@ namespace Umbraco.Web.Logging _logger.LogWarning("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Information: - _logger.Info(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Info("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Verbose: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Start: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Stop: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Suspend: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Resume: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Transfer: - _logger.Debug(_type.Value, "[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; default: throw new ArgumentOutOfRangeException("eventType"); From 02828db8fd3c6f6fec2fe703d1b921b9a96ac7cb Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 08:45:40 +0200 Subject: [PATCH 07/85] Add work on PublishedSnapshotService --- src/Umbraco.Core/Composing/Composers.cs | 24 ++++--- .../Configuration/XmlConfigManipulator.cs | 8 +-- .../ContentInfoContentAppFactory.cs | 6 +- src/Umbraco.Core/Logging/DisposableTimer.cs | 8 +-- src/Umbraco.Core/Logging/ILogger.cs | 2 +- src/Umbraco.Core/Logging/IProfilingLogger.cs | 2 +- src/Umbraco.Core/Logging/LogProfiler.cs | 2 +- src/Umbraco.Core/Logging/LoggerExtensions.cs | 4 +- src/Umbraco.Core/Logging/NullLogger.cs | 15 ---- src/Umbraco.Core/Logging/ProfilingLogger.cs | 15 +--- src/Umbraco.Core/Manifest/ManifestWatcher.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 12 ++-- src/Umbraco.Core/Templates/HtmlUrlParser.cs | 12 ++-- src/Umbraco.Core/UriExtensions.cs | 2 +- .../ExamineExtensions.cs | 2 +- .../LuceneIndexDiagnostics.cs | 4 +- .../UmbracoContentIndex.cs | 10 ++- .../UmbracoExamineIndex.cs | 13 ++-- .../UmbracoExamineIndexDiagnostics.cs | 2 +- .../Cache/DistributedCacheBinder_Handlers.cs | 2 +- .../HealthCheck/HealthCheckResults.cs | 6 +- .../InstallSteps/DatabaseUpgradeStep.cs | 2 +- .../Migrations/Install/DatabaseBuilder.cs | 12 ++-- .../Migrations/Install/DatabaseDataCreator.cs | 4 +- .../Install/DatabaseSchemaCreator.cs | 20 +++--- .../Migrations/MigrationExpressionBase.cs | 4 +- .../Migrations/MigrationPlan.cs | 12 ++-- .../PublishedContentTypeCache.cs | 12 ++-- .../Runtime/CoreRuntime.cs | 2 +- .../Scheduling/BackgroundTaskRunner.cs | 8 +-- .../Scheduling/ScheduledPublishing.cs | 2 +- .../Search/BackgroundIndexRebuilder.cs | 2 +- .../Search/ExamineComponent.cs | 4 +- .../Services/Implement/ContentService.cs | 30 ++++---- src/Umbraco.Infrastructure/Suspendable.cs | 4 +- .../Sync/DatabaseServerMessenger.cs | 2 +- .../LiveModelsProvider.cs | 4 +- .../PureLiveModelFactory.cs | 47 +++++++------ .../ContentStore.cs | 51 +++++++------- .../PublishedSnapshotService.cs | 68 ++++++++++--------- .../LegacyXmlPublishedCache/XmlStore.cs | 12 ++-- .../Services/ContentServicePerformanceTest.cs | 2 +- .../Controllers/AuthenticationController.cs | 6 +- .../ExamineManagementController.cs | 6 +- .../Profiler/WebProfilerComponent.cs | 2 +- .../AspNet/AspNetBackOfficeInfo.cs | 2 +- src/Umbraco.Web/CdfLogger.cs | 2 +- src/Umbraco.Web/Logging/OwinLogger.cs | 14 ++-- .../Logging/WebProfilerComponent.cs | 2 +- .../Providers/UmbracoMembershipProvider.cs | 12 ++-- src/Umbraco.Web/UmbracoApplicationBase.cs | 4 +- .../CDF/ClientDependencyConfiguration.cs | 2 +- 52 files changed, 255 insertions(+), 254 deletions(-) diff --git a/src/Umbraco.Core/Composing/Composers.cs b/src/Umbraco.Core/Composing/Composers.cs index 86c994c557..93f6def891 100644 --- a/src/Umbraco.Core/Composing/Composers.cs +++ b/src/Umbraco.Core/Composing/Composers.cs @@ -16,7 +16,8 @@ namespace Umbraco.Core.Composing public class Composers { private readonly Composition _composition; - private readonly IProfilingLogger _logger; + private readonly ILogger _logger; + private readonly IProfilingLogger _profileLogger; private readonly IEnumerable _composerTypes; private readonly IEnumerable _enableDisableAttributes; @@ -28,7 +29,8 @@ namespace Umbraco.Core.Composing /// The composition. /// The types. /// The and/or attributes. - /// The profiling logger. + /// The logger. + /// The profiling logger. /// composition /// or /// composerTypes @@ -36,13 +38,13 @@ namespace Umbraco.Core.Composing /// enableDisableAttributes /// or /// logger - - public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, IProfilingLogger logger) + public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, ILogger logger, IProfilingLogger profileLogger) { _composition = composition ?? throw new ArgumentNullException(nameof(composition)); _composerTypes = composerTypes ?? throw new ArgumentNullException(nameof(composerTypes)); _enableDisableAttributes = enableDisableAttributes ?? throw new ArgumentNullException(nameof(enableDisableAttributes)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _profileLogger = profileLogger; } private class EnableInfo @@ -61,19 +63,19 @@ namespace Umbraco.Core.Composing IEnumerable orderedComposerTypes; - using (_logger.DebugDuration("Preparing composer types.", "Prepared composer types.")) + using (_profileLogger.DebugDuration("Preparing composer types.", "Prepared composer types.")) { orderedComposerTypes = PrepareComposerTypes(); } var composers = InstantiateComposers(orderedComposerTypes); - using (_logger.DebugDuration($"Composing composers. (log when >{LogThresholdMilliseconds}ms)", "Composed composers.")) + using (_profileLogger.DebugDuration($"Composing composers. (log when >{LogThresholdMilliseconds}ms)", "Composed composers.")) { foreach (var composer in composers) { var componentType = composer.GetType(); - using (_logger.DebugDuration($"Composing {componentType.FullName}.", $"Composed {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) + using (_profileLogger.DebugDuration($"Composing {componentType.FullName}.", $"Composed {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) { composer.Compose(_composition); } @@ -92,7 +94,7 @@ namespace Umbraco.Core.Composing // bit verbose but should help for troubleshooting //var text = "Ordered Composers: " + Environment.NewLine + string.Join(Environment.NewLine, sortedComposerTypes) + Environment.NewLine; - _logger.Debug("Ordered Composers: {SortedComposerTypes}", sortedComposerTypes); + _logger.LogDebug("Ordered Composers: {SortedComposerTypes}", sortedComposerTypes); return sortedComposerTypes; } @@ -183,8 +185,8 @@ namespace Umbraco.Core.Composing catch (Exception e) { // in case of an error, force-dump everything to log - _logger.Info("Composer Report:\r\n{ComposerReport}", GetComposersReport(requirements)); - _logger.LogError(e, "Failed to sort composers."); + _logger.LogInformation("Composer Report:\r\n{ComposerReport}", GetComposersReport(requirements)); + _logger.LogError(e, "Failed to sort composers."); throw; } @@ -370,7 +372,7 @@ namespace Umbraco.Core.Composing return (IComposer) ctor.Invoke(Array.Empty()); } - using (_logger.DebugDuration("Instantiating composers.", "Instantiated composers.")) + using (_profileLogger.DebugDuration("Instantiating composers.", "Instantiated composers.")) { return types.Select(InstantiateComposer).ToArray(); } diff --git a/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs b/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs index dd7e4baa94..65744f49d8 100644 --- a/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs +++ b/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs @@ -12,9 +12,9 @@ namespace Umbraco.Core.Configuration public class XmlConfigManipulator : IConfigManipulator { private readonly IIOHelper _ioHelper; - private readonly ILogger _logger; + private readonly ILogger _logger; - public XmlConfigManipulator(IIOHelper ioHelper, ILogger logger) + public XmlConfigManipulator(IIOHelper ioHelper, ILogger logger) { _ioHelper = ioHelper; _logger = logger; @@ -101,9 +101,9 @@ namespace Umbraco.Core.Configuration } // save - _logger.Info("Saving connection string to {ConfigFile}.", fileSource); + _logger.LogInformation("Saving connection string to {ConfigFile}.", fileSource); xml.Save(fileName, SaveOptions.DisableFormatting); - _logger.Info("Saved connection string to {ConfigFile}.", fileSource); + _logger.LogInformation("Saved connection string to {ConfigFile}.", fileSource); } public void SaveConfigValue(string itemPath, object value) diff --git a/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs b/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs index abad7f4bf8..56774d652d 100644 --- a/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs +++ b/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs @@ -23,7 +23,7 @@ namespace Umbraco.Web.ContentApps return _contentApp ?? (_contentApp = new ContentApp { Alias = "umbInfo", - Name = "Info", + Name = "LogInformation", Icon = "icon-info", View = "views/content/apps/info/info.html", Weight = Weight @@ -33,7 +33,7 @@ namespace Umbraco.Web.ContentApps return _mediaApp ?? (_mediaApp = new ContentApp { Alias = "umbInfo", - Name = "Info", + Name = "LogInformation", Icon = "icon-info", View = "views/media/apps/info/info.html", Weight = Weight @@ -42,7 +42,7 @@ namespace Umbraco.Web.ContentApps return _memberApp ?? (_memberApp = new ContentApp { Alias = "umbInfo", - Name = "Info", + Name = "LogInformation", Icon = "icon-info", View = "views/member/apps/info/info.html", Weight = Weight diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index 7fd3f62987..a7dfbd254f 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -37,10 +37,10 @@ namespace Umbraco.Core.Logging switch (_level) { case LogLevel.Debug: - logger.Debug("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); + logger.LogDebug("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); break; case LogLevel.Information: - logger.Info("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); + logger.LogInformation("{StartMessage} [Timing {TimingId}]", startMessage, _timingId); break; default: throw new ArgumentOutOfRangeException(nameof(level)); @@ -89,10 +89,10 @@ namespace Umbraco.Core.Logging else switch (_level) { case LogLevel.Debug: - _logger.Debug("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.LogDebug("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); break; case LogLevel.Information: - _logger.Info("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); + _logger.LogInformation("{EndMessage} ({Duration}ms) [Timing {TimingId}]", _endMessage, Stopwatch.ElapsedMilliseconds, _timingId); break; // filtered in the ctor //default: diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs index 10926eecca..da590c6bba 100644 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ b/src/Umbraco.Core/Logging/ILogger.cs @@ -15,7 +15,7 @@ namespace Umbraco.Core.Logging /// specification includes support for traditional C# numeric placeholders. /// For instance, "Processed {Input} in {Time}ms." /// - public interface ILogger + public interface ILogger { /// /// Determines if logging is enabled at a specified level, for a reporting type. diff --git a/src/Umbraco.Core/Logging/IProfilingLogger.cs b/src/Umbraco.Core/Logging/IProfilingLogger.cs index 1d7c231e95..019b43d61e 100644 --- a/src/Umbraco.Core/Logging/IProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/IProfilingLogger.cs @@ -5,7 +5,7 @@ namespace Umbraco.Core.Logging /// /// Defines the profiling logging service. /// - public interface IProfilingLogger : ILogger + public interface IProfilingLogger { /// /// Profiles an action and log as information messages. diff --git a/src/Umbraco.Core/Logging/LogProfiler.cs b/src/Umbraco.Core/Logging/LogProfiler.cs index a1d2a2e61f..81e250895b 100644 --- a/src/Umbraco.Core/Logging/LogProfiler.cs +++ b/src/Umbraco.Core/Logging/LogProfiler.cs @@ -19,7 +19,7 @@ namespace Umbraco.Core.Logging public IDisposable Step(string name) { _logger.Debug("Begin: {ProfileName}", name); - return new LightDisposableTimer(duration => _logger.Info("End {ProfileName} ({ProfileDuration}ms)", name, duration)); + return new LightDisposableTimer(duration => _logger.LogInformation("End {ProfileName} ({ProfileDuration}ms)", name, duration)); } /// diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index ddcd3b450b..efc17fd623 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -102,7 +102,7 @@ namespace Umbraco.Core.Logging /// The reporting type. /// The logger. /// A message. - public static void Info(this ILogger logger, string message) + public static void LogInformation(this ILogger logger, string message) => logger.LogInformation(message); /// @@ -112,7 +112,7 @@ namespace Umbraco.Core.Logging /// The logger. /// A message template. /// Property values. - public static void Info(this ILogger logger, string messageTemplate, params object[] propertyValues) + public static void LogInformation(this ILogger logger, string messageTemplate, params object[] propertyValues) => logger.LogInformation(messageTemplate, propertyValues); /// diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs index ef2df582a6..892675bc47 100644 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ b/src/Umbraco.Core/Logging/NullLogger.cs @@ -46,31 +46,16 @@ namespace Umbraco.Core.Logging } - public void LogInformation(string message, params object[] propertyValues) - { - - } - public void LogInformation(string messageTemplate, params object[] propertyValues) { } - public void LogDebug(string message, params object[] propertyValues) - { - - } - public void LogDebug(string messageTemplate, params object[] propertyValues) { } - public void LogTrace(string message, params object[] propertyValues) - { - - } - public void LogTrace(string messageTemplate, params object[] propertyValues) { diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 5164f0f067..6611a81123 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -85,23 +85,14 @@ namespace Umbraco.Core.Logging public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) => Logger.LogWarning(exception, messageTemplate, propertyValues); - public void LogInformation(string message, params object[] propertyValues) - => Logger.LogInformation(message, propertyValues); - public void LogInformation(string messageTemplate, params object[] propertyValues) - => Logger.Info(messageTemplate, propertyValues); - - public void LogDebug(string message, params object[] propertyValues) - => Logger.LogDebug(message, propertyValues); + => Logger.LogInformation(messageTemplate, propertyValues); public void LogDebug(string messageTemplate, params object[] propertyValues) - => Logger.Debug(messageTemplate, propertyValues); - - public void LogTrace(string message, params object[] propertyValues) - => Logger.LogTrace(message, propertyValues); + => Logger.LogDebug(messageTemplate, propertyValues); public void LogTrace(string messageTemplate, params object[] propertyValues) - => Logger.Verbose(messageTemplate, propertyValues); + => Logger.LogTrace(messageTemplate, propertyValues); #endregion } diff --git a/src/Umbraco.Core/Manifest/ManifestWatcher.cs b/src/Umbraco.Core/Manifest/ManifestWatcher.cs index 23caac3a1b..38b9a30190 100644 --- a/src/Umbraco.Core/Manifest/ManifestWatcher.cs +++ b/src/Umbraco.Core/Manifest/ManifestWatcher.cs @@ -57,7 +57,7 @@ namespace Umbraco.Core.Manifest if (_isRestarting) return; _isRestarting = true; - _logger.Info("Manifest has changed, app pool is restarting ({Path})", e.FullPath); + _logger.LogInformation("Manifest has changed, app pool is restarting ({Path})", e.FullPath); _umbracoApplicationLifetime.Restart(); Dispose(); // uh? if the app restarts then this should be disposed anyways? } diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index d4aa5d9518..1a81a2fb71 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -112,7 +112,7 @@ namespace Umbraco.Core.Runtime try { - _logger.Info("Stopping ({SignalSource})", source); + _logger.LogInformation("Stopping ({SignalSource})", source); foreach (var callback in _callbacks.OrderBy(x => x.Key).Select(x => x.Value)) { try @@ -133,7 +133,7 @@ namespace Umbraco.Core.Runtime // in any case... _isMainDom = false; _mainDomLock.Dispose(); - _logger.Info("Released ({SignalSource})", source); + _logger.LogInformation("Released ({SignalSource})", source); } } @@ -146,18 +146,18 @@ namespace Umbraco.Core.Runtime // the handler is not installed so that would be the hosting environment if (_signaled) { - _logger.Info("Cannot acquire (signaled)."); + _logger.LogInformation("Cannot acquire (signaled)."); return false; } - _logger.Info("Acquiring."); + _logger.LogInformation("Acquiring."); // Get the lock var acquired = _mainDomLock.AcquireLockAsync(LockTimeoutMilliseconds).GetAwaiter().GetResult(); if (!acquired) { - _logger.Info("Cannot acquire (timeout)."); + _logger.LogInformation("Cannot acquire (timeout)."); // In previous versions we'd let a TimeoutException be thrown // and the appdomain would not start. We have the opportunity to allow it to @@ -180,7 +180,7 @@ namespace Umbraco.Core.Runtime _logger.LogWarning(ex, ex.Message); } - _logger.Info("Acquired."); + _logger.LogInformation("Acquired."); return true; } diff --git a/src/Umbraco.Core/Templates/HtmlUrlParser.cs b/src/Umbraco.Core/Templates/HtmlUrlParser.cs index ff89b9dc59..b06c7524a1 100644 --- a/src/Umbraco.Core/Templates/HtmlUrlParser.cs +++ b/src/Umbraco.Core/Templates/HtmlUrlParser.cs @@ -8,17 +8,19 @@ namespace Umbraco.Web.Templates public sealed class HtmlUrlParser { private readonly IContentSettings _contentSettings; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _profilingLogger; private static readonly Regex ResolveUrlPattern = new Regex("(=[\"\']?)(\\W?\\~(?:.(?![\"\']?\\s+(?:\\S+)=|[>\"\']))+.)[\"\']?", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace); - public HtmlUrlParser(IContentSettings contentSettings, IProfilingLogger logger, IIOHelper ioHelper) + public HtmlUrlParser(IContentSettings contentSettings, ILogger logger ,IProfilingLogger profilingLogger, IIOHelper ioHelper) { _contentSettings = contentSettings; - _ioHelper = ioHelper; _logger = logger; + _ioHelper = ioHelper; + _profilingLogger = profilingLogger; } /// @@ -34,11 +36,11 @@ namespace Umbraco.Web.Templates { if (_contentSettings.ResolveUrlsFromTextString == false) return text; - using (var timer = _logger.DebugDuration(typeof(IOHelper), "ResolveUrlsFromTextString starting", "ResolveUrlsFromTextString complete")) + using (var timer = _profilingLogger.DebugDuration(typeof(IOHelper), "ResolveUrlsFromTextString starting", "ResolveUrlsFromTextString complete")) { // find all relative urls (ie. urls that contain ~) var tags = ResolveUrlPattern.Matches(text); - _logger.Debug("After regex: {Duration} matched: {TagsCount}", timer.Stopwatch.ElapsedMilliseconds, tags.Count); + _logger.LogDebug("After regex: {Duration} matched: {TagsCount}", timer.Stopwatch.ElapsedMilliseconds, tags.Count); foreach (Match tag in tags) { var url = ""; diff --git a/src/Umbraco.Core/UriExtensions.cs b/src/Umbraco.Core/UriExtensions.cs index 456ae9fa2a..5ecbc38183 100644 --- a/src/Umbraco.Core/UriExtensions.cs +++ b/src/Umbraco.Core/UriExtensions.cs @@ -159,7 +159,7 @@ namespace Umbraco.Core } catch (ArgumentException) { - Current.Logger.Debug("Failed to determine if request was client side (invalid chars in path \"{Path}\"?)", url.LocalPath); + Current.Logger.LogDebug("Failed to determine if request was client side (invalid chars in path \"{Path}\"?)", url.LocalPath); return false; } } diff --git a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs index 6d23f15a27..0f8c1ecda9 100644 --- a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs +++ b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs @@ -87,7 +87,7 @@ namespace Umbraco.Examine var dir = luceneIndexer.GetLuceneDirectory(); if (IndexWriter.IsLocked(dir)) { - logger.Info("Forcing index {IndexerName} to be unlocked since it was left in a locked state", luceneIndexer.Name); + logger.LogDebug("Forcing index {IndexerName} to be unlocked since it was left in a locked state", luceneIndexer.Name); IndexWriter.Unlock(dir); } } diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs index 341eb67772..a8e185d01c 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs @@ -14,7 +14,7 @@ namespace Umbraco.Examine { private readonly IHostingEnvironment _hostingEnvironment; - public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; Index = index; @@ -22,7 +22,7 @@ namespace Umbraco.Examine } public LuceneIndex Index { get; } - public ILogger Logger { get; } + public ILogger Logger { get; } public int DocumentCount { diff --git a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs index 0e9b35ca41..028adb8912 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs @@ -21,6 +21,7 @@ namespace Umbraco.Examine /// public class UmbracoContentIndex : UmbracoExamineIndex, IUmbracoContentIndex, IDisposable { + private readonly ILogger _logger; protected ILocalizationService LanguageService { get; } #region Constructors @@ -33,6 +34,7 @@ namespace Umbraco.Examine /// /// /// + /// /// /// /// @@ -44,14 +46,18 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, + ILogger logger, + ILogger examineIndexLogger, + ILogger examineIndexDiagnosticsLogger, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, ILocalizationService languageService, IContentValueSetValidator validator, IReadOnlyDictionary indexValueTypes = null) - : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, profilingLogger, hostingEnvironment, runtimeState, validator, indexValueTypes) + : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, profilingLogger, examineIndexLogger, examineIndexDiagnosticsLogger ,hostingEnvironment, runtimeState, validator, indexValueTypes) { if (validator == null) throw new ArgumentNullException(nameof(validator)); + _logger = logger; LanguageService = languageService ?? throw new ArgumentNullException(nameof(languageService)); if (validator is IContentValueSetValidator contentValueSetValidator) @@ -138,7 +144,7 @@ namespace Umbraco.Examine var filtered = c.NativeQuery(rawQuery); var results = filtered.Execute(); - ProfilingLogger.Debug("DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); + _logger.LogDebug("DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); //need to queue a delete item for each one found QueueIndexOperation(results.Select(r => new IndexOperation(new ValueSet(r.Id), IndexOperationType.Delete))); diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index a911e2553d..a04e3cd10f 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -22,6 +22,8 @@ namespace Umbraco.Examine /// public abstract class UmbracoExamineIndex : LuceneIndex, IUmbracoIndex, IIndexDiagnostics { + private readonly ILogger _logger; + private readonly IRuntimeState _runtimeState; // note // wrapping all operations that end up calling base.SafelyProcessQueueItems in a safe call @@ -29,7 +31,6 @@ namespace Umbraco.Examine // call context (and the database it can contain)! ideally we should be able to override // SafelyProcessQueueItems but that's not possible in the current version of Examine. - /// /// Create a new @@ -39,6 +40,7 @@ namespace Umbraco.Examine /// /// /// + /// /// /// /// @@ -49,12 +51,15 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, + ILogger _logger, + ILogger _examineIndexLogger, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, IValueSetValidator validator = null, IReadOnlyDictionary indexValueTypes = null) : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, validator, indexValueTypes) { + this._logger = _logger; _runtimeState = runtimeState; ProfilingLogger = profilingLogger ?? throw new ArgumentNullException(nameof(profilingLogger)); @@ -62,7 +67,7 @@ namespace Umbraco.Examine if (luceneDirectory is FSDirectory fsDir) LuceneIndexFolder = fsDir.Directory; - _diagnostics = new UmbracoExamineIndexDiagnostics(this, ProfilingLogger, hostingEnvironment); + _diagnostics = new UmbracoExamineIndexDiagnostics(this, _examineIndexLogger, hostingEnvironment); } private readonly bool _configBased = false; @@ -118,7 +123,7 @@ namespace Umbraco.Examine /// protected override void OnIndexingError(IndexingErrorEventArgs ex) { - ProfilingLogger.LogError(ex.InnerException, ex.Message); + _logger.LogError(ex.InnerException, ex.Message); base.OnIndexingError(ex); } @@ -154,7 +159,7 @@ namespace Umbraco.Examine /// protected override void AddDocument(Document doc, ValueSet valueSet, IndexWriter writer) { - ProfilingLogger.Debug("Write lucene doc id:{DocumentId}, category:{DocumentCategory}, type:{DocumentItemType}", + _logger.LogDebug("Write lucene doc id:{DocumentId}, category:{DocumentCategory}, type:{DocumentItemType}", valueSet.Id, valueSet.Category, valueSet.ItemType); diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs index 777b198232..f6abb9bd26 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs @@ -12,7 +12,7 @@ namespace Umbraco.Examine { private readonly UmbracoExamineIndex _index; - public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) : base(index, logger, hostingEnvironment) { _index = index; diff --git a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs index c0200933ab..ed9c7cc490 100644 --- a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs +++ b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs @@ -43,7 +43,7 @@ namespace Umbraco.Web.Cache if (supportUnbinding) _unbinders = new List(); - _logger.Info("Initializing Umbraco internal event handlers for cache refreshing."); + _logger.LogInformation("Initializing Umbraco internal event handlers for cache refreshing."); // bind to user and user group events Bind(() => UserService.SavedUserGroup += UserService_SavedUserGroup, diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index a14c59866f..33cb0f204f 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -54,7 +54,7 @@ namespace Umbraco.Web.HealthCheck public void LogResults() { - Logger.Info("Scheduled health check results:"); + Logger.LogInformation("Scheduled health check results:"); foreach (var result in _results) { var checkName = result.Key; @@ -62,7 +62,7 @@ namespace Umbraco.Web.HealthCheck var checkIsSuccess = result.Value.All(x => x.ResultType == StatusResultType.Success); if (checkIsSuccess) { - Logger.Info("Checks for '{HealthCheckName}' all completed successfully.", checkName); + Logger.LogInformation("Checks for '{HealthCheckName}' all completed successfully.", checkName); } else { @@ -71,7 +71,7 @@ namespace Umbraco.Web.HealthCheck foreach (var checkResult in checkResults) { - Logger.Info("Result for {HealthCheckName}: {HealthCheckResult}, Message: '{HealthCheckMessage}'", checkName, checkResult.ResultType, checkResult.Message); + Logger.LogInformation("Result for {HealthCheckName}: {HealthCheckResult}, Message: '{HealthCheckMessage}'", checkName, checkResult.ResultType, checkResult.Message); } } } diff --git a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs index dccf320787..02e852eb90 100644 --- a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs +++ b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs @@ -53,7 +53,7 @@ namespace Umbraco.Web.Install.InstallSteps if (upgrade) { - _logger.Info("Running 'Upgrade' service"); + _logger.LogInformation("Running 'Upgrade' service"); var plan = new UmbracoPlan(_umbracoVersion, _globalSettings); plan.AddPostMigration(); // needed when running installer (back-office) diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index b5ff8f1c19..1cc8115664 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -351,7 +351,7 @@ namespace Umbraco.Core.Migrations.Install return readyForInstall.Result; } - _logger.Info("Database configuration status: Started"); + _logger.LogInformation("Database configuration status: Started"); var database = scope.Database; @@ -373,12 +373,12 @@ namespace Umbraco.Core.Migrations.Install message = message + "

Installation completed!

"; //now that everything is done, we need to determine the version of SQL server that is executing - _logger.Info("Database configuration status: {DbConfigStatus}", message); + _logger.LogInformation("Database configuration status: {DbConfigStatus}", message); return new Result { Message = message, Success = true, Percentage = "100" }; } //we need to do an upgrade so return a new status message and it will need to be done during the next step - _logger.Info("Database requires upgrade"); + _logger.LogInformation("Database requires upgrade"); message = "

Upgrading database, this may take some time...

"; return new Result { @@ -412,7 +412,7 @@ namespace Umbraco.Core.Migrations.Install return readyForInstall.Result; } - _logger.Info("Database upgrade started"); + _logger.LogInformation("Database upgrade started"); // upgrade var upgrader = new Upgrader(plan); @@ -422,7 +422,7 @@ namespace Umbraco.Core.Migrations.Install //now that everything is done, we need to determine the version of SQL server that is executing - _logger.Info("Database configuration status: {DbConfigStatus}", message); + _logger.LogInformation("Database configuration status: {DbConfigStatus}", message); return new Result { Message = message, Success = true, Percentage = "100" }; } @@ -453,7 +453,7 @@ namespace Umbraco.Core.Migrations.Install if (_databaseSchemaValidationResult != null) { - _logger.Info("The database schema validation produced the following summary: {DbSchemaSummary}", _databaseSchemaValidationResult.GetSummary()); + _logger.LogInformation("The database schema validation produced the following summary: {DbSchemaSummary}", _databaseSchemaValidationResult.GetSummary()); } return new Result diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs index 36f1a30b20..b3ce6292d2 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs @@ -33,7 +33,7 @@ namespace Umbraco.Core.Migrations.Install /// Name of the table to create base data for public void InitializeBaseData(string tableName) { - _logger.Info("Creating data in {TableName}", tableName); + _logger.LogInformation("Creating data in {TableName}", tableName); if (tableName.Equals(Constants.DatabaseSchema.Tables.Node)) CreateNodeData(); @@ -77,7 +77,7 @@ namespace Umbraco.Core.Migrations.Install if (tableName.Equals(Constants.DatabaseSchema.Tables.KeyValue)) CreateKeyValueData(); - _logger.Info("Done creating table {TableName} data.", tableName); + _logger.LogInformation("Done creating table {TableName} data.", tableName); } private void CreateNodeData() diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs index d133819ec9..a7417eacb6 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs @@ -93,14 +93,14 @@ namespace Umbraco.Core.Migrations.Install ///
internal void UninstallDatabaseSchema() { - _logger.Info("Start UninstallDatabaseSchema"); + _logger.LogInformation("Start UninstallDatabaseSchema"); foreach (var table in OrderedTables.AsEnumerable().Reverse()) { var tableNameAttribute = table.FirstAttribute(); var tableName = tableNameAttribute == null ? table.Name : tableNameAttribute.Value; - _logger.Info("Uninstall {TableName}", tableName); + _logger.LogInformation("Uninstall {TableName}", tableName); try { @@ -436,7 +436,7 @@ namespace Umbraco.Core.Migrations.Install var tableExist = TableExists(tableName); if (overwrite && tableExist) { - _logger.Info("Table {TableName} already exists, but will be recreated", tableName); + _logger.LogInformation("Table {TableName} already exists, but will be recreated", tableName); DropTable(tableName); tableExist = false; @@ -445,19 +445,19 @@ namespace Umbraco.Core.Migrations.Install if (tableExist) { // The table exists and was not recreated/overwritten. - _logger.Info("Table {TableName} already exists - no changes were made", tableName); + _logger.LogInformation("Table {TableName} already exists - no changes were made", tableName); return; } //Execute the Create Table sql var created = _database.Execute(new Sql(createSql)); - _logger.Info("Create Table {TableName} ({Created}): \n {Sql}", tableName, created, createSql); + _logger.LogInformation("Create Table {TableName} ({Created}): \n {Sql}", tableName, created, createSql); //If any statements exists for the primary key execute them here if (string.IsNullOrEmpty(createPrimaryKeySql) == false) { var createdPk = _database.Execute(new Sql(createPrimaryKeySql)); - _logger.Info("Create Primary Key ({CreatedPk}):\n {Sql}", createdPk, createPrimaryKeySql); + _logger.LogInformation("Create Primary Key ({CreatedPk}):\n {Sql}", createdPk, createPrimaryKeySql); } if (SqlSyntax.SupportsIdentityInsert() && tableDefinition.Columns.Any(x => x.IsIdentity)) @@ -475,23 +475,23 @@ namespace Umbraco.Core.Migrations.Install foreach (var sql in indexSql) { var createdIndex = _database.Execute(new Sql(sql)); - _logger.Info("Create Index ({CreatedIndex}):\n {Sql}", createdIndex, sql); + _logger.LogInformation("Create Index ({CreatedIndex}):\n {Sql}", createdIndex, sql); } //Loop through foreignkey statements and execute sql foreach (var sql in foreignSql) { var createdFk = _database.Execute(new Sql(sql)); - _logger.Info("Create Foreign Key ({CreatedFk}):\n {Sql}", createdFk, sql); + _logger.LogInformation("Create Foreign Key ({CreatedFk}):\n {Sql}", createdFk, sql); } if (overwrite) { - _logger.Info("Table {TableName} was recreated", tableName); + _logger.LogInformation("Table {TableName} was recreated", tableName); } else { - _logger.Info("New table {TableName} was created", tableName); + _logger.LogInformation("New table {TableName} was created", tableName); } } diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs index 63fddae99e..42d2338eaa 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs @@ -55,7 +55,7 @@ namespace Umbraco.Core.Migrations if (string.IsNullOrWhiteSpace(sql)) { - Logger.Info("SQL [{ContextIndex}]: ", Context.Index); + LoggerExtensions.LogInformation(Logger, "SQL [{ContextIndex}]: ", Context.Index); } else { @@ -116,7 +116,7 @@ namespace Umbraco.Core.Migrations private void ExecuteStatement(StringBuilder stmtBuilder) { var stmt = stmtBuilder.ToString(); - Logger.Info("SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); + LoggerExtensions.LogInformation(Logger, "SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); Database.Execute(stmt); stmtBuilder.Clear(); } diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs b/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs index 89c3c809e8..de2770bf47 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs @@ -294,11 +294,11 @@ namespace Umbraco.Core.Migrations if (migrationBuilder == null) throw new ArgumentNullException(nameof(migrationBuilder)); if (logger == null) throw new ArgumentNullException(nameof(logger)); - logger.Info("Starting '{MigrationName}'...", Name); + logger.LogInformation("Starting '{MigrationName}'...", Name); var origState = fromState ?? string.Empty; - logger.Info("At {OrigState}", string.IsNullOrWhiteSpace(origState) ? "origin": origState); + logger.LogInformation("At {OrigState}", string.IsNullOrWhiteSpace(origState) ? "origin": origState); if (!_transitions.TryGetValue(origState, out var transition)) ThrowOnUnknownInitialState(origState); @@ -308,7 +308,7 @@ namespace Umbraco.Core.Migrations while (transition != null) { - logger.Info("Execute {MigrationType}", transition.MigrationType.Name); + logger.LogInformation("Execute {MigrationType}", transition.MigrationType.Name); var migration = migrationBuilder.Build(transition.MigrationType, context); migration.Migrate(); @@ -316,7 +316,7 @@ namespace Umbraco.Core.Migrations var nextState = transition.TargetState; origState = nextState; - logger.Info("At {OrigState}", origState); + logger.LogInformation("At {OrigState}", origState); // throw a raw exception here: this should never happen as the plan has // been validated - this is just a paranoid safety test @@ -333,12 +333,12 @@ namespace Umbraco.Core.Migrations // run post-migrations foreach (var postMigrationType in postMigrationTypes) { - logger.Info($"PostMigration: {postMigrationType.FullName}."); + logger.LogInformation($"PostMigration: {postMigrationType.FullName}."); var postMigration = migrationBuilder.Build(postMigrationType, context); postMigration.Migrate(); } - logger.Info("Done (pending scope completion)."); + logger.LogInformation("Done (pending scope completion)."); // safety check - again, this should never happen as the plan has been validated, // and this is just a paranoid safety test diff --git a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs index 1e798da3b2..c6196aeca8 100644 --- a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs +++ b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs @@ -23,11 +23,11 @@ namespace Umbraco.Web.PublishedCache private readonly IMediaTypeService _mediaTypeService; private readonly IMemberTypeService _memberTypeService; private readonly IPublishedContentTypeFactory _publishedContentTypeFactory; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ReaderWriterLockSlim _lock = new ReaderWriterLockSlim(); // default ctor - public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) + public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) { _contentTypeService = contentTypeService; _mediaTypeService = mediaTypeService; @@ -37,7 +37,7 @@ namespace Umbraco.Web.PublishedCache } // for unit tests ONLY - internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) + internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) { _logger = logger; _publishedContentTypeFactory = publishedContentTypeFactory; @@ -50,7 +50,7 @@ namespace Umbraco.Web.PublishedCache ///
public void ClearAll() { - _logger.Debug("Clear all."); + _logger.LogDebug("Clear all."); try { @@ -72,7 +72,7 @@ namespace Umbraco.Web.PublishedCache /// An identifier. public void ClearContentType(int id) { - _logger.Debug("Clear content type w/id {ContentTypeId}", id); + _logger.LogDebug("Clear content type w/id {ContentTypeId}", id); try { @@ -107,7 +107,7 @@ namespace Umbraco.Web.PublishedCache /// A data type identifier. public void ClearDataType(int id) { - _logger.Debug("Clear data type w/id {DataTypeId}.", id); + _logger.LogDebug("Clear data type w/id {DataTypeId}.", id); // there is no recursion to handle here because a PublishedContentType contains *all* its // properties ie both its own properties and those that were inherited (it's based upon an diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 08f0d8d378..eef0cc379a 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -128,7 +128,7 @@ namespace Umbraco.Core.Runtime "Boot failed.")) { - Logger.Info("Booting site '{HostingSiteName}', app '{HostingApplicationId}', path '{HostingPhysicalPath}', server '{MachineName}'.", + Logger.LogInformation("Booting site '{HostingSiteName}', app '{HostingApplicationId}', path '{HostingPhysicalPath}', server '{MachineName}'.", HostingEnvironment?.SiteName, HostingEnvironment?.ApplicationId, HostingEnvironment?.ApplicationPhysicalPath, diff --git a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs index 9aac31a562..ae753883fc 100644 --- a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs +++ b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs @@ -348,7 +348,7 @@ namespace Umbraco.Web.Scheduling var hasTasks = TaskCount > 0; if (!force && hasTasks) - _logger.Info("{LogPrefix} Waiting for tasks to complete", _logPrefix); + _logger.LogInformation("{LogPrefix} Waiting for tasks to complete", _logPrefix); // complete the queue // will stop waiting on the queue or on a latch @@ -704,7 +704,7 @@ namespace Umbraco.Web.Scheduling if (_terminating == false) { _terminating = true; - _logger.Info("{LogPrefix} Terminating {Immediate}", _logPrefix, immediate ? immediate.ToString() : string.Empty); + _logger.LogInformation("{LogPrefix} Terminating {Immediate}", _logPrefix, immediate ? immediate.ToString() : string.Empty); onTerminating = true; } } @@ -789,7 +789,7 @@ namespace Umbraco.Web.Scheduling /// private void StopImmediate() { - _logger.Info("{LogPrefix} Canceling tasks", _logPrefix); + _logger.LogInformation("{LogPrefix} Canceling tasks", _logPrefix); try { Shutdown(true, true); // cancel all tasks, wait for the current one to end @@ -823,7 +823,7 @@ namespace Umbraco.Web.Scheduling terminatedSource = _terminatedSource; } - _logger.Info("{LogPrefix} Tasks {TaskStatus}, terminated", + _logger.LogInformation("{LogPrefix} Tasks {TaskStatus}, terminated", _logPrefix, immediate ? "cancelled" : "completed"); diff --git a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs index e5c35a32aa..8d8015f449 100644 --- a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs +++ b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs @@ -83,7 +83,7 @@ namespace Umbraco.Web.Scheduling // run var result = _contentService.PerformScheduledPublish(DateTime.Now); foreach (var grouped in result.GroupBy(x => x.Result)) - _logger.Info( + _logger.LogInformation( "Scheduled publishing result: '{StatusCount}' items with status {Status}", grouped.Count(), grouped.Key); } diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index deea247c4b..0ecef1f253 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -46,7 +46,7 @@ namespace Umbraco.Web.Search return; } - _logger.Info("Starting initialize async background thread."); + _logger.LogInformation("Starting initialize async background thread."); //do the rebuild on a managed background thread var task = new RebuildOnStartupTask(_mainDom, _indexRebuilder, _logger, onlyEmptyIndexes, waitMilliseconds); diff --git a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs index ae5bfd628b..ab1c20b0a3 100644 --- a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs +++ b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs @@ -72,7 +72,7 @@ namespace Umbraco.Web.Search if (!examineShutdownRegistered) { - _logger.Info("Examine shutdown not registered, this AppDomain is not the MainDom, Examine will be disabled"); + _logger.LogInformation("Examine shutdown not registered, this AppDomain is not the MainDom, Examine will be disabled"); //if we could not register the shutdown examine ourselves, it means we are not maindom! in this case all of examine should be disabled! Suspendable.ExamineEvents.SuspendIndexers(_logger); @@ -87,7 +87,7 @@ namespace Umbraco.Web.Search var registeredIndexers = _examineManager.Indexes.OfType().Count(x => x.EnableDefaultEventHandler); - _logger.Info("Adding examine event handlers for {RegisteredIndexers} index providers.", registeredIndexers); + _logger.LogInformation("Adding examine event handlers for {RegisteredIndexers} index providers.", registeredIndexers); // don't bind event handlers if we're not suppose to listen if (registeredIndexers == 0) diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 6d35196533..266a18f931 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -2635,7 +2635,7 @@ namespace Umbraco.Core.Services.Implement // raise Publishing event if (scope.Events.DispatchCancelable(Publishing, this, savingEventArgs.ToContentPublishingEventArgs())) { - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "publishing was cancelled"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "publishing was cancelled"); return new PublishResult(PublishResultType.FailedPublishCancelledByEvent, evtMsgs, content); } @@ -2687,7 +2687,7 @@ namespace Umbraco.Core.Services.Implement // either because it is 'publishing' or because it already has a published version if (content.PublishedState != PublishedState.Publishing && content.PublishedVersionId == 0) { - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document does not have published values"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document does not have published values"); return new PublishResult(PublishResultType.FailedPublishNothingToPublish, evtMsgs, content); } @@ -2700,20 +2700,20 @@ namespace Umbraco.Core.Services.Implement { case ContentStatus.Expired: if (!variesByCulture) - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document has expired"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document has expired"); else - Logger.Info("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document culture has expired"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document culture has expired"); return new PublishResult(!variesByCulture ? PublishResultType.FailedPublishHasExpired : PublishResultType.FailedPublishCultureHasExpired, evtMsgs, content); case ContentStatus.AwaitingRelease: if (!variesByCulture) - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is awaiting release"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is awaiting release"); else - Logger.Info("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document is culture awaiting release"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document is culture awaiting release"); return new PublishResult(!variesByCulture ? PublishResultType.FailedPublishAwaitingRelease : PublishResultType.FailedPublishCultureAwaitingRelease, evtMsgs, content); case ContentStatus.Trashed: - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is trashed"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is trashed"); return new PublishResult(PublishResultType.FailedPublishIsTrashed, evtMsgs, content); } } @@ -2726,7 +2726,7 @@ namespace Umbraco.Core.Services.Implement var pathIsOk = content.ParentId == Constants.System.Root || IsPathPublished(GetParent(content)); if (!pathIsOk) { - Logger.Info("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "parent is not published"); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "parent is not published"); return new PublishResult(PublishResultType.FailedPublishPathNotPublished, evtMsgs, content); } } @@ -2763,11 +2763,11 @@ namespace Umbraco.Core.Services.Implement return new PublishResult(PublishResultType.FailedPublishNothingToPublish, evtMsgs, content); if (culturesUnpublishing.Count > 0) - Logger.Info("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been unpublished.", + Logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been unpublished.", content.Name, content.Id, string.Join(",", culturesUnpublishing)); if (culturesPublishing.Count > 0) - Logger.Info("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been published.", + Logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been published.", content.Name, content.Id, string.Join(",", culturesPublishing)); if (culturesUnpublishing.Count > 0 && culturesPublishing.Count > 0) @@ -2779,7 +2779,7 @@ namespace Umbraco.Core.Services.Implement return new PublishResult(PublishResultType.SuccessPublishCulture, evtMsgs, content); } - Logger.Info("Document {ContentName} (id={ContentId}) has been published.", content.Name, content.Id); + Logger.LogInformation("Document {ContentName} (id={ContentId}) has been published.", content.Name, content.Id); return new PublishResult(evtMsgs, content); } @@ -2795,7 +2795,7 @@ namespace Umbraco.Core.Services.Implement // raise Unpublishing event if (scope.Events.DispatchCancelable(Unpublishing, this, new PublishEventArgs(content, evtMsgs))) { - Logger.Info("Document {ContentName} (id={ContentId}) cannot be unpublished: unpublishing was cancelled.", content.Name, content.Id); + Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be unpublished: unpublishing was cancelled.", content.Name, content.Id); return new PublishResult(PublishResultType.FailedUnpublishCancelledByEvent, evtMsgs, content); } @@ -2827,12 +2827,12 @@ namespace Umbraco.Core.Services.Implement foreach (var p in pastReleases) content.ContentSchedule.Remove(p); if (pastReleases.Count > 0) - Logger.Info("Document {ContentName} (id={ContentId}) had its release date removed, because it was unpublished.", content.Name, content.Id); + Logger.LogInformation("Document {ContentName} (id={ContentId}) had its release date removed, because it was unpublished.", content.Name, content.Id); // change state to unpublishing content.PublishedState = PublishedState.Unpublishing; - Logger.Info("Document {ContentName} (id={ContentId}) has been unpublished.", content.Name, content.Id); + Logger.LogInformation("Document {ContentName} (id={ContentId}) has been unpublished.", content.Name, content.Id); return attempt; } @@ -3173,7 +3173,7 @@ namespace Umbraco.Core.Services.Implement scope.Events.Dispatch(RolledBack, this, rollbackEventArgs); //Logging & Audit message - Logger.Info("User '{UserId}' rolled back content '{ContentId}' to version '{VersionId}'", userId, id, versionId); + Logger.LogInformation("User '{UserId}' rolled back content '{ContentId}' to version '{VersionId}'", userId, id, versionId); Audit(AuditType.RollBack, userId, id, $"Content '{content.Name}' was rolled back to version '{versionId}'"); } diff --git a/src/Umbraco.Infrastructure/Suspendable.cs b/src/Umbraco.Infrastructure/Suspendable.cs index 75797b5f54..14582dd56a 100644 --- a/src/Umbraco.Infrastructure/Suspendable.cs +++ b/src/Umbraco.Infrastructure/Suspendable.cs @@ -38,7 +38,7 @@ namespace Umbraco.Web { _suspended = false; - Current.Logger.Info("Resume document cache (reload:{Tried}).", _tried); + LoggerExtensions.LogInformation(Current.Logger, "Resume document cache (reload:{Tried}).", _tried); if (_tried == false) return; _tried = false; @@ -74,7 +74,7 @@ namespace Umbraco.Web { _suspended = false; - logger.Info("Resume indexers (rebuild:{Tried}).", _tried); + LoggerExtensions.LogInformation(logger, "Resume indexers (rebuild:{Tried}).", _tried); if (_tried == false) return; _tried = false; diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index f9556e9408..11da064637 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -377,7 +377,7 @@ namespace Umbraco.Core.Sync //if they couldn't be all processed (i.e. we're shutting down) then exit if (success == false) { - Logger.Info("The current batch of instructions was not processed, app is shutting down"); + Logger.LogInformation("The current batch of instructions was not processed, app is shutting down"); break; } diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index 4f32457417..a7bef79cee 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -85,10 +85,10 @@ namespace Umbraco.ModelsBuilder.Embedded _logger.Debug("Generate models..."); const int timeout = 2 * 60 * 1000; // 2 mins _mutex.WaitOne(timeout); // wait until it is safe, and acquire - _logger.Info("Generate models now."); + _logger.LogInformation("Generate models now."); GenerateModels(); _mbErrors.Clear(); - _logger.Info("Generated."); + _logger.LogInformation("Generated."); } catch (TimeoutException) { diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index c138d68ae9..d2f846ae1b 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -24,7 +24,8 @@ namespace Umbraco.ModelsBuilder.Embedded private readonly ReaderWriterLockSlim _locker = new ReaderWriterLockSlim(); private volatile bool _hasModels; // volatile 'cos reading outside lock private bool _pendingRebuild; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _profilingLogger; + private readonly ILogger _logger; private readonly FileSystemWatcher _watcher; private int _ver, _skipver; private readonly int _debugLevel; @@ -44,13 +45,15 @@ namespace Umbraco.ModelsBuilder.Embedded public PureLiveModelFactory( Lazy umbracoServices, - IProfilingLogger logger, + IProfilingLogger profilingLogger, + ILogger logger, IModelsBuilderConfig config, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, IPublishedValueFallback publishedValueFallback) { _umbracoServices = umbracoServices; + _profilingLogger = profilingLogger; _logger = logger; _config = config; _hostingEnvironment = hostingEnvironment; @@ -212,7 +215,7 @@ namespace Umbraco.ModelsBuilder.Embedded // tells the factory that it should build a new generation of models private void ResetModels() { - _logger.Debug("Resetting models."); + _logger.LogDebug("Resetting models."); try { @@ -254,7 +257,7 @@ namespace Umbraco.ModelsBuilder.Embedded internal Infos EnsureModels() { if (_debugLevel > 0) - _logger.Debug("Ensuring models."); + _logger.LogDebug("Ensuring models."); // don't use an upgradeable lock here because only 1 thread at a time could enter it try @@ -286,7 +289,7 @@ namespace Umbraco.ModelsBuilder.Embedded // either they haven't been loaded from the cache yet // or they have been reseted and are pending a rebuild - using (_logger.DebugDuration("Get models.", "Got models.")) + using (_profilingLogger.DebugDuration("Get models.", "Got models.")) { try { @@ -305,8 +308,8 @@ namespace Umbraco.ModelsBuilder.Embedded { try { - _logger.LogError("Failed to build models.", e); - _logger.LogWarning("Running without models."); // be explicit + _logger.LogWarning("Failed to build models.", e); + _logger.LogWarning("Running without models."); // be explicit _errors.Report("Failed to build PureLive models.", e); } finally @@ -372,13 +375,13 @@ namespace Umbraco.ModelsBuilder.Embedded if (!forceRebuild) { - _logger.Debug("Looking for cached models."); + _logger.LogDebug("Looking for cached models."); if (File.Exists(modelsHashFile) && File.Exists(projFile)) { var cachedHash = File.ReadAllText(modelsHashFile); if (currentHash != cachedHash) { - _logger.Debug("Found obsolete cached models."); + _logger.LogDebug("Found obsolete cached models."); forceRebuild = true; } @@ -386,7 +389,7 @@ namespace Umbraco.ModelsBuilder.Embedded } else { - _logger.Debug("Could not find cached models."); + _logger.LogDebug("Could not find cached models."); forceRebuild = true; } } @@ -403,7 +406,7 @@ namespace Umbraco.ModelsBuilder.Embedded { var dllPath = File.ReadAllText(dllPathFile); - _logger.Debug($"Cached models dll at {dllPath}."); + _logger.LogDebug($"Cached models dll at {dllPath}."); if (File.Exists(dllPath) && !File.Exists(dllPath + ".delete")) { @@ -418,18 +421,18 @@ namespace Umbraco.ModelsBuilder.Embedded // with the "same but different" version of the assembly in memory _skipver = assembly.GetName().Version.Revision; - _logger.Debug("Loading cached models (dll)."); + _logger.LogDebug("Loading cached models (dll)."); return assembly; } - _logger.Debug("Cached models dll cannot be loaded (invalid assembly)."); + _logger.LogDebug("Cached models dll cannot be loaded (invalid assembly)."); } else if (!File.Exists(dllPath)) - _logger.Debug("Cached models dll does not exist."); + _logger.LogDebug("Cached models dll does not exist."); else if (File.Exists(dllPath + ".delete")) - _logger.Debug("Cached models dll is marked for deletion."); + _logger.LogDebug("Cached models dll is marked for deletion."); else - _logger.Debug("Cached models dll cannot be loaded (why?)."); + _logger.LogDebug("Cached models dll cannot be loaded (why?)."); } // must reset the version in the file else it would keep growing @@ -458,12 +461,12 @@ namespace Umbraco.ModelsBuilder.Embedded throw; } - _logger.Debug("Loading cached models (source)."); + _logger.LogDebug("Loading cached models (source)."); return assembly; } // need to rebuild - _logger.Debug("Rebuilding models."); + _logger.LogDebug("Rebuilding models."); // generate code, save var code = GenerateModelsCode(typeModels); @@ -500,7 +503,7 @@ namespace Umbraco.ModelsBuilder.Embedded throw; } - _logger.Debug("Done rebuilding."); + _logger.LogDebug("Done rebuilding."); return assembly; } @@ -537,7 +540,7 @@ namespace Umbraco.ModelsBuilder.Embedded private void ClearOnFailingToCompile(string dllPathFile, string modelsHashFile, string projFile) { - _logger.Debug("Failed to compile."); + _logger.LogDebug("Failed to compile."); // the dll file reference still points to the previous dll, which is obsolete // now and will be deleted by ASP.NET eventually, so better clear that reference. @@ -704,7 +707,7 @@ namespace Umbraco.ModelsBuilder.Embedded //if (_building && OurFiles.Contains(changed)) //{ - // //_logger.Info("Ignoring files self-changes."); + // //_logger.LogInformation("Ignoring files self-changes."); // return; //} @@ -712,7 +715,7 @@ namespace Umbraco.ModelsBuilder.Embedded if (OurFiles.Contains(changed)) return; - _logger.Info("Detected files changes."); + _logger.LogInformation("Detected files changes."); lock (SyncRoot) // don't reset while being locked ResetModels(); diff --git a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs index 4dceb6f550..c9c6ad49d0 100644 --- a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs +++ b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs @@ -46,7 +46,8 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly ConcurrentDictionary _contentTypeKeyToIdMap; private readonly ConcurrentDictionary _contentKeyToIdMap; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILogger _snapShotLogger; private readonly IPublishedModelFactory _publishedModelFactory; private BPlusTree _localDb; private readonly ConcurrentQueue _genObjs; @@ -67,13 +68,15 @@ namespace Umbraco.Web.PublishedCache.NuCache public ContentStore( IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, - ILogger logger, + ILogger logger, + ILogger snapShotLogger, IPublishedModelFactory publishedModelFactory, BPlusTree localDb = null) { _publishedSnapshotAccessor = publishedSnapshotAccessor; _variationContextAccessor = variationContextAccessor; _logger = logger; + _snapShotLogger = snapShotLogger; _publishedModelFactory = publishedModelFactory; _localDb = localDb; @@ -253,7 +256,7 @@ namespace Umbraco.Web.PublishedCache.NuCache catch (Exception ex) { /* TBD: May already be throwing so don't throw again */ - _logger.LogError(ex, "Error trying to release DB"); + _logger.LogError(ex, "Error trying to release DB"); } finally { @@ -264,7 +267,7 @@ namespace Umbraco.Web.PublishedCache.NuCache } catch (Exception ex) { - _logger.LogError(ex, "Error trying to lock"); + _logger.LogError(ex, "Error trying to lock"); throw; } finally @@ -521,7 +524,7 @@ namespace Umbraco.Web.PublishedCache.NuCache parent = GetParentLink(kit.Node, null); if (parent == null) { - _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find parent id={kit.Node.ParentContentId}."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find parent id={kit.Node.ParentContentId}."); return false; } @@ -530,21 +533,21 @@ namespace Umbraco.Web.PublishedCache.NuCache // because the data sort operation is by path. if (parent.Value == null) { - _logger.LogWarning($"Skip item id={kit.Node.Id}, no Data assigned for linked node with path {kit.Node.Path} and parent id {kit.Node.ParentContentId}. This can indicate data corruption for the Path value for node {kit.Node.Id}. See the Health Check dashboard in Settings to resolve data integrity issues."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, no Data assigned for linked node with path {kit.Node.Path} and parent id {kit.Node.ParentContentId}. This can indicate data corruption for the Path value for node {kit.Node.Id}. See the Health Check dashboard in Settings to resolve data integrity issues."); return false; } // make sure the kit is valid if (kit.DraftData == null && kit.PublishedData == null) { - _logger.LogWarning($"Skip item id={kit.Node.Id}, both draft and published data are null."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, both draft and published data are null."); return false; } // unknown = bad if (_contentTypesById.TryGetValue(kit.ContentTypeId, out var link) == false || link.Value == null) { - _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find content type id={kit.ContentTypeId}."); + _logger.LogWarning($"Skip item id={kit.Node.Id}, could not find content type id={kit.ContentTypeId}."); return false; } @@ -601,7 +604,7 @@ namespace Umbraco.Web.PublishedCache.NuCache throw new ArgumentException("Kit content cannot have children.", nameof(kit)); // ReSharper restore LocalizableElement - _logger.Debug("Set content ID: {KitNodeId}", kit.Node.Id); + _logger.LogDebug("Set content ID: {KitNodeId}", kit.Node.Id); // get existing _contentNodes.TryGetValue(kit.Node.Id, out var link); @@ -720,7 +723,7 @@ namespace Umbraco.Web.PublishedCache.NuCache previousNode = null; // there is no previous sibling } - _logger.Debug($"Set {thisNode.Id} with parent {thisNode.ParentContentId}"); + _logger.LogDebug($"Set {thisNode.Id} with parent {thisNode.ParentContentId}"); SetValueLocked(_contentNodes, thisNode.Id, thisNode); // if we are initializing from the database source ensure the local db is updated @@ -777,7 +780,7 @@ namespace Umbraco.Web.PublishedCache.NuCache ok = false; continue; // skip that one } - _logger.Debug($"Set {kit.Node.Id} with parent {kit.Node.ParentContentId}"); + _logger.LogDebug($"Set {kit.Node.Id} with parent {kit.Node.ParentContentId}"); SetValueLocked(_contentNodes, kit.Node.Id, kit.Node); if (_localDb != null) RegisterChange(kit.Node.Id, kit); @@ -866,7 +869,7 @@ namespace Umbraco.Web.PublishedCache.NuCache if (link?.Value == null) return false; var content = link.Value; - _logger.Debug("Clear content ID: {ContentId}", content.Id); + _logger.LogDebug("Clear content ID: {ContentId}", content.Id); // clear the entire branch ClearBranchLocked(content); @@ -1308,7 +1311,7 @@ namespace Umbraco.Web.PublishedCache.NuCache if (_nextGen == false && _genObj != null) return new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _logger + , _snapShotLogger #endif ); @@ -1344,7 +1347,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshot = new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _logger + , _snapShotLogger #endif ); @@ -1358,7 +1361,7 @@ namespace Umbraco.Web.PublishedCache.NuCache public Snapshot LiveSnapshot => new Snapshot(this, _liveGen #if DEBUG - , _logger + , _snapShotLogger #endif ); @@ -1393,14 +1396,14 @@ namespace Umbraco.Web.PublishedCache.NuCache { // see notes in CreateSnapshot #if DEBUG - _logger.Debug("Collect."); + _logger.LogDebug("Collect."); #endif while (_genObjs.TryPeek(out var genObj) && (genObj.Count == 0 || genObj.WeakGenRef.IsAlive == false)) { _genObjs.TryDequeue(out genObj); // cannot fail since TryPeek has succeeded _floorGen = genObj.Gen; #if DEBUG - //_logger.Debug("_floorGen=" + _floorGen + ", _liveGen=" + _liveGen); + //_logger.LogDebug("_floorGen=" + _floorGen + ", _liveGen=" + _liveGen); #endif } @@ -1438,7 +1441,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var link = kvp.Value; #if DEBUG - //_logger.Debug("Collect id:" + kvp.Key + ", gen:" + link.Gen + + //_logger.LogDebug("Collect id:" + kvp.Key + ", gen:" + link.Gen + // ", nxt:" + (link.Next == null ? "null" : "link") + // ", val:" + (link.Value == null ? "null" : "value")); #endif @@ -1546,7 +1549,7 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly GenRef _genRef; private long _gen; #if DEBUG - private readonly ILogger _logger; + private readonly ILogger _logger; #endif //private static int _count; @@ -1554,7 +1557,7 @@ namespace Umbraco.Web.PublishedCache.NuCache internal Snapshot(ContentStore store, GenRef genRef #if DEBUG - , ILogger logger + , ILogger logger #endif ) { @@ -1566,13 +1569,13 @@ namespace Umbraco.Web.PublishedCache.NuCache #if DEBUG _logger = logger; - _logger.Debug("Creating snapshot."); + _logger.LogDebug("Creating snapshot."); #endif } internal Snapshot(ContentStore store, long gen #if DEBUG - , ILogger logger + , ILogger logger #endif ) { @@ -1581,7 +1584,7 @@ namespace Umbraco.Web.PublishedCache.NuCache #if DEBUG _logger = logger; - _logger.Debug("Creating live."); + _logger.LogDebug("Creating live."); #endif } @@ -1669,7 +1672,7 @@ namespace Umbraco.Web.PublishedCache.NuCache { if (_gen < 0) return; #if DEBUG - _logger.Debug("Dispose snapshot ({Snapshot})", _genRef?.GenObj.Count.ToString() ?? "live"); + _logger.LogDebug("Dispose snapshot ({Snapshot})", _genRef?.GenObj.Count.ToString() ?? "live"); #endif _gen = -1; if (_genRef != null) diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index 7d41243098..3ade8eb34a 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -39,9 +39,11 @@ namespace Umbraco.Web.PublishedCache.NuCache { private readonly ServiceContext _serviceContext; private readonly IPublishedContentTypeFactory _publishedContentTypeFactory; + private readonly IProfilingLogger _profilingLogger; private readonly IScopeProvider _scopeProvider; private readonly IDataSource _dataSource; - private readonly IProfilingLogger _logger; + private readonly ILogger _logger; + private readonly ILogger _publishedContentTypeCacheLogger; private readonly IDocumentRepository _documentRepository; private readonly IMediaRepository _mediaRepository; private readonly IMemberRepository _memberRepository; @@ -81,7 +83,9 @@ namespace Umbraco.Web.PublishedCache.NuCache public PublishedSnapshotService(PublishedSnapshotServiceOptions options, IMainDom mainDom, IRuntimeState runtime, ServiceContext serviceContext, IPublishedContentTypeFactory publishedContentTypeFactory, - IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, IProfilingLogger logger, IScopeProvider scopeProvider, + IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, + IProfilingLogger profilingLogger, ILogger logger, ILogger contentLogger, ILogger snapshotLogger, ILogger publishedContentTypeCacheLogger, + IScopeProvider scopeProvider, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, IDataSource dataSource, IGlobalSettings globalSettings, @@ -99,8 +103,10 @@ namespace Umbraco.Web.PublishedCache.NuCache _serviceContext = serviceContext; _publishedContentTypeFactory = publishedContentTypeFactory; + _profilingLogger = profilingLogger; _dataSource = dataSource; _logger = logger; + _publishedContentTypeCacheLogger = publishedContentTypeCacheLogger; _scopeProvider = scopeProvider; _documentRepository = documentRepository; _mediaRepository = mediaRepository; @@ -144,18 +150,18 @@ namespace Umbraco.Web.PublishedCache.NuCache // stores are created with a db so they can write to it, but they do not read from it, // stores need to be populated, happens in OnResolutionFrozen which uses _localDbExists to // figure out whether it can read the databases or it should populate them from sql - - _logger.Info("Creating the content store, localContentDbExists? {LocalContentDbExists}", _localContentDbExists); - _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, logger, publishedModelFactory, _localContentDb); - _logger.Info("Creating the media store, localMediaDbExists? {LocalMediaDbExists}", _localMediaDbExists); - _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, logger, publishedModelFactory, _localMediaDb); + + _logger.LogInformation("Creating the content store, localContentDbExists? {LocalContentDbExists}", _localContentDbExists); + _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory, _localContentDb); + _logger.LogInformation("Creating the media store, localMediaDbExists? {LocalMediaDbExists}", _localMediaDbExists); + _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory, _localMediaDb); } else { - _logger.Info("Creating the content store (local db ignored)"); - _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, logger, publishedModelFactory); - _logger.Info("Creating the media store (local db ignored)"); - _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, logger, publishedModelFactory); + _logger.LogInformation("Creating the content store (local db ignored)"); + _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory); + _logger.LogInformation("Creating the media store (local db ignored)"); + _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory); } _domainStore = new SnapDictionary(); @@ -201,7 +207,7 @@ namespace Umbraco.Web.PublishedCache.NuCache _localContentDb = BTree.GetTree(localContentDbPath, _localContentDbExists, _config); _localMediaDb = BTree.GetTree(localMediaDbPath, _localMediaDbExists, _config); - _logger.Info("Registered with MainDom, localContentDbExists? {LocalContentDbExists}, localMediaDbExists? {LocalMediaDbExists}", _localContentDbExists, _localMediaDbExists); + _logger.LogInformation("Registered with MainDom, localContentDbExists? {LocalContentDbExists}, localMediaDbExists? {LocalMediaDbExists}", _localContentDbExists, _localMediaDbExists); } /// @@ -212,19 +218,19 @@ namespace Umbraco.Web.PublishedCache.NuCache /// private void MainDomRelease() { - _logger.Debug("Releasing from MainDom..."); + _logger.LogDebug("Releasing from MainDom..."); lock (_storesLock) { - _logger.Debug("Releasing content store..."); + _logger.LogDebug("Releasing content store..."); _contentStore?.ReleaseLocalDb(); //null check because we could shut down before being assigned _localContentDb = null; - _logger.Debug("Releasing media store..."); + _logger.LogDebug("Releasing media store..."); _mediaStore?.ReleaseLocalDb(); //null check because we could shut down before being assigned _localMediaDb = null; - _logger.Info("Released from MainDom"); + _logger.LogInformation("Released from MainDom"); } } @@ -243,14 +249,14 @@ namespace Umbraco.Web.PublishedCache.NuCache { okContent = LockAndLoadContent(scope => LoadContentFromLocalDbLocked(true)); if (!okContent) - _logger.LogWarning("Loading content from local db raised warnings, will reload from database."); + _logger.LogWarning("Loading content from local db raised warnings, will reload from database."); } if (_localMediaDbExists) { okMedia = LockAndLoadMedia(scope => LoadMediaFromLocalDbLocked(true)); if (!okMedia) - _logger.LogWarning("Loading media from local db raised warnings, will reload from database."); + _logger.LogWarning("Loading media from local db raised warnings, will reload from database."); } if (!okContent) @@ -263,7 +269,7 @@ namespace Umbraco.Web.PublishedCache.NuCache } catch (Exception ex) { - _logger.Fatal(ex, "Panic, exception while loading cache data."); + _logger.LogCritical(ex, "Panic, exception while loading cache data."); throw; } @@ -406,7 +412,7 @@ namespace Umbraco.Web.PublishedCache.NuCache _contentStore.SetAllContentTypesLocked(contentTypes); - using (_logger.TraceDuration("Loading content from database")) + using (_profilingLogger.TraceDuration("Loading content from database")) { // beware! at that point the cache is inconsistent, // assuming we are going to SetAll content items! @@ -425,7 +431,7 @@ namespace Umbraco.Web.PublishedCache.NuCache .Select(x => _publishedContentTypeFactory.CreateContentType(x)); _contentStore.SetAllContentTypesLocked(contentTypes); - using (_logger.TraceDuration("Loading content from local cache file")) + using (_profilingLogger.TraceDuration("Loading content from local cache file")) { // beware! at that point the cache is inconsistent, // assuming we are going to SetAll content items! @@ -477,14 +483,14 @@ namespace Umbraco.Web.PublishedCache.NuCache .Select(x => _publishedContentTypeFactory.CreateContentType(x)); _mediaStore.SetAllContentTypesLocked(mediaTypes); - using (_logger.TraceDuration("Loading media from database")) + using (_profilingLogger.TraceDuration("Loading media from database")) { // beware! at that point the cache is inconsistent, // assuming we are going to SetAll content items! _localMediaDb?.Clear(); - _logger.Debug("Loading media from database..."); + _logger.LogDebug("Loading media from database..."); // IMPORTANT GetAllMediaSources sorts kits by level + parentId + sortOrder var kits = _dataSource.GetAllMediaSources(scope); return onStartup ? _mediaStore.SetAllFastSortedLocked(kits, true) : _mediaStore.SetAllLocked(kits); @@ -497,7 +503,7 @@ namespace Umbraco.Web.PublishedCache.NuCache .Select(x => _publishedContentTypeFactory.CreateContentType(x)); _mediaStore.SetAllContentTypesLocked(mediaTypes); - using (_logger.TraceDuration("Loading media from local cache file")) + using (_profilingLogger.TraceDuration("Loading media from local cache file")) { // beware! at that point the cache is inconsistent, // assuming we are going to SetAll content items! @@ -532,7 +538,7 @@ namespace Umbraco.Web.PublishedCache.NuCache // Update: We will still return false here even though the above mentioned race condition has been fixed since we now // lock the entire operation of creating/populating the cache file with the same lock as releasing/closing the cache file - _logger.Info($"Tried to load {entityType} from the local cache file but it was empty."); + _logger.LogInformation($"Tried to load {entityType} from the local cache file but it was empty."); return false; } @@ -709,7 +715,7 @@ namespace Umbraco.Web.PublishedCache.NuCache foreach (var payload in payloads) { - _logger.Debug("Notified {ChangeTypes} for content {ContentId}", payload.ChangeTypes, payload.Id); + _logger.LogDebug("Notified {ChangeTypes} for content {ContentId}", payload.ChangeTypes, payload.Id); if (payload.ChangeTypes.HasType(TreeChangeTypes.RefreshAll)) { @@ -802,7 +808,7 @@ namespace Umbraco.Web.PublishedCache.NuCache foreach (var payload in payloads) { - _logger.Debug("Notified {ChangeTypes} for media {MediaId}", payload.ChangeTypes, payload.Id); + _logger.LogDebug("Notified {ChangeTypes} for media {MediaId}", payload.ChangeTypes, payload.Id); if (payload.ChangeTypes.HasType(TreeChangeTypes.RefreshAll)) { @@ -873,7 +879,7 @@ namespace Umbraco.Web.PublishedCache.NuCache return; foreach (var payload in payloads) - _logger.Debug("Notified {ChangeTypes} for {ItemType} {ItemId}", payload.ChangeTypes, payload.ItemType, payload.Id); + _logger.LogDebug("Notified {ChangeTypes} for {ItemType} {ItemId}", payload.ChangeTypes, payload.ItemType, payload.Id); Notify(_contentStore, payloads, RefreshContentTypesLocked); Notify(_mediaStore, payloads, RefreshMediaTypesLocked); @@ -957,7 +963,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var idsA = payloads.Select(x => x.Id).ToArray(); foreach (var payload in payloads) - _logger.Debug("Notified {RemovedStatus} for data type {DataTypeId}", + _logger.LogDebug("Notified {RemovedStatus} for data type {DataTypeId}", payload.Removed ? "Removed" : "Refreshed", payload.Id); @@ -1229,7 +1235,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshotCache = new DictionaryAppCache(); - var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _logger); + var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _publishedContentTypeCacheLogger); var defaultCulture = _defaultCultureAccessor.DefaultCulture; var domainCache = new DomainCache(domainSnap, defaultCulture); @@ -1490,7 +1496,7 @@ namespace Umbraco.Web.PublishedCache.NuCache public override void Rebuild() { - _logger.Debug("Rebuilding..."); + _logger.LogDebug("Rebuilding..."); using (var scope = _scopeProvider.CreateScope(repositoryCacheMode: RepositoryCacheMode.Scoped)) { scope.ReadLock(Constants.Locks.ContentTree); diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index b21ef866ff..1215f2d489 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -674,7 +674,7 @@ AND (umbracoNode.id=@id)"; // (no need to test _released) internal void SaveXmlToFile() { - Current.Logger.Info("Save Xml to file..."); + Current.Logger.LogInformation("Save Xml to file..."); try { @@ -698,7 +698,7 @@ AND (umbracoNode.id=@id)"; fs.Write(bytes, 0, bytes.Length); } - Current.Logger.Info("Saved Xml to file."); + Current.Logger.LogInformation("Saved Xml to file."); } catch (Exception ex) { @@ -714,7 +714,7 @@ AND (umbracoNode.id=@id)"; // (no need to test _released) internal async Task SaveXmlToFileAsync() { - Current.Logger.Info("Save Xml to file..."); + Current.Logger.LogInformation("Save Xml to file..."); try { @@ -738,7 +738,7 @@ AND (umbracoNode.id=@id)"; await fs.WriteAsync(bytes, 0, bytes.Length); } - Current.Logger.Info("Saved Xml to file."); + Current.Logger.LogInformation("Saved Xml to file."); } catch (Exception ex) { @@ -782,7 +782,7 @@ AND (umbracoNode.id=@id)"; // do NOT try to load if we are not the main domain anymore if (_released) return null; - Current.Logger.Info("Load Xml from file..."); + Current.Logger.LogInformation("Load Xml from file..."); try { @@ -792,7 +792,7 @@ AND (umbracoNode.id=@id)"; xml.Load(fs); } _lastFileRead = DateTime.UtcNow; - Current.Logger.Info("Loaded Xml from file."); + Current.Logger.LogInformation("Loaded Xml from file."); return xml; } catch (FileNotFoundException) diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index a47e327e20..20c32f2f6f 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -128,7 +128,7 @@ namespace Umbraco.Tests.Services total.AddRange(ServiceContext.ContentService.GetPagedDescendants(content.Id, 0, int.MaxValue, out var _)); } TestProfiler.Disable(); - Current.Logger.Info("Returned {Total} items", total.Count); + Current.Logger.LogInformation("Returned {Total} items", total.Count); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs index d8197f71ce..e670f95d6a 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs @@ -148,7 +148,7 @@ namespace Umbraco.Web.BackOffice.Controllers //NOTE: We are using 30 seconds because that is what is coded into angular to force logout to give some headway in // the timeout process. - _logger.Info( + _logger.LogInformation( "User logged will be logged out due to timeout: {Username}, IP Address: {IPAddress}", backOfficeIdentity.Name, _ipResolver.GetCurrentRequestIpAddress()); @@ -351,7 +351,7 @@ namespace Umbraco.Web.BackOffice.Controllers var lockedOut = await _userManager.IsLockedOutAsync(identityUser); if (lockedOut) { - _logger.Info("User {UserId} is currently locked out, unlocking and resetting AccessFailedCount", model.UserId); + _logger.LogInformation("User {UserId} is currently locked out, unlocking and resetting AccessFailedCount", model.UserId); //// var user = await UserManager.FindByIdAsync(model.UserId); var unlockResult = await _userManager.SetLockoutEndDateAsync(identityUser, DateTimeOffset.Now); @@ -409,7 +409,7 @@ namespace Umbraco.Web.BackOffice.Controllers { HttpContext.SignOutAsync(Core.Constants.Security.BackOfficeAuthenticationType); - _logger.Info("User {UserName} from IP address {RemoteIpAddress} has logged out", User.Identity == null ? "UNKNOWN" : User.Identity.Name, HttpContext.Connection.RemoteIpAddress); + _logger.LogInformation("User {UserName} from IP address {RemoteIpAddress} has logged out", User.Identity == null ? "UNKNOWN" : User.Identity.Name, HttpContext.Connection.RemoteIpAddress); _userManager.RaiseLogoutSuccessEvent(User, int.Parse(User.Identity.GetUserId())); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index f2724dacbb..e8646f4d47 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -136,7 +136,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (!validate.IsSuccessStatusCode()) throw new HttpResponseException(validate); - _logger.Info("Rebuilding index '{IndexName}'", indexName); + _logger.LogInformation("Rebuilding index '{IndexName}'", indexName); //remove it in case there's a handler there already index.IndexOperationComplete -= Indexer_IndexOperationComplete; @@ -250,9 +250,7 @@ namespace Umbraco.Web.BackOffice.Controllers //ensure it's not listening anymore indexer.IndexOperationComplete -= Indexer_IndexOperationComplete; - _logger - .Info($"Rebuilding index '{indexer.Name}' done."); + _logger.LogInformation($"Rebuilding index '{indexer.Name}' done."); var cacheKey = "temp_indexing_op_" + indexer.Name; _runtimeCache.Clear(cacheKey); diff --git a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs index dfd13ff101..4612b2845c 100644 --- a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs +++ b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs @@ -31,7 +31,7 @@ namespace Umbraco.Web.Common.Profiler // if VoidProfiler was registered, let it be known if (profiler is VoidProfiler) - logger.Info( + logger.LogInformation( "Profiler is VoidProfiler, not profiling (must run debug mode to profile)."); _profile = false; } diff --git a/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs b/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs index 1e60fedeea..d72c64ebf9 100644 --- a/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs +++ b/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs @@ -31,7 +31,7 @@ namespace Umbraco.Web if (url.IsNullOrWhiteSpace() == false) { var umbracoApplicationUrl = url.TrimEnd('/'); - _logger.Info("ApplicationUrl: {UmbracoAppUrl} (using web.routing/@umbracoApplicationUrl)", umbracoApplicationUrl); + _logger.LogInformation("ApplicationUrl: {UmbracoAppUrl} (using web.routing/@umbracoApplicationUrl)", umbracoApplicationUrl); return umbracoApplicationUrl; } diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index 5c329d89c9..07d4eca0ea 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -26,7 +26,7 @@ namespace Umbraco.Web public void Info(string msg) { - _logger.Info(msg); + _logger.LogInformation(msg); } public void Warn(string msg) diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index a9533c0124..afa4b42cab 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -36,25 +36,25 @@ namespace Umbraco.Web.Logging _logger.LogWarning("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Information: - _logger.Info("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogInformation("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Verbose: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Start: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Stop: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Suspend: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Resume: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; case TraceEventType.Transfer: - _logger.Debug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); + _logger.LogDebug("[{EventType}] Event Id: {EventId}, State: {State}", eventType, eventId, state); return true; default: throw new ArgumentOutOfRangeException("eventType"); diff --git a/src/Umbraco.Web/Logging/WebProfilerComponent.cs b/src/Umbraco.Web/Logging/WebProfilerComponent.cs index 2edeea6a1b..796d86d16f 100755 --- a/src/Umbraco.Web/Logging/WebProfilerComponent.cs +++ b/src/Umbraco.Web/Logging/WebProfilerComponent.cs @@ -21,7 +21,7 @@ namespace Umbraco.Web.Logging // if VoidProfiler was registered, let it be known if (profiler is VoidProfiler) - logger.Info("Profiler is VoidProfiler, not profiling (must run debug mode to profile)."); + logger.LogInformation("Profiler is VoidProfiler, not profiling (must run debug mode to profile)."); _profile = false; } diff --git a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs index 95b2dcda58..7c4dff1702 100644 --- a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs +++ b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs @@ -490,7 +490,7 @@ namespace Umbraco.Web.Security.Providers if (member == null) { - Current.Logger.Info("Login attempt failed for username {Username} from IP address {IpAddress}, the user does not exist", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt failed for username {Username} from IP address {IpAddress}, the user does not exist", username, _ipResolver.GetCurrentRequestIpAddress()); return new ValidateUserResult { @@ -500,7 +500,7 @@ namespace Umbraco.Web.Security.Providers if (member.IsApproved == false) { - Current.Logger.Info("Login attempt failed for username {Username} from IP address {IpAddress}, the user is not approved", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt failed for username {Username} from IP address {IpAddress}, the user is not approved", username, _ipResolver.GetCurrentRequestIpAddress()); return new ValidateUserResult { @@ -510,7 +510,7 @@ namespace Umbraco.Web.Security.Providers } if (member.IsLockedOut) { - Current.Logger.Info("Login attempt failed for username {Username} from IP address {IpAddress}, the user is locked", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt failed for username {Username} from IP address {IpAddress}, the user is locked", username, _ipResolver.GetCurrentRequestIpAddress()); return new ValidateUserResult { @@ -534,11 +534,11 @@ namespace Umbraco.Web.Security.Providers member.IsLockedOut = true; member.LastLockoutDate = DateTime.Now; - Current.Logger.Info("Login attempt failed for username {Username} from IP address {IpAddress}, the user is now locked out, max invalid password attempts exceeded", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt failed for username {Username} from IP address {IpAddress}, the user is now locked out, max invalid password attempts exceeded", username, _ipResolver.GetCurrentRequestIpAddress()); } else { - Current.Logger.Info("Login attempt failed for username {Username} from IP address {IpAddress}", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt failed for username {Username} from IP address {IpAddress}", username, _ipResolver.GetCurrentRequestIpAddress()); } } else @@ -551,7 +551,7 @@ namespace Umbraco.Web.Security.Providers member.LastLoginDate = DateTime.Now; - Current.Logger.Info("Login attempt succeeded for username {Username} from IP address {IpAddress}", username, _ipResolver.GetCurrentRequestIpAddress()); + Current.Logger.LogInformation("Login attempt succeeded for username {Username} from IP address {IpAddress}", username, _ipResolver.GetCurrentRequestIpAddress()); } //don't raise events for this! It just sets the member dates, if we do raise events this will diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 3a68572fa1..86fc7de76c 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -251,7 +251,7 @@ namespace Umbraco.Web BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.GetField, null, runtime, null); - Current.Logger.Info("Application shutdown. Details: {ShutdownReason}\r\n\r\n_shutDownMessage={ShutdownMessage}\r\n\r\n_shutDownStack={ShutdownStack}", + Current.Logger.LogInformation("Application shutdown. Details: {ShutdownReason}\r\n\r\n_shutDownMessage={ShutdownMessage}\r\n\r\n_shutDownStack={ShutdownStack}", HostingEnvironment.ShutdownReason, shutDownMessage, shutDownStack); @@ -259,7 +259,7 @@ namespace Umbraco.Web catch (Exception) { //if for some reason that fails, then log the normal output - Current.Logger.Info("Application shutdown. Reason: {ShutdownReason}", HostingEnvironment.ShutdownReason); + Current.Logger.LogInformation("Application shutdown. Reason: {ShutdownReason}", HostingEnvironment.ShutdownReason); } Current.Logger.DisposeIfDisposable(); diff --git a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs index 59a4f43bec..8532c3ae0d 100644 --- a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs +++ b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs @@ -85,7 +85,7 @@ namespace Umbraco.Web.WebAssets.CDF versionAttribute.SetValue(newVersion); clientDependencyConfigXml.Save(_fileName, SaveOptions.DisableFormatting); - _logger.Info("Updated version number from {OldVersion} to {NewVersion}", oldVersion, newVersion); + _logger.LogInformation("Updated version number from {OldVersion} to {NewVersion}", oldVersion, newVersion); return true; } } From 554d2f6f6411f36a0ebe5419d81a532e80d08ccb Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 09:00:14 +0200 Subject: [PATCH 08/85] Fix TypeLoader and PublishedRouter --- src/Umbraco.Core/Composing/TypeLoader.cs | 44 ++++++------ src/Umbraco.Core/Routing/PublishedRouter.cs | 79 +++++++++++---------- 2 files changed, 63 insertions(+), 60 deletions(-) diff --git a/src/Umbraco.Core/Composing/TypeLoader.cs b/src/Umbraco.Core/Composing/TypeLoader.cs index b10063e563..89ce7de28e 100644 --- a/src/Umbraco.Core/Composing/TypeLoader.cs +++ b/src/Umbraco.Core/Composing/TypeLoader.cs @@ -28,7 +28,8 @@ namespace Umbraco.Core.Composing private const string CacheKey = "umbraco-types.list"; private readonly IAppPolicyCache _runtimeCache; - private readonly IProfilingLogger _logger; + private readonly ILogger _logger; + private readonly IProfilingLogger _profilingLogger; private readonly Dictionary _types = new Dictionary(); private readonly object _locko = new object(); @@ -51,8 +52,8 @@ namespace Umbraco.Core.Composing /// Files storage location. /// A profiling logger. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, IProfilingLogger logger, IEnumerable assembliesToScan = null) - : this(typeFinder, runtimeCache, localTempPath, logger, true, assembliesToScan) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, IEnumerable assembliesToScan = null) + : this(typeFinder, runtimeCache, localTempPath, logger, profilingLogger, true, assembliesToScan) { } /// @@ -64,12 +65,13 @@ namespace Umbraco.Core.Composing /// A profiling logger. /// Whether to detect changes using hashes. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, IProfilingLogger logger, bool detectChanges, IEnumerable assembliesToScan = null) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, bool detectChanges, IEnumerable assembliesToScan = null) { TypeFinder = typeFinder ?? throw new ArgumentNullException(nameof(typeFinder)); _runtimeCache = runtimeCache ?? throw new ArgumentNullException(nameof(runtimeCache)); _localTempPath = localTempPath; _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _profilingLogger = profilingLogger ?? throw new ArgumentNullException(nameof(profilingLogger)); _assemblies = assembliesToScan; if (detectChanges) @@ -309,7 +311,7 @@ namespace Umbraco.Core.Composing // internal for tests public void WriteCache() { - _logger.Debug("Writing cache file."); + _logger.LogDebug("Writing cache file."); var typesListFilePath = GetTypesListFilePath(); using (var stream = GetFileStream(typesListFilePath, FileMode.Create, FileAccess.Write, FileShare.None, ListFileOpenWriteTimeout)) using (var writer = new StreamWriter(stream)) @@ -381,7 +383,7 @@ namespace Umbraco.Core.Composing if (--attempts == 0) throw; - _logger.Debug("Attempted to get filestream for file {Path} failed, {NumberOfAttempts} attempts left, pausing for {PauseMilliseconds} milliseconds", path, attempts, pauseMilliseconds); + _logger.LogDebug("Attempted to get filestream for file {Path} failed, {NumberOfAttempts} attempts left, pausing for {PauseMilliseconds} milliseconds", path, attempts, pauseMilliseconds); Thread.Sleep(pauseMilliseconds); } } @@ -402,7 +404,7 @@ namespace Umbraco.Core.Composing if (--attempts == 0) throw; - _logger.Debug("Attempted to delete file {Path} failed, {NumberOfAttempts} attempts left, pausing for {PauseMilliseconds} milliseconds", path, attempts, pauseMilliseconds); + _logger.LogDebug("Attempted to delete file {Path} failed, {NumberOfAttempts} attempts left, pausing for {PauseMilliseconds} milliseconds", path, attempts, pauseMilliseconds); Thread.Sleep(pauseMilliseconds); } } @@ -475,7 +477,7 @@ namespace Umbraco.Core.Composing if (!typeof(IDiscoverable).IsAssignableFrom(typeof(T))) { // warn - _logger.Debug("Running a full, " + (cache ? "" : "non-") + "cached, scan for non-discoverable type {TypeName} (slow).", typeof(T).FullName); + _logger.LogDebug("Running a full, " + (cache ? "" : "non-") + "cached, scan for non-discoverable type {TypeName} (slow).", typeof(T).FullName); return GetTypesInternal( typeof(T), null, @@ -493,7 +495,7 @@ namespace Umbraco.Core.Composing // warn if (!cache) - _logger.Debug("Running a non-cached, filter for discoverable type {TypeName} (slowish).", typeof(T).FullName); + _logger.LogDebug("Running a non-cached, filter for discoverable type {TypeName} (slowish).", typeof(T).FullName); // filter the cached discovered types (and maybe cache the result) return GetTypesInternal( @@ -525,7 +527,7 @@ namespace Umbraco.Core.Composing // if not IDiscoverable, directly get types if (!typeof(IDiscoverable).IsAssignableFrom(typeof(T))) { - _logger.Debug("Running a full, " + (cache ? "" : "non-") + "cached, scan for non-discoverable type {TypeName} / attribute {AttributeName} (slow).", typeof(T).FullName, typeof(TAttribute).FullName); + _logger.LogDebug("Running a full, " + (cache ? "" : "non-") + "cached, scan for non-discoverable type {TypeName} / attribute {AttributeName} (slow).", typeof(T).FullName, typeof(TAttribute).FullName); return GetTypesInternal( typeof(T), typeof(TAttribute), @@ -543,7 +545,7 @@ namespace Umbraco.Core.Composing // warn if (!cache) - _logger.Debug("Running a non-cached, filter for discoverable type {TypeName} / attribute {AttributeName} (slowish).", typeof(T).FullName, typeof(TAttribute).FullName); + _logger.LogDebug("Running a non-cached, filter for discoverable type {TypeName} / attribute {AttributeName} (slowish).", typeof(T).FullName, typeof(TAttribute).FullName); // filter the cached discovered types (and maybe cache the result) return GetTypesInternal( @@ -573,7 +575,7 @@ namespace Umbraco.Core.Composing cache &= specificAssemblies == null; if (!cache) - _logger.Debug("Running a full, non-cached, scan for types / attribute {AttributeName} (slow).", typeof(TAttribute).FullName); + _logger.LogDebug("Running a full, non-cached, scan for types / attribute {AttributeName} (slow).", typeof(TAttribute).FullName); return GetTypesInternal( typeof (object), typeof (TAttribute), @@ -596,7 +598,7 @@ namespace Umbraco.Core.Composing var name = GetName(baseType, attributeType); lock (_locko) - using (_logger.DebugDuration( + using (_profilingLogger.DebugDuration( "Getting " + name, "Got " + name)) // cannot contain typesFound.Count as it's evaluated before the find { @@ -629,7 +631,7 @@ namespace Umbraco.Core.Composing if (typeList != null) { // need to put some logging here to try to figure out why this is happening: http://issues.umbraco.org/issue/U4-3505 - _logger.Debug("Getting {TypeName}: found a cached type list.", GetName(baseType, attributeType)); + _logger.LogDebug("Getting {TypeName}: found a cached type list.", GetName(baseType, attributeType)); return typeList.Types; } @@ -645,7 +647,7 @@ namespace Umbraco.Core.Composing // report (only once) and scan and update the cache file if (_reportedChange == false) { - _logger.Debug("Assemblies changes detected, need to rescan everything."); + _logger.LogDebug("Assemblies changes detected, need to rescan everything."); _reportedChange = true; } } @@ -660,7 +662,7 @@ namespace Umbraco.Core.Composing // so in this instance there will never be a result. if (cacheResult.Exception is CachedTypeNotFoundInFileException || cacheResult.Success == false) { - _logger.Debug("Getting {TypeName}: failed to load from cache file, must scan assemblies.", GetName(baseType, attributeType)); + _logger.LogDebug("Getting {TypeName}: failed to load from cache file, must scan assemblies.", GetName(baseType, attributeType)); scan = true; } else @@ -674,7 +676,7 @@ namespace Umbraco.Core.Composing else { // in case of any exception, we have to exit, and revert to scanning - _logger.LogWarning("Getting {TypeName}: failed to load cache file type {CacheType}, reverting to scanning assemblies.", GetName(baseType, attributeType), type); + _logger.LogWarning("Getting {TypeName}: failed to load cache file type {CacheType}, reverting to scanning assemblies.", GetName(baseType, attributeType), type); scan = true; break; } @@ -682,7 +684,7 @@ namespace Umbraco.Core.Composing if (scan == false) { - _logger.Debug("Getting {TypeName}: loaded types from cache file.", GetName(baseType, attributeType)); + _logger.LogDebug("Getting {TypeName}: loaded types from cache file.", GetName(baseType, attributeType)); } } } @@ -690,7 +692,7 @@ namespace Umbraco.Core.Composing if (scan) { // either we had to scan, or we could not get the types from the cache file - scan now - _logger.Debug("Getting {TypeName}: " + action + ".", GetName(baseType, attributeType)); + _logger.LogDebug("Getting {TypeName}: " + action + ".", GetName(baseType, attributeType)); foreach (var t in finder()) typeList.Add(t); @@ -708,11 +710,11 @@ namespace Umbraco.Core.Composing UpdateCache(); } - _logger.Debug("Got {TypeName}, caching ({CacheType}).", GetName(baseType, attributeType), added.ToString().ToLowerInvariant()); + _logger.LogDebug("Got {TypeName}, caching ({CacheType}).", GetName(baseType, attributeType), added.ToString().ToLowerInvariant()); } else { - _logger.Debug("Got {TypeName}.", GetName(baseType, attributeType)); + _logger.LogDebug("Got {TypeName}.", GetName(baseType, attributeType)); } return typeList.Types; diff --git a/src/Umbraco.Core/Routing/PublishedRouter.cs b/src/Umbraco.Core/Routing/PublishedRouter.cs index 811e1eea01..6d15d323a3 100644 --- a/src/Umbraco.Core/Routing/PublishedRouter.cs +++ b/src/Umbraco.Core/Routing/PublishedRouter.cs @@ -23,7 +23,7 @@ namespace Umbraco.Web.Routing private readonly IContentLastChanceFinder _contentLastChanceFinder; private readonly IProfilingLogger _profilingLogger; private readonly IVariationContextAccessor _variationContextAccessor; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IPublishedUrlProvider _publishedUrlProvider; private readonly IRequestAccessor _requestAccessor; private readonly IPublishedValueFallback _publishedValueFallback; @@ -41,6 +41,7 @@ namespace Umbraco.Web.Routing IContentLastChanceFinder contentLastChanceFinder, IVariationContextAccessor variationContextAccessor, IProfilingLogger proflog, + ILogger logger, IPublishedUrlProvider publishedUrlProvider, IRequestAccessor requestAccessor, IPublishedValueFallback publishedValueFallback, @@ -54,7 +55,7 @@ namespace Umbraco.Web.Routing _contentLastChanceFinder = contentLastChanceFinder ?? throw new ArgumentNullException(nameof(contentLastChanceFinder)); _profilingLogger = proflog ?? throw new ArgumentNullException(nameof(proflog)); _variationContextAccessor = variationContextAccessor ?? throw new ArgumentNullException(nameof(variationContextAccessor)); - _logger = proflog; + _logger = logger; _publishedUrlProvider = publishedUrlProvider; _requestAccessor = requestAccessor; _publishedValueFallback = publishedValueFallback; @@ -247,7 +248,7 @@ namespace Umbraco.Web.Routing // note - we are not handling schemes nor ports here. - _logger.Debug("{TracePrefix}Uri={RequestUri}", tracePrefix, request.Uri); + _logger.LogDebug("{TracePrefix}Uri={RequestUri}", tracePrefix, request.Uri); var domainsCache = request.UmbracoContext.PublishedSnapshot.Domains; var domains = domainsCache.GetAll(includeWildcards: false).ToList(); @@ -284,7 +285,7 @@ namespace Umbraco.Web.Routing if (domainAndUri != null) { // matching an existing domain - _logger.Debug("{TracePrefix}Matches domain={Domain}, rootId={RootContentId}, culture={Culture}", tracePrefix, domainAndUri.Name, domainAndUri.ContentId, domainAndUri.Culture); + _logger.LogDebug("{TracePrefix}Matches domain={Domain}, rootId={RootContentId}, culture={Culture}", tracePrefix, domainAndUri.Name, domainAndUri.ContentId, domainAndUri.Culture); request.Domain = domainAndUri; request.Culture = domainAndUri.Culture; @@ -299,12 +300,12 @@ namespace Umbraco.Web.Routing else { // not matching any existing domain - _logger.Debug("{TracePrefix}Matches no domain", tracePrefix); + _logger.LogDebug("{TracePrefix}Matches no domain", tracePrefix); request.Culture = defaultCulture == null ? CultureInfo.CurrentUICulture : new CultureInfo(defaultCulture); } - _logger.Debug("{TracePrefix}Culture={CultureName}", tracePrefix, request.Culture.Name); + _logger.LogDebug("{TracePrefix}Culture={CultureName}", tracePrefix, request.Culture.Name); return request.Domain != null; } @@ -320,7 +321,7 @@ namespace Umbraco.Web.Routing return; var nodePath = request.PublishedContent.Path; - _logger.Debug("{TracePrefix}Path={NodePath}", tracePrefix, nodePath); + _logger.LogDebug("{TracePrefix}Path={NodePath}", tracePrefix, nodePath); var rootNodeId = request.HasDomain ? request.Domain.ContentId : (int?)null; var domain = DomainUtilities.FindWildcardDomainInPath(request.UmbracoContext.PublishedSnapshot.Domains.GetAll(true), nodePath, rootNodeId); @@ -328,11 +329,11 @@ namespace Umbraco.Web.Routing if (domain != null) { request.Culture = domain.Culture; - _logger.Debug("{TracePrefix}Got domain on node {DomainContentId}, set culture to {CultureName}", tracePrefix, domain.ContentId, request.Culture.Name); + _logger.LogDebug("{TracePrefix}Got domain on node {DomainContentId}, set culture to {CultureName}", tracePrefix, domain.ContentId, request.Culture.Name); } else { - _logger.Debug("{TracePrefix}No match.", tracePrefix); + _logger.LogDebug("{TracePrefix}No match.", tracePrefix); } } @@ -374,7 +375,7 @@ namespace Umbraco.Web.Routing /// A value indicating whether a document and template were found. private void FindPublishedContentAndTemplate(IPublishedRequest request) { - _logger.Debug("FindPublishedContentAndTemplate: Path={UriAbsolutePath}", request.Uri.AbsolutePath); + _logger.LogDebug("FindPublishedContentAndTemplate: Path={UriAbsolutePath}", request.Uri.AbsolutePath); // run the document finders FindPublishedContent(request); @@ -417,7 +418,7 @@ namespace Umbraco.Web.Routing //iterate but return on first one that finds it var found = _contentFinders.Any(finder => { - _logger.Debug("Finder {ContentFinderType}", finder.GetType().FullName); + _logger.LogDebug("Finder {ContentFinderType}", finder.GetType().FullName); return finder.TryFindContent(request); }); } @@ -441,22 +442,22 @@ namespace Umbraco.Web.Routing const int maxLoop = 8; do { - _logger.Debug("HandlePublishedContent: Loop {LoopCounter}", i); + _logger.LogDebug("HandlePublishedContent: Loop {LoopCounter}", i); // handle not found if (request.HasPublishedContent == false) { request.Is404 = true; - _logger.Debug("HandlePublishedContent: No document, try last chance lookup"); + _logger.LogDebug("HandlePublishedContent: No document, try last chance lookup"); // if it fails then give up, there isn't much more that we can do if (_contentLastChanceFinder.TryFindContent(request) == false) { - _logger.Debug("HandlePublishedContent: Failed to find a document, give up"); + _logger.LogDebug("HandlePublishedContent: Failed to find a document, give up"); break; } - _logger.Debug("HandlePublishedContent: Found a document"); + _logger.LogDebug("HandlePublishedContent: Found a document"); } // follow internal redirects as long as it's not running out of control ie infinite loop of some sort @@ -478,11 +479,11 @@ namespace Umbraco.Web.Routing if (i == maxLoop || j == maxLoop) { - _logger.Debug("HandlePublishedContent: Looks like we are running into an infinite loop, abort"); + _logger.LogDebug("HandlePublishedContent: Looks like we are running into an infinite loop, abort"); request.PublishedContent = null; } - _logger.Debug("HandlePublishedContent: End"); + _logger.LogDebug("HandlePublishedContent: End"); } /// @@ -527,25 +528,25 @@ namespace Umbraco.Web.Routing if (valid == false) { // bad redirect - log and display the current page (legacy behavior) - _logger.Debug("FollowInternalRedirects: Failed to redirect to id={InternalRedirectId}: value is not an int nor a GuidUdi.", + _logger.LogDebug("FollowInternalRedirects: Failed to redirect to id={InternalRedirectId}: value is not an int nor a GuidUdi.", request.PublishedContent.GetProperty(Constants.Conventions.Content.InternalRedirectId).GetSourceValue()); } if (internalRedirectNode == null) { - _logger.Debug("FollowInternalRedirects: Failed to redirect to id={InternalRedirectId}: no such published document.", + _logger.LogDebug("FollowInternalRedirects: Failed to redirect to id={InternalRedirectId}: no such published document.", request.PublishedContent.GetProperty(Constants.Conventions.Content.InternalRedirectId).GetSourceValue()); } else if (internalRedirectId == request.PublishedContent.Id) { // redirect to self - _logger.Debug("FollowInternalRedirects: Redirecting to self, ignore"); + _logger.LogDebug("FollowInternalRedirects: Redirecting to self, ignore"); } else { request.SetInternalRedirectPublishedContent(internalRedirectNode); // don't use .PublishedContent here redirect = true; - _logger.Debug("FollowInternalRedirects: Redirecting to id={InternalRedirectId}", internalRedirectId); + _logger.LogDebug("FollowInternalRedirects: Redirecting to id={InternalRedirectId}", internalRedirectId); } return redirect; @@ -566,35 +567,35 @@ namespace Umbraco.Web.Routing if (publicAccessAttempt) { - _logger.Debug("EnsurePublishedContentAccess: Page is protected, check for access"); + _logger.LogDebug("EnsurePublishedContentAccess: Page is protected, check for access"); var status = _publicAccessChecker.HasMemberAccessToContent(request.PublishedContent.Id); switch (status) { case PublicAccessStatus.NotLoggedIn: - _logger.Debug("EnsurePublishedContentAccess: Not logged in, redirect to login page"); + _logger.LogDebug("EnsurePublishedContentAccess: Not logged in, redirect to login page"); SetPublishedContentAsOtherPage(request, publicAccessAttempt.Result.LoginNodeId); break; case PublicAccessStatus.AccessDenied: - _logger.Debug("EnsurePublishedContentAccess: Current member has not access, redirect to error page"); + _logger.LogDebug("EnsurePublishedContentAccess: Current member has not access, redirect to error page"); SetPublishedContentAsOtherPage(request, publicAccessAttempt.Result.NoAccessNodeId); break; case PublicAccessStatus.LockedOut: - _logger.Debug("Current member is locked out, redirect to error page"); + _logger.LogDebug("Current member is locked out, redirect to error page"); SetPublishedContentAsOtherPage(request, publicAccessAttempt.Result.NoAccessNodeId); break; case PublicAccessStatus.NotApproved: - _logger.Debug("Current member is unapproved, redirect to error page"); + _logger.LogDebug("Current member is unapproved, redirect to error page"); SetPublishedContentAsOtherPage(request, publicAccessAttempt.Result.NoAccessNodeId); break; case PublicAccessStatus.AccessAccepted: - _logger.Debug("Current member has access"); + _logger.LogDebug("Current member has access"); break; } } else { - _logger.Debug("EnsurePublishedContentAccess: Page is not protected"); + _logger.LogDebug("EnsurePublishedContentAccess: Page is not protected"); } } @@ -637,7 +638,7 @@ namespace Umbraco.Web.Routing if (request.HasTemplate) { - _logger.Debug("FindTemplate: Has a template already, and no alternate template."); + _logger.LogDebug("FindTemplate: Has a template already, and no alternate template."); return; } @@ -659,8 +660,8 @@ namespace Umbraco.Web.Routing // ignore if the alias does not match - just trace if (request.HasTemplate) - _logger.Debug("FindTemplate: Has a template already, but also an alternative template."); - _logger.Debug("FindTemplate: Look for alternative template alias={AltTemplate}", altTemplate); + _logger.LogDebug("FindTemplate: Has a template already, but also an alternative template."); + _logger.LogDebug("FindTemplate: Look for alternative template alias={AltTemplate}", altTemplate); // IsAllowedTemplate deals both with DisableAlternativeTemplates and ValidateAlternativeTemplates settings if (request.PublishedContent.IsAllowedTemplate( @@ -676,16 +677,16 @@ namespace Umbraco.Web.Routing if (template != null) { request.TemplateModel = template; - _logger.Debug("FindTemplate: Got alternative template id={TemplateId} alias={TemplateAlias}", template.Id, template.Alias); + _logger.LogDebug("FindTemplate: Got alternative template id={TemplateId} alias={TemplateAlias}", template.Id, template.Alias); } else { - _logger.Debug("FindTemplate: The alternative template with alias={AltTemplate} does not exist, ignoring.", altTemplate); + _logger.LogDebug("FindTemplate: The alternative template with alias={AltTemplate} does not exist, ignoring.", altTemplate); } } else { - _logger.LogWarning("FindTemplate: Alternative template {TemplateAlias} is not allowed on node {NodeId}, ignoring.", altTemplate, request.PublishedContent.Id); + _logger.LogWarning("FindTemplate: Alternative template {TemplateAlias} is not allowed on node {NodeId}, ignoring.", altTemplate, request.PublishedContent.Id); // no allowed, back to default var templateId = request.PublishedContent.TemplateId; @@ -695,7 +696,7 @@ namespace Umbraco.Web.Routing if (request.HasTemplate == false) { - _logger.Debug("FindTemplate: No template was found."); + _logger.LogDebug("FindTemplate: No template was found."); // initial idea was: if we're not already 404 and UmbracoSettings.HandleMissingTemplateAs404 is true // then reset _pcr.Document to null to force a 404. @@ -708,7 +709,7 @@ namespace Umbraco.Web.Routing } else { - _logger.Debug("FindTemplate: Running with template id={TemplateId} alias={TemplateAlias}", request.TemplateModel.Id, request.TemplateModel.Alias); + _logger.LogDebug("FindTemplate: Running with template id={TemplateId} alias={TemplateAlias}", request.TemplateModel.Id, request.TemplateModel.Alias); } } @@ -716,11 +717,11 @@ namespace Umbraco.Web.Routing { if (templateId.HasValue == false || templateId.Value == default) { - _logger.Debug("GetTemplateModel: No template."); + _logger.LogDebug("GetTemplateModel: No template."); return null; } - _logger.Debug("GetTemplateModel: Get template id={TemplateId}", templateId); + _logger.LogDebug("GetTemplateModel: Get template id={TemplateId}", templateId); if (templateId == null) throw new InvalidOperationException("The template is not set, the page cannot render."); @@ -728,7 +729,7 @@ namespace Umbraco.Web.Routing var template = _fileService.GetTemplate(templateId.Value); if (template == null) throw new InvalidOperationException("The template with Id " + templateId + " does not exist, the page cannot render."); - _logger.Debug("GetTemplateModel: Got template id={TemplateId} alias={TemplateAlias}", template.Id, template.Alias); + _logger.LogDebug("GetTemplateModel: Got template id={TemplateId} alias={TemplateAlias}", template.Id, template.Alias); return template; } From 4a9cc9e4576276923397eec6b83487f435af87e8 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 09:12:29 +0200 Subject: [PATCH 09/85] Add more logging fixes --- .../Composing/ComponentCollection.cs | 16 +++++++++------- src/Umbraco.Core/Scheduling/KeepAlive.cs | 18 ++++++++++-------- src/Umbraco.Core/Scheduling/TempFileCleanup.cs | 12 +++++++----- .../LuceneIndexDiagnosticsFactory.cs | 4 ++-- 4 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/Umbraco.Core/Composing/ComponentCollection.cs b/src/Umbraco.Core/Composing/ComponentCollection.cs index a0c02c191b..752fbf8614 100644 --- a/src/Umbraco.Core/Composing/ComponentCollection.cs +++ b/src/Umbraco.Core/Composing/ComponentCollection.cs @@ -12,22 +12,24 @@ namespace Umbraco.Core.Composing { private const int LogThresholdMilliseconds = 100; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _profilingLogger; + private readonly ILogger _logger; - public ComponentCollection(IEnumerable items, IProfilingLogger logger) + public ComponentCollection(IEnumerable items, IProfilingLogger profilingLogger, ILogger logger) : base(items) { + _profilingLogger = profilingLogger; _logger = logger; } public void Initialize() { - using (_logger.DebugDuration($"Initializing. (log components when >{LogThresholdMilliseconds}ms)", "Initialized.")) + using (_profilingLogger.DebugDuration($"Initializing. (log components when >{LogThresholdMilliseconds}ms)", "Initialized.")) { foreach (var component in this) { var componentType = component.GetType(); - using (_logger.DebugDuration($"Initializing {componentType.FullName}.", $"Initialized {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) + using (_profilingLogger.DebugDuration($"Initializing {componentType.FullName}.", $"Initialized {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) { component.Initialize(); } @@ -37,12 +39,12 @@ namespace Umbraco.Core.Composing public void Terminate() { - using (_logger.DebugDuration($"Terminating. (log components when >{LogThresholdMilliseconds}ms)", "Terminated.")) + using (_profilingLogger.DebugDuration($"Terminating. (log components when >{LogThresholdMilliseconds}ms)", "Terminated.")) { foreach (var component in this.Reverse()) // terminate components in reverse order { var componentType = component.GetType(); - using (_logger.DebugDuration($"Terminating {componentType.FullName}.", $"Terminated {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) + using (_profilingLogger.DebugDuration($"Terminating {componentType.FullName}.", $"Terminated {componentType.FullName}.", thresholdMilliseconds: LogThresholdMilliseconds)) { try { @@ -51,7 +53,7 @@ namespace Umbraco.Core.Composing } catch (Exception ex) { - _logger.LogError(ex, "Error while terminating component {ComponentType}.", componentType.FullName); + _logger.LogError(ex, "Error while terminating component {ComponentType}.", componentType.FullName); } } } diff --git a/src/Umbraco.Core/Scheduling/KeepAlive.cs b/src/Umbraco.Core/Scheduling/KeepAlive.cs index 513bc31b35..727c75326e 100644 --- a/src/Umbraco.Core/Scheduling/KeepAlive.cs +++ b/src/Umbraco.Core/Scheduling/KeepAlive.cs @@ -14,18 +14,20 @@ namespace Umbraco.Web.Scheduling private readonly IRequestAccessor _requestAccessor; private readonly IMainDom _mainDom; private readonly IKeepAliveSettings _keepAliveSettings; - private readonly IProfilingLogger _logger; + private readonly ILogger _logger; + private readonly ProfilingLogger _profilingLogger; private readonly IServerRegistrar _serverRegistrar; private static HttpClient _httpClient; public KeepAlive(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IRequestAccessor requestAccessor, IMainDom mainDom, IKeepAliveSettings keepAliveSettings, IProfilingLogger logger, IServerRegistrar serverRegistrar) + IRequestAccessor requestAccessor, IMainDom mainDom, IKeepAliveSettings keepAliveSettings, ILogger logger, ProfilingLogger profilingLogger, IServerRegistrar serverRegistrar) : base(runner, delayMilliseconds, periodMilliseconds) { _requestAccessor = requestAccessor; _mainDom = mainDom; _keepAliveSettings = keepAliveSettings; _logger = logger; + _profilingLogger = profilingLogger; _serverRegistrar = serverRegistrar; if (_httpClient == null) _httpClient = new HttpClient(); @@ -37,21 +39,21 @@ namespace Umbraco.Web.Scheduling switch (_serverRegistrar.GetCurrentServerRole()) { case ServerRole.Replica: - _logger.Debug("Does not run on replica servers."); + _logger.LogDebug("Does not run on replica servers."); return true; // role may change! case ServerRole.Unknown: - _logger.Debug("Does not run on servers with unknown role."); + _logger.LogDebug("Does not run on servers with unknown role."); return true; // role may change! } // ensure we do not run if not main domain, but do NOT lock it if (_mainDom.IsMainDom == false) { - _logger.Debug("Does not run if not MainDom."); + _logger.LogDebug("Does not run if not MainDom."); return false; // do NOT repeat, going down } - using (_logger.DebugDuration("Keep alive executing", "Keep alive complete")) + using (_profilingLogger.DebugDuration("Keep alive executing", "Keep alive complete")) { var keepAlivePingUrl = _keepAliveSettings.KeepAlivePingUrl; try @@ -61,7 +63,7 @@ namespace Umbraco.Web.Scheduling var umbracoAppUrl = _requestAccessor.GetApplicationUrl().ToString(); if (umbracoAppUrl.IsNullOrWhiteSpace()) { - _logger.LogWarning("No umbracoApplicationUrl for service (yet), skip."); + _logger.LogWarning("No umbracoApplicationUrl for service (yet), skip."); return true; // repeat } @@ -73,7 +75,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.LogError(ex, "Keep alive failed (at '{keepAlivePingUrl}').", keepAlivePingUrl); + _logger.LogError(ex, "Keep alive failed (at '{keepAlivePingUrl}').", keepAlivePingUrl); } } diff --git a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs index 5651efea10..acd4b93769 100644 --- a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs +++ b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs @@ -15,11 +15,12 @@ namespace Umbraco.Web.Scheduling private readonly DirectoryInfo[] _tempFolders; private readonly TimeSpan _age; private readonly IMainDom _mainDom; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _profilingLogger; + private readonly ILogger _logger; public TempFileCleanup(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, IEnumerable tempFolders, TimeSpan age, - IMainDom mainDom, IProfilingLogger logger) + IMainDom mainDom, IProfilingLogger profilingLogger, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { //SystemDirectories.TempFileUploads @@ -27,6 +28,7 @@ namespace Umbraco.Web.Scheduling _tempFolders = tempFolders.ToArray(); _age = age; _mainDom = mainDom; + _profilingLogger = profilingLogger; _logger = logger; } @@ -35,7 +37,7 @@ namespace Umbraco.Web.Scheduling // ensure we do not run if not main domain if (_mainDom.IsMainDom == false) { - _logger.Debug("Does not run if not MainDom."); + _logger.LogDebug("Does not run if not MainDom."); return false; // do NOT repeat, going down } @@ -50,7 +52,7 @@ namespace Umbraco.Web.Scheduling dir.Refresh(); //in case it's changed during runtime if (!dir.Exists) { - _logger.Debug("The cleanup folder doesn't exist {Folder}", dir.FullName); + _logger.LogDebug("The cleanup folder doesn't exist {Folder}", dir.FullName); return; } @@ -66,7 +68,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.LogError(ex, "Could not delete temp file {FileName}", file.FullName); + _logger.LogError(ex, "Could not delete temp file {FileName}", file.FullName); } } } diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs index 9141f7f6dd..16e3ee4d9a 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs @@ -12,10 +12,10 @@ namespace Umbraco.Examine /// public class LuceneIndexDiagnosticsFactory : IndexDiagnosticsFactory { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IHostingEnvironment _hostingEnvironment; - public LuceneIndexDiagnosticsFactory(ILogger logger, IHostingEnvironment hostingEnvironment) + public LuceneIndexDiagnosticsFactory(ILogger logger, IHostingEnvironment hostingEnvironment) { _logger = logger; _hostingEnvironment = hostingEnvironment; From f22e4ac9ba3246dbf1ef4974c1761463d65a5118 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 09:37:25 +0200 Subject: [PATCH 10/85] Add more injection into UmbracoIndexCreator and UmbracoMemerIndex --- .../UmbracoIndexesCreator.cs | 16 ++++++++++++++++ src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs | 4 +++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs index 4bb14a3a08..167c1addc1 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs @@ -23,6 +23,8 @@ namespace Umbraco.Examine public UmbracoIndexesCreator( ITypeFinder typeFinder, IProfilingLogger profilingLogger, + ILogger contentIndexLogger, ILogger examineIndexLogger, + ILogger examineIndexDiagnosticsLogger, ILocalizationService languageService, IPublicAccessService publicAccessService, IMemberService memberService, @@ -33,6 +35,9 @@ namespace Umbraco.Examine ILuceneDirectoryFactory directoryFactory) : base(typeFinder, hostingEnvironment, settings) { ProfilingLogger = profilingLogger ?? throw new System.ArgumentNullException(nameof(profilingLogger)); + ContentIndexLogger = contentIndexLogger; + ExamineIndexLogger = examineIndexLogger; + ExamineIndexDiagnosticsLogger = examineIndexDiagnosticsLogger; LanguageService = languageService ?? throw new System.ArgumentNullException(nameof(languageService)); PublicAccessService = publicAccessService ?? throw new System.ArgumentNullException(nameof(publicAccessService)); MemberService = memberService ?? throw new System.ArgumentNullException(nameof(memberService)); @@ -43,6 +48,9 @@ namespace Umbraco.Examine } protected IProfilingLogger ProfilingLogger { get; } + protected ILogger ContentIndexLogger { get; } + protected ILogger ExamineIndexLogger { get; } + protected ILogger ExamineIndexDiagnosticsLogger { get; } protected IHostingEnvironment HostingEnvironment { get; } protected IRuntimeState RuntimeState { get; } protected ILuceneDirectoryFactory DirectoryFactory { get; } @@ -73,6 +81,9 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, + ContentIndexLogger, + ExamineIndexLogger, + ExamineIndexDiagnosticsLogger, HostingEnvironment, RuntimeState, LanguageService, @@ -89,6 +100,9 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30), ProfilingLogger, + ContentIndexLogger, + ExamineIndexLogger, + ExamineIndexDiagnosticsLogger, HostingEnvironment, RuntimeState, LanguageService, @@ -104,6 +118,8 @@ namespace Umbraco.Examine DirectoryFactory.CreateDirectory(Constants.UmbracoIndexes.MembersIndexPath), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, + ExamineIndexLogger, + ExamineIndexDiagnosticsLogger, HostingEnvironment, RuntimeState, UmbracoIndexConfig.GetMemberValueSetValidator() diff --git a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs index 12678fa00a..2c64e4c650 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs @@ -31,10 +31,12 @@ namespace Umbraco.Examine Directory luceneDirectory, Analyzer analyzer, IProfilingLogger profilingLogger, + ILogger indexLogger, + ILogger indexDiagnosticsLogger, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, IValueSetValidator validator = null) : - base(name, luceneDirectory, fieldDefinitions, analyzer, profilingLogger, hostingEnvironment, runtimeState, validator) + base(name, luceneDirectory, fieldDefinitions, analyzer, profilingLogger, indexLogger, indexDiagnosticsLogger, hostingEnvironment, runtimeState, validator) { } From 90a16f49c7bbef07886e90eed00d31c3cd6bd5a7 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 10:03:56 +0200 Subject: [PATCH 11/85] Fix up some tests --- .../Compose/NotificationsComponent.cs | 2 +- .../Migrations/MigrationExpressionBase.cs | 8 ++-- .../ContainerTests.cs | 4 +- .../Implementations/TestHelper.cs | 6 ++- .../Testing/UmbracoIntegrationTest.cs | 2 +- .../Umbraco.Core/Composing/TypeFinderTests.cs | 10 ++++- .../Components/ComponentTests.cs | 44 +++++++++---------- 7 files changed, 42 insertions(+), 34 deletions(-) diff --git a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs index 9cdea0d5ec..2ddc5e1289 100644 --- a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs @@ -218,7 +218,7 @@ namespace Umbraco.Web.Compose //if there is no current user, then use the admin if (user == null) { - _logger.LogDebug("There is no current Umbraco user logged in, the notifications will be sent from the administrator", TODO); + _logger.LogDebug("There is no current Umbraco user logged in, the notifications will be sent from the administrator"); user = _userService.GetUserById(Constants.Security.SuperUserId); if (user == null) { diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs index 42d2338eaa..199937d02e 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs @@ -55,7 +55,7 @@ namespace Umbraco.Core.Migrations if (string.IsNullOrWhiteSpace(sql)) { - LoggerExtensions.LogInformation(Logger, "SQL [{ContextIndex}]: ", Context.Index); + Logger.LogInformation("SQL [{ContextIndex}]: ", Context.Index); } else { @@ -96,11 +96,11 @@ namespace Umbraco.Core.Migrations if (sql == null) { - Logger.LogInformation($"SQL [{Context.Index}]: ", TODO); + Logger.LogInformation($"SQL [{Context.Index}]: "); } else { - Logger.LogInformation($"SQL [{Context.Index}]: {sql.ToText()}", TODO); + Logger.LogInformation($"SQL [{Context.Index}]: {sql.ToText()}"); Database.Execute(sql); } @@ -116,7 +116,7 @@ namespace Umbraco.Core.Migrations private void ExecuteStatement(StringBuilder stmtBuilder) { var stmt = stmtBuilder.ToString(); - LoggerExtensions.LogInformation(Logger, "SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); + Logger.LogInformation("SQL [{ContextIndex}]: {Sql}", Context.Index, stmt); Database.Execute(stmt); stmtBuilder.Clear(); } diff --git a/src/Umbraco.Tests.Integration/ContainerTests.cs b/src/Umbraco.Tests.Integration/ContainerTests.cs index 3ba3c31d03..699c523b0c 100644 --- a/src/Umbraco.Tests.Integration/ContainerTests.cs +++ b/src/Umbraco.Tests.Integration/ContainerTests.cs @@ -44,8 +44,8 @@ namespace Umbraco.Tests.Integration // Register in the container var composition = new Composition(umbracoContainer, typeLoader, - testHelper.Logger, runtimeState, testHelper.GetConfigs(), testHelper.IOHelper, testHelper.AppCaches); - composition.RegisterEssentials(testHelper.Logger, testHelper.Profiler, testHelper.Logger, testHelper.MainDom, + testHelper.ProfilingLogger, runtimeState, testHelper.GetConfigs(), testHelper.IOHelper, testHelper.AppCaches); + composition.RegisterEssentials(testHelper.Logger, testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(), testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo()); diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index a5a4f0415c..a33e264acb 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -55,7 +55,8 @@ namespace Umbraco.Tests.Integration.Implementations _hostingLifetime = new AspNetCoreApplicationShutdownRegistry(Mock.Of()); - Logger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); + Logger = new ConsoleLogger(new MessageTemplates()); + ProfilingLogger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); } @@ -91,7 +92,8 @@ namespace Umbraco.Tests.Integration.Implementations public AppCaches AppCaches { get; } = new AppCaches(NoAppCache.Instance, NoAppCache.Instance, new IsolatedCaches(type => NoAppCache.Instance)); - public IProfilingLogger Logger { get; private set; } + public ILogger Logger { get; private set; } + public IProfilingLogger ProfilingLogger { get; private set; } public IProfiler Profiler { get; } = new VoidProfiler(); diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 173bf8127b..b7c7a6d607 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -295,7 +295,7 @@ namespace Umbraco.Tests.Integration.Testing /// /// private void InstallTestLocalDb( - IUmbracoDatabaseFactory databaseFactory, IProfilingLogger logger, IGlobalSettings globalSettings, + IUmbracoDatabaseFactory databaseFactory, ILogger logger, IGlobalSettings globalSettings, IRuntimeState runtimeState, string workingDirectory, out string connectionString) { connectionString = null; diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index 7f7a67dacc..bd9a3c7632 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -39,7 +39,7 @@ namespace Umbraco.Tests.Composing [Test] public void Find_Class_Of_Type_With_Attribute() { - var typeFinder = new TypeFinder(GetTestProfilingLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder = new TypeFinder(GetLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var typesFound = typeFinder.FindClassesOfTypeWithAttribute(_assemblies); Assert.AreEqual(2, typesFound.Count()); } @@ -47,7 +47,7 @@ namespace Umbraco.Tests.Composing [Test] public void Find_Classes_With_Attribute() { - var typeFinder = new TypeFinder(GetTestProfilingLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder = new TypeFinder(GetLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var typesFound = typeFinder.FindClassesWithAttribute(_assemblies); Assert.AreEqual(0, typesFound.Count()); // 0 classes in _assemblies are marked with [Tree] @@ -65,6 +65,12 @@ namespace Umbraco.Tests.Composing return new ProfilingLogger(logger, profiler); } + private static ILogger GetLogger() + { + // TODO: return some sort of actual logger. + return new NullLogger(); + } + [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public class MyTestAttribute : Attribute { diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index a20b220940..6227ce00f6 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -56,7 +56,7 @@ namespace Umbraco.Tests.Components private static TypeLoader MockTypeLoader() { var ioHelper = TestHelper.IOHelper; - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); } public static IRuntimeState MockRuntimeState(RuntimeLevel level) @@ -74,7 +74,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - goes away with RuntimeLevel.Unknown @@ -113,7 +113,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - stays with RuntimeLevel.Run @@ -129,7 +129,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 21 is required by 20 // => reorder components accordingly @@ -144,7 +144,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // i23 requires 22 // 24, 25 implement i23 @@ -161,7 +161,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); try { @@ -184,7 +184,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 13 is required by 1 @@ -220,7 +220,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer1), typeof(Composer5), typeof(Composer5a) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Assert.IsEmpty(Composed); composers.Compose(); @@ -246,7 +246,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer7), typeof(Composer8) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -261,7 +261,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -279,7 +279,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); var builder = composition.WithCollectionBuilder(); @@ -298,32 +298,32 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer10) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); Assert.AreEqual(typeof(Composer10), Composed[0]); types = new[] { typeof(Composer11) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); var requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer2) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer12) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); @@ -337,7 +337,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer8) }; // 8 disables 7 which is not in the list - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -353,13 +353,13 @@ namespace Umbraco.Tests.Components var types = new[] { typeof(Composer26) }; var enableDisableAttributes = new[] { new DisableComposerAttribute(typeof(Composer26)) }; - var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of()); + var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(0, Composed.Count); // 26 gone types = new[] { typeof(Composer26), typeof(Composer27) }; // 26 disabled by assembly attribute, enabled by 27 - composers = new Composers(composition, types, enableDisableAttributes, Mock.Of()); + composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); // both @@ -372,7 +372,7 @@ namespace Umbraco.Tests.Components { var ioHelper = TestHelper.IOHelper; var typeFinder = TestHelper.GetTypeFinder(); - var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of()); + var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); var register = MockRegister(); var composition = new Composition(register, typeLoader, Mock.Of(), @@ -380,7 +380,7 @@ namespace Umbraco.Tests.Components var allComposers = typeLoader.GetTypes().ToList(); var types = allComposers.Where(x => x.FullName.StartsWith("Umbraco.Core.") || x.FullName.StartsWith("Umbraco.Web")).ToList(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); var requirements = composers.GetRequirements(); var report = Composers.GetComposersReport(requirements); Console.WriteLine(report); From 9fa4319940e1d84ca3ca7f361125cacea1b7c4c3 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 10:06:17 +0200 Subject: [PATCH 12/85] Remove some TODO --- .../V_8_0_0/DataTypes/PreValueMigratorCollection.cs | 2 +- src/Umbraco.Infrastructure/Suspendable.cs | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs index af735b8d01..e10c5e8538 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs @@ -13,7 +13,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes : base(items) { _logger = logger; - _logger.LogDebug("Migrators: " + string.Join(", ", items.Select(x => x.GetType().Name)), TODO); + _logger.LogDebug("Migrators: " + string.Join(", ", items.Select(x => x.GetType().Name))); } public IPreValueMigrator GetMigrator(string editorAlias) diff --git a/src/Umbraco.Infrastructure/Suspendable.cs b/src/Umbraco.Infrastructure/Suspendable.cs index 14582dd56a..65ac036826 100644 --- a/src/Umbraco.Infrastructure/Suspendable.cs +++ b/src/Umbraco.Infrastructure/Suspendable.cs @@ -30,7 +30,7 @@ namespace Umbraco.Web public static void SuspendDocumentCache() { - Current.Logger.LogInformation("Suspend document cache.", TODO); + Current.Logger.LogInformation("Suspend document cache."); _suspended = true; } @@ -66,7 +66,7 @@ namespace Umbraco.Web public static void SuspendIndexers(ILogger logger) { - logger.LogInformation("Suspend indexers.", TODO); + logger.LogInformation("Suspend indexers."); _suspended = true; } @@ -91,13 +91,13 @@ namespace Umbraco.Web public static void Suspend() { - Current.Logger.LogInformation("Suspend scheduled publishing.", TODO); + Current.Logger.LogInformation("Suspend scheduled publishing."); _suspended = true; } public static void Resume() { - Current.Logger.LogInformation("Resume scheduled publishing.", TODO); + Current.Logger.LogInformation("Resume scheduled publishing."); _suspended = false; } } From 0238d6eb025a76645e662eacb9d1fc2eff2d2fce Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 12:40:35 +0200 Subject: [PATCH 13/85] Start using LoggerFactory --- src/Umbraco.Core/Composing/TypeLoader.cs | 11 +++++--- src/Umbraco.Core/Umbraco.Core.csproj | 1 + .../Examine/IndexRebuilder.cs | 8 +++--- .../DataTypes/PreValueMigratorCollection.cs | 6 ++--- .../PublishedContentTypeCache.cs | 8 +++--- .../Runtime/CoreRuntime.cs | 16 ++++++++---- .../Scheduling/HealthCheckNotifier.cs | 15 ++++++----- .../Scheduling/LogScrubber.cs | 16 ++++++------ src/Umbraco.Infrastructure/Suspendable.cs | 4 +-- .../ContentStore.cs | 25 ++++++++++--------- .../PublishedSnapshotService.cs | 20 ++++++++------- .../Testing/UmbracoIntegrationTest.cs | 2 +- .../PublishedContentSnapshotTestBase.cs | 6 ++--- .../PublishedContent/PublishedContentTests.cs | 6 ++--- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 ++- .../TestHelpers/BaseUsingSqlCeSyntax.cs | 1 + src/Umbraco.Tests/TestHelpers/BaseWebTest.cs | 1 + .../Testing/TestingTests/MockTests.cs | 5 ++-- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 18 ++++++------- .../UmbracoExamine/IndexInitializer.cs | 12 +++++++-- src/Umbraco.Tests/Web/UmbracoHelperTests.cs | 1 + .../Macros/MacroRenderer.cs | 13 ++++++---- 22 files changed, 119 insertions(+), 80 deletions(-) diff --git a/src/Umbraco.Core/Composing/TypeLoader.cs b/src/Umbraco.Core/Composing/TypeLoader.cs index 89ce7de28e..70f565c875 100644 --- a/src/Umbraco.Core/Composing/TypeLoader.cs +++ b/src/Umbraco.Core/Composing/TypeLoader.cs @@ -1,4 +1,5 @@ -using System; + +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -11,6 +12,8 @@ using Umbraco.Core.Collections; using Umbraco.Core.IO; using Umbraco.Core.Logging; using File = System.IO.File; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Composing { @@ -28,7 +31,7 @@ namespace Umbraco.Core.Composing private const string CacheKey = "umbraco-types.list"; private readonly IAppPolicyCache _runtimeCache; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _profilingLogger; private readonly Dictionary _types = new Dictionary(); @@ -52,7 +55,7 @@ namespace Umbraco.Core.Composing /// Files storage location. /// A profiling logger. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, IEnumerable assembliesToScan = null) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, IEnumerable assembliesToScan = null) : this(typeFinder, runtimeCache, localTempPath, logger, profilingLogger, true, assembliesToScan) { } @@ -65,7 +68,7 @@ namespace Umbraco.Core.Composing /// A profiling logger. /// Whether to detect changes using hashes. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, bool detectChanges, IEnumerable assembliesToScan = null) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, bool detectChanges, IEnumerable assembliesToScan = null) { TypeFinder = typeFinder ?? throw new ArgumentNullException(nameof(typeFinder)); _runtimeCache = runtimeCache ?? throw new ArgumentNullException(nameof(runtimeCache)); diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index b5e553a78e..c8342ee716 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -15,6 +15,7 @@ + diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index 7cf0106903..aad1b307e6 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -14,12 +14,14 @@ namespace Umbraco.Examine /// public class IndexRebuilder { - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; private readonly IEnumerable _populators; public IExamineManager ExamineManager { get; } - public IndexRebuilder(IProfilingLogger logger, IExamineManager examineManager, IEnumerable populators) + public IndexRebuilder(IProfilingLogger pLogger, ILogger logger, IExamineManager examineManager, IEnumerable populators) { + _pLogger = pLogger; _populators = populators; _logger = logger; ExamineManager = examineManager; @@ -65,7 +67,7 @@ namespace Umbraco.Examine } catch (Exception e) { - _logger.LogError(e, "Index populating failed for populator {Populator}", populator.GetType()); + _logger.LogError("Index populating failed for populator {Populator}", populator.GetType()); } } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs index e10c5e8538..25730abcac 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs @@ -7,9 +7,9 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes { public class PreValueMigratorCollection : BuilderCollectionBase { - private readonly ILogger _logger; + private readonly ILogger _logger; - public PreValueMigratorCollection(IEnumerable items, ILogger logger) + public PreValueMigratorCollection(IEnumerable items, ILogger logger) : base(items) { _logger = logger; @@ -19,7 +19,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes public IPreValueMigrator GetMigrator(string editorAlias) { var migrator = this.FirstOrDefault(x => x.CanMigrate(editorAlias)); - _logger.Debug("Getting migrator for \"{EditorAlias}\" = {MigratorType}", editorAlias, migrator == null ? "" : migrator.GetType().Name); + _logger.LogDebug("Getting migrator for \"{EditorAlias}\" = {MigratorType}", editorAlias, migrator == null ? "" : migrator.GetType().Name); return migrator; } } diff --git a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs index c6196aeca8..6ca37e6979 100644 --- a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs +++ b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs @@ -6,6 +6,8 @@ using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.PublishedCache { @@ -23,11 +25,11 @@ namespace Umbraco.Web.PublishedCache private readonly IMediaTypeService _mediaTypeService; private readonly IMemberTypeService _memberTypeService; private readonly IPublishedContentTypeFactory _publishedContentTypeFactory; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ReaderWriterLockSlim _lock = new ReaderWriterLockSlim(); // default ctor - public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) + public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) { _contentTypeService = contentTypeService; _mediaTypeService = mediaTypeService; @@ -37,7 +39,7 @@ namespace Umbraco.Web.PublishedCache } // for unit tests ONLY - internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) + internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) { _logger = logger; _publishedContentTypeFactory = publishedContentTypeFactory; diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index eef0cc379a..4e369336d0 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -26,6 +26,8 @@ namespace Umbraco.Core.Runtime private IFactory _factory; // runtime state, this instance will get replaced again once the essential services are available to run the check private RuntimeState _state = RuntimeState.Booting(); + private readonly ILogger _typeLoaderLogger; + private readonly ILogger _composerLogger; private readonly IUmbracoBootPermissionChecker _umbracoBootPermissionChecker; private readonly IGlobalSettings _globalSettings; private readonly IConnectionStrings _connectionStrings; @@ -35,6 +37,8 @@ namespace Umbraco.Core.Runtime IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, + ILogger typeLoaderLogger, + ILogger composerLogger, IProfiler profiler, IUmbracoBootPermissionChecker umbracoBootPermissionChecker, IHostingEnvironment hostingEnvironment, @@ -53,6 +57,8 @@ namespace Umbraco.Core.Runtime BackOfficeInfo = backOfficeInfo; DbProviderFactoryCreator = dbProviderFactoryCreator; + _typeLoaderLogger = typeLoaderLogger; + _composerLogger = composerLogger; _umbracoBootPermissionChecker = umbracoBootPermissionChecker; Logger = logger; @@ -67,7 +73,7 @@ namespace Umbraco.Core.Runtime /// /// Gets the logger. /// - protected ILogger Logger { get; } + public ILogger Logger { get; } protected IBackOfficeInfo BackOfficeInfo { get; } @@ -165,7 +171,7 @@ namespace Umbraco.Core.Runtime var databaseFactory = CreateDatabaseFactory(); // type finder/loader - var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), ProfilingLogger); + var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), _typeLoaderLogger, ProfilingLogger); // re-create the state object with the essential services _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, Logger); @@ -285,7 +291,7 @@ namespace Umbraco.Core.Runtime enableDisableAttributes = typeLoader.GetAssemblyAttributes(typeof(EnableComposerAttribute), typeof(DisableComposerAttribute)); } - var composers = new Composers(composition, composerTypes, enableDisableAttributes, ProfilingLogger); + var composers = new Composers(composition, composerTypes, enableDisableAttributes, _composerLogger, ProfilingLogger); composers.Compose(); } @@ -313,11 +319,11 @@ namespace Umbraco.Core.Runtime { _state.DetermineRuntimeLevel(); - ProfilingLogger.Debug("Runtime level: {RuntimeLevel} - {RuntimeLevelReason}", _state.Level, _state.Reason); + Logger.LogDebug("Runtime level: {RuntimeLevel} - {RuntimeLevelReason}", _state.Level, _state.Reason); if (_state.Level == RuntimeLevel.Upgrade) { - ProfilingLogger.Debug("Configure database factory for upgrades."); + Logger.LogDebug("Configure database factory for upgrades."); databaseFactory.ConfigureForUpgrade(); } } diff --git a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs index adae7b3828..8b2213134c 100644 --- a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs +++ b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs @@ -16,7 +16,8 @@ namespace Umbraco.Web.Scheduling private readonly HealthCheckCollection _healthChecks; private readonly HealthCheckNotificationMethodCollection _notifications; private readonly IScopeProvider _scopeProvider; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; private readonly IHealthChecksSettings _healthChecksSettingsConfig; private readonly IServerRegistrar _serverRegistrar; private readonly IRuntimeState _runtimeState; @@ -28,7 +29,8 @@ namespace Umbraco.Web.Scheduling HealthCheckCollection healthChecks, HealthCheckNotificationMethodCollection notifications, IMainDom mainDom, - IProfilingLogger logger, + IProfilingLogger pLogger, + ILogger logger, IHealthChecksSettings healthChecksSettingsConfig, IServerRegistrar serverRegistrar, IRuntimeState runtimeState, @@ -40,6 +42,7 @@ namespace Umbraco.Web.Scheduling _mainDom = mainDom; _scopeProvider = scopeProvider; _runtimeState = runtimeState; + _pLogger = pLogger; _logger = logger; _healthChecksSettingsConfig = healthChecksSettingsConfig; _serverRegistrar = serverRegistrar; @@ -54,17 +57,17 @@ namespace Umbraco.Web.Scheduling switch (_serverRegistrar.GetCurrentServerRole()) { case ServerRole.Replica: - _logger.Debug("Does not run on replica servers."); + _logger.LogDebug("Does not run on replica servers."); return true; // DO repeat, server role can change case ServerRole.Unknown: - _logger.Debug("Does not run on servers with unknown role."); + _logger.LogDebug("Does not run on servers with unknown role."); return true; // DO repeat, server role can change } // ensure we do not run if not main domain, but do NOT lock it if (_mainDom.IsMainDom == false) { - _logger.Debug("Does not run if not MainDom."); + _logger.LogDebug("Does not run if not MainDom."); return false; // do NOT repeat, going down } @@ -72,7 +75,7 @@ namespace Umbraco.Web.Scheduling // checks can be making service/database calls so we want to ensure the CallContext/Ambient scope // isn't used since that can be problematic. using (var scope = _scopeProvider.CreateScope()) - using (_logger.DebugDuration("Health checks executing", "Health checks complete")) + using (_pLogger.DebugDuration("Health checks executing", "Health checks complete")) { var healthCheckConfig = _healthChecksSettingsConfig; diff --git a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs index 22df19cb2a..bbd6a9c1a5 100644 --- a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs +++ b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs @@ -15,11 +15,12 @@ namespace Umbraco.Web.Scheduling private readonly IServerRegistrar _serverRegistrar; private readonly IAuditService _auditService; private readonly ILoggingSettings _settings; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; private readonly IScopeProvider _scopeProvider; public LogScrubber(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, ILoggingSettings settings, IScopeProvider scopeProvider, IProfilingLogger logger) + IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, ILoggingSettings settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { _mainDom = mainDom; @@ -27,6 +28,7 @@ namespace Umbraco.Web.Scheduling _auditService = auditService; _settings = settings; _scopeProvider = scopeProvider; + _pLogger = pLogger; _logger = logger; } @@ -41,7 +43,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.LogError(ex, "Unable to locate a log scrubbing maximum age. Defaulting to 24 hours."); + _logger.LogError(ex, "Unable to locate a log scrubbing maximum age. Defaulting to 24 hours."); } return maximumAge; @@ -58,23 +60,23 @@ namespace Umbraco.Web.Scheduling switch (_serverRegistrar.GetCurrentServerRole()) { case ServerRole.Replica: - _logger.Debug("Does not run on replica servers."); + _logger.LogDebug("Does not run on replica servers."); return true; // DO repeat, server role can change case ServerRole.Unknown: - _logger.Debug("Does not run on servers with unknown role."); + _logger.LogDebug("Does not run on servers with unknown role."); return true; // DO repeat, server role can change } // ensure we do not run if not main domain, but do NOT lock it if (_mainDom.IsMainDom == false) { - _logger.Debug("Does not run if not MainDom."); + _logger.LogDebug("Does not run if not MainDom."); return false; // do NOT repeat, going down } // Ensure we use an explicit scope since we are running on a background thread. using (var scope = _scopeProvider.CreateScope()) - using (_logger.DebugDuration("Log scrubbing executing", "Log scrubbing complete")) + using (_pLogger.DebugDuration("Log scrubbing executing", "Log scrubbing complete")) { _auditService.CleanLogs(GetLogScrubbingMaximumAge(_settings)); scope.Complete(); diff --git a/src/Umbraco.Infrastructure/Suspendable.cs b/src/Umbraco.Infrastructure/Suspendable.cs index 65ac036826..57ef386c2e 100644 --- a/src/Umbraco.Infrastructure/Suspendable.cs +++ b/src/Umbraco.Infrastructure/Suspendable.cs @@ -38,7 +38,7 @@ namespace Umbraco.Web { _suspended = false; - LoggerExtensions.LogInformation(Current.Logger, "Resume document cache (reload:{Tried}).", _tried); + Current.Logger.LogInformation("Resume document cache (reload:{Tried}).", _tried); if (_tried == false) return; _tried = false; @@ -74,7 +74,7 @@ namespace Umbraco.Web { _suspended = false; - LoggerExtensions.LogInformation(logger, "Resume indexers (rebuild:{Tried}).", _tried); + Current.Logger.LogInformation("Resume indexers (rebuild:{Tried}).", _tried); if (_tried == false) return; _tried = false; diff --git a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs index c9c6ad49d0..5a6d2bd9f7 100644 --- a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs +++ b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs @@ -5,12 +5,13 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using CSharpTest.Net.Collections; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Scoping; using Umbraco.Web.PublishedCache.NuCache.Snap; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.PublishedCache.NuCache { @@ -35,6 +36,8 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly IPublishedSnapshotAccessor _publishedSnapshotAccessor; private readonly IVariationContextAccessor _variationContextAccessor; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly ConcurrentDictionary> _contentNodes; private LinkedNode _root; @@ -46,8 +49,6 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly ConcurrentDictionary _contentTypeKeyToIdMap; private readonly ConcurrentDictionary _contentKeyToIdMap; - private readonly ILogger _logger; - private readonly ILogger _snapShotLogger; private readonly IPublishedModelFactory _publishedModelFactory; private BPlusTree _localDb; private readonly ConcurrentQueue _genObjs; @@ -68,15 +69,15 @@ namespace Umbraco.Web.PublishedCache.NuCache public ContentStore( IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, - ILogger logger, - ILogger snapShotLogger, + ILogger logger, + ILoggerFactory loggerFactory, IPublishedModelFactory publishedModelFactory, BPlusTree localDb = null) { _publishedSnapshotAccessor = publishedSnapshotAccessor; _variationContextAccessor = variationContextAccessor; _logger = logger; - _snapShotLogger = snapShotLogger; + _loggerFactory = loggerFactory; _publishedModelFactory = publishedModelFactory; _localDb = localDb; @@ -1311,7 +1312,7 @@ namespace Umbraco.Web.PublishedCache.NuCache if (_nextGen == false && _genObj != null) return new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _snapShotLogger + , _loggerFactory.CreateLogger("Snapshot") #endif ); @@ -1347,7 +1348,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshot = new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _snapShotLogger + , _loggerFactory.CreateLogger("Snapshot") #endif ); @@ -1361,7 +1362,7 @@ namespace Umbraco.Web.PublishedCache.NuCache public Snapshot LiveSnapshot => new Snapshot(this, _liveGen #if DEBUG - , _snapShotLogger + , _loggerFactory.CreateLogger("Snapshot") #endif ); @@ -1549,7 +1550,7 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly GenRef _genRef; private long _gen; #if DEBUG - private readonly ILogger _logger; + private readonly ILogger _logger; #endif //private static int _count; @@ -1557,7 +1558,7 @@ namespace Umbraco.Web.PublishedCache.NuCache internal Snapshot(ContentStore store, GenRef genRef #if DEBUG - , ILogger logger + , ILogger logger #endif ) { @@ -1575,7 +1576,7 @@ namespace Umbraco.Web.PublishedCache.NuCache internal Snapshot(ContentStore store, long gen #if DEBUG - , ILogger logger + , ILogger logger #endif ) { diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index 3ade8eb34a..335400a389 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -6,6 +6,7 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using CSharpTest.Net.Collections; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core; using Umbraco.Core.Cache; @@ -42,8 +43,8 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly IProfilingLogger _profilingLogger; private readonly IScopeProvider _scopeProvider; private readonly IDataSource _dataSource; - private readonly ILogger _logger; - private readonly ILogger _publishedContentTypeCacheLogger; + private readonly Core.Logging.ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IDocumentRepository _documentRepository; private readonly IMediaRepository _mediaRepository; private readonly IMemberRepository _memberRepository; @@ -84,7 +85,8 @@ namespace Umbraco.Web.PublishedCache.NuCache public PublishedSnapshotService(PublishedSnapshotServiceOptions options, IMainDom mainDom, IRuntimeState runtime, ServiceContext serviceContext, IPublishedContentTypeFactory publishedContentTypeFactory, IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, - IProfilingLogger profilingLogger, ILogger logger, ILogger contentLogger, ILogger snapshotLogger, ILogger publishedContentTypeCacheLogger, + IProfilingLogger profilingLogger, Core.Logging.ILogger logger, + ILoggerFactory loggerFactory, IScopeProvider scopeProvider, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, @@ -106,7 +108,7 @@ namespace Umbraco.Web.PublishedCache.NuCache _profilingLogger = profilingLogger; _dataSource = dataSource; _logger = logger; - _publishedContentTypeCacheLogger = publishedContentTypeCacheLogger; + _loggerFactory = loggerFactory; _scopeProvider = scopeProvider; _documentRepository = documentRepository; _mediaRepository = mediaRepository; @@ -152,16 +154,16 @@ namespace Umbraco.Web.PublishedCache.NuCache // figure out whether it can read the databases or it should populate them from sql _logger.LogInformation("Creating the content store, localContentDbExists? {LocalContentDbExists}", _localContentDbExists); - _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory, _localContentDb); + _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, _loggerFactory.CreateLogger("ContentStore"), _loggerFactory, publishedModelFactory, _localContentDb); _logger.LogInformation("Creating the media store, localMediaDbExists? {LocalMediaDbExists}", _localMediaDbExists); - _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory, _localMediaDb); + _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, _loggerFactory.CreateLogger("ContentStore"), _loggerFactory, publishedModelFactory, _localMediaDb); } else { _logger.LogInformation("Creating the content store (local db ignored)"); - _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory); + _contentStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, _loggerFactory.CreateLogger("ContentStore"), _loggerFactory, publishedModelFactory); _logger.LogInformation("Creating the media store (local db ignored)"); - _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, contentLogger, snapshotLogger, publishedModelFactory); + _mediaStore = new ContentStore(publishedSnapshotAccessor, variationContextAccessor, _loggerFactory.CreateLogger("ContentStore"), _loggerFactory, publishedModelFactory); } _domainStore = new SnapDictionary(); @@ -1235,7 +1237,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshotCache = new DictionaryAppCache(); - var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _publishedContentTypeCacheLogger); + var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _loggerFactory.CreateLogger("PublishedContentTypeCache")); var defaultCulture = _defaultCultureAccessor.DefaultCulture; var domainCache = new DomainCache(domainSnap, defaultCulture); diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index b7c7a6d607..28b8fa0702 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -256,7 +256,7 @@ namespace Umbraco.Tests.Integration.Testing OnTestTearDown(() => runtime.Terminate()); // This will create a db, install the schema and ensure the app is configured to run - InstallTestLocalDb(args.DatabaseFactory, runtime.ProfilingLogger, runtime.Configs.Global(), runtime.State, TestHelper.WorkingDirectory, out var connectionString); + InstallTestLocalDb(args.DatabaseFactory, runtime.Logger, runtime.Configs.Global(), runtime.State, TestHelper.WorkingDirectory, out var connectionString); TestDBConnectionString = connectionString; InMemoryConfiguration["ConnectionStrings:" + Constants.System.UmbracoConnectionName] = TestDBConnectionString; } diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index 3d9b4af526..abaf61917a 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -46,11 +46,11 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(f => new PublishedModelFactory(f.GetInstance().GetTypes(), f.GetInstance())); } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache,IProfilingLogger logger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache,IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, pLogger, hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), pLogger, false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] {typeof(PublishedContentMoreTests).Assembly}) diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index 53461d4b8f..7191d552f9 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -95,11 +95,11 @@ namespace Umbraco.Tests.PublishedContent } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IProfilingLogger logger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, pLogger, hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), pLogger, false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] { typeof(PublishedContentTests).Assembly }) diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 0bc30f4460..37a527542d 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -256,13 +256,15 @@ namespace Umbraco.Tests.Runtimes // create the very basic and essential things we need var logger = new ConsoleLogger(new MessageTemplates()); + var composerLogger = new ConsoleLogger(new MessageTemplates()); + var typeLoaderLogger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); var profilingLogger = new ProfilingLogger(logger, profiler); var appCaches = AppCaches.Disabled; var databaseFactory = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), profilingLogger); + var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), typeLoaderLogger, profilingLogger); var runtimeState = Mock.Of(); var hostingEnvironment = Mock.Of(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index 6bc228bf83..2ad52856df 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -42,6 +42,7 @@ namespace Umbraco.Tests.TestHelpers var typeFinder = TestHelper.GetTypeFinder(); var typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), + Mock.Of>(), logger, false); diff --git a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs index 8926c02182..ce305a409c 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs @@ -102,6 +102,7 @@ namespace Umbraco.Tests.TestHelpers new TestLastChanceFinder(), new TestVariationContextAccessor(), new ProfilingLogger(Mock.Of(), Mock.Of()), + Mock.Of>(), Mock.Of(), Mock.Of(), container?.GetInstance() ?? Current.Factory.GetInstance(), diff --git a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs index 6f5739eb02..bed7db4e35 100644 --- a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs +++ b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs @@ -101,14 +101,15 @@ namespace Umbraco.Tests.Testing.TestingTests [Test] public void Can_Mock_UmbracoApiController_Dependencies_With_Injected_UmbracoMapper() { - var logger = Mock.Of(); + var pLogger = Mock.Of(); + var logger = Mock.Of(); var memberService = Mock.Of(); var memberTypeService = Mock.Of(); var membershipProvider = new MembersMembershipProvider(memberService, memberTypeService, Mock.Of(), TestHelper.GetHostingEnvironment(), TestHelper.GetIpResolver()); var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, logger, ShortStringHelper, Mock.Of()); var umbracoMapper = new UmbracoMapper(new MapDefinitionCollection(new[] { Mock.Of() })); - var umbracoApiController = new FakeUmbracoApiController(Mock.Of(), Mock.Of(), Mock.Of(), ServiceContext.CreatePartial(), AppCaches.NoCache, logger, Mock.Of(), umbracoMapper, Mock.Of()); + var umbracoApiController = new FakeUmbracoApiController(Mock.Of(), Mock.Of(), Mock.Of(), ServiceContext.CreatePartial(), AppCaches.NoCache, pLogger, Mock.Of(), umbracoMapper, Mock.Of()); Assert.Pass(); } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 60dad4b464..6f57db554e 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -181,7 +181,7 @@ namespace Umbraco.Tests.Testing LocalizedTextService = new LocalizedTextService(new Dictionary>(), logger); - var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, proflogger, Options.TypeLoader); + var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, logger, proflogger, Options.TypeLoader); var register = TestHelper.GetRegister(); @@ -369,30 +369,30 @@ namespace Umbraco.Tests.Testing .ComposeCoreMappingProfiles(); } - protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, IProfilingLogger logger, UmbracoTestOptions.TypeLoader option) + protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) { switch (option) { case UmbracoTestOptions.TypeLoader.Default: - return _commonTypeLoader ?? (_commonTypeLoader = CreateCommonTypeLoader(typeFinder, runtimeCache, logger, hostingEnvironment)); + return _commonTypeLoader ?? (_commonTypeLoader = CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment)); case UmbracoTestOptions.TypeLoader.PerFixture: - return _featureTypeLoader ?? (_featureTypeLoader = CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, hostingEnvironment)); + return _featureTypeLoader ?? (_featureTypeLoader = CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment)); case UmbracoTestOptions.TypeLoader.PerTest: - return CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, hostingEnvironment); + return CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); default: throw new ArgumentOutOfRangeException(nameof(option)); } } - protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IProfilingLogger logger, IHostingEnvironment hostingEnvironment) + protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, hostingEnvironment); + return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); } // common to all tests = cannot be overriden - private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IProfilingLogger logger, IHostingEnvironment hostingEnvironment) + private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, false, new[] + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, new[] { Assembly.Load("Umbraco.Core"), Assembly.Load("Umbraco.Web"), diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index b4ff26d760..9f33e33000 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.UmbracoExamine public static MediaIndexPopulator GetMediaIndexRebuilder(PropertyEditorCollection propertyEditors, IMediaService mediaService) { - var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), GetMockLogger(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); + var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), Mock.Of(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); var mediaIndexDataSource = new MediaIndexPopulator(null, mediaService, mediaValueSetBuilder); return mediaIndexDataSource; } @@ -156,11 +156,16 @@ namespace Umbraco.Tests.UmbracoExamine return mediaTypeServiceMock.Object; } - public static IProfilingLogger GetMockLogger() + public static IProfilingLogger GetMockProfilingLogger() { return new ProfilingLogger(Mock.Of(), Mock.Of()); } + public static ILogger GetMockLogger() + { + return Mock.Of>(); + } + public static UmbracoContentIndex GetUmbracoIndexer( IProfilingLogger profilingLogger, IHostingEnvironment hostingEnvironment, @@ -185,6 +190,9 @@ namespace Umbraco.Tests.UmbracoExamine new UmbracoFieldDefinitionCollection(), analyzer, profilingLogger, + GetMockLogger(), + GetMockLogger(), + GetMockLogger(), hostingEnvironment, runtimeState, languageService, diff --git a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs index b17943e63e..80cc45a412 100644 --- a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs +++ b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs @@ -36,6 +36,7 @@ namespace Umbraco.Tests.Web typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), + Mock.Of>(), new ProfilingLogger(Mock.Of(), Mock.Of()) ) ); diff --git a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs index 1c0486c778..74d8e7726d 100644 --- a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs @@ -21,6 +21,7 @@ namespace Umbraco.Web.Macros public class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly IContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -36,6 +37,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, + ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IContentSettings contentSettings, ILocalizedTextService textService, @@ -49,6 +51,7 @@ namespace Umbraco.Web.Macros IHttpContextAccessor httpContextAccessor) { _plogger = plogger ?? throw new ArgumentNullException(nameof(plogger)); + _logger = logger; _umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor)); _contentSettings = contentSettings ?? throw new ArgumentNullException(nameof(contentSettings)); _textService = textService; @@ -111,7 +114,7 @@ namespace Umbraco.Web.Macros if (macroContent == null) return null; - _plogger.Debug("Macro content loaded from cache '{MacroCacheId}'", model.CacheIdentifier); + _logger.LogDebug("Macro content loaded from cache '{MacroCacheId}'", model.CacheIdentifier); // ensure that the source has not changed // note: does not handle dependencies, and never has @@ -120,13 +123,13 @@ namespace Umbraco.Web.Macros { if (macroSource.Exists == false) { - _plogger.Debug("Macro source does not exist anymore, ignore cache."); + _logger.LogDebug("Macro source does not exist anymore, ignore cache."); return null; } if (macroContent.Date < macroSource.LastWriteTime) { - _plogger.Debug("Macro source has changed, ignore cache."); + _logger.LogDebug("Macro source has changed, ignore cache."); return null; } } @@ -160,7 +163,7 @@ namespace Umbraco.Web.Macros new TimeSpan(0, 0, model.CacheDuration) ); - _plogger.Debug("Macro content saved to cache '{MacroCacheId}'", model.CacheIdentifier); + _logger.LogDebug("Macro content saved to cache '{MacroCacheId}'", model.CacheIdentifier); } // gets the macro source file name @@ -282,7 +285,7 @@ namespace Umbraco.Web.Macros } catch (Exception e) { - _plogger.LogWarning(e, "Failed {MsgIn}", msgIn); + _logger.LogWarning(e, "Failed {MsgIn}", msgIn); var macroErrorEventArgs = new MacroErrorEventArgs { From 44848e567ca562193c8ab71cbe410b6a279ee152 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 13:00:59 +0200 Subject: [PATCH 14/85] Use ILoggerFactory for examine stuff --- .../LuceneIndexDiagnostics.cs | 6 +++-- .../UmbracoContentIndex.cs | 15 ++++++----- .../UmbracoExamineIndex.cs | 17 +++++++----- .../UmbracoExamineIndexDiagnostics.cs | 4 ++- .../UmbracoIndexesCreator.cs | 27 ++++++++----------- .../UmbracoMemberIndex.cs | 8 +++--- 6 files changed, 43 insertions(+), 34 deletions(-) diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs index a8e185d01c..24457e2753 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs @@ -7,6 +7,8 @@ using Umbraco.Core.IO; using System.Linq; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -14,7 +16,7 @@ namespace Umbraco.Examine { private readonly IHostingEnvironment _hostingEnvironment; - public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; Index = index; @@ -22,7 +24,7 @@ namespace Umbraco.Examine } public LuceneIndex Index { get; } - public ILogger Logger { get; } + public ILogger Logger { get; } public int DocumentCount { diff --git a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs index 028adb8912..2d65a0883c 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs @@ -13,6 +13,8 @@ using Umbraco.Core.Logging; using Examine.LuceneEngine; using Umbraco.Core.Hosting; using Umbraco.Core.IO; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -21,7 +23,7 @@ namespace Umbraco.Examine /// public class UmbracoContentIndex : UmbracoExamineIndex, IUmbracoContentIndex, IDisposable { - private readonly ILogger _logger; + private readonly ILogger _logger; protected ILocalizationService LanguageService { get; } #region Constructors @@ -35,6 +37,7 @@ namespace Umbraco.Examine /// /// /// + /// /// /// /// @@ -46,15 +49,14 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, - ILogger logger, - ILogger examineIndexLogger, - ILogger examineIndexDiagnosticsLogger, + ILogger logger, + ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, ILocalizationService languageService, IContentValueSetValidator validator, IReadOnlyDictionary indexValueTypes = null) - : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, profilingLogger, examineIndexLogger, examineIndexDiagnosticsLogger ,hostingEnvironment, runtimeState, validator, indexValueTypes) + : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, profilingLogger, logger, loggerFactory ,hostingEnvironment, runtimeState, validator, indexValueTypes) { if (validator == null) throw new ArgumentNullException(nameof(validator)); _logger = logger; @@ -144,7 +146,8 @@ namespace Umbraco.Examine var filtered = c.NativeQuery(rawQuery); var results = filtered.Execute(); - _logger.LogDebug("DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); + _logger. + LogDebug("DeleteFromIndex with query: {Query} (found {TotalItems} results)", rawQuery, results.TotalItemCount); //need to queue a delete item for each one found QueueIndexOperation(results.Select(r => new IndexOperation(new ValueSet(r.Id), IndexOperationType.Delete))); diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index a04e3cd10f..ac5a3f6e56 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -13,6 +13,8 @@ using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Directory = Lucene.Net.Store.Directory; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -22,7 +24,8 @@ namespace Umbraco.Examine /// public abstract class UmbracoExamineIndex : LuceneIndex, IUmbracoIndex, IIndexDiagnostics { - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IRuntimeState _runtimeState; // note @@ -40,7 +43,8 @@ namespace Umbraco.Examine /// /// /// - /// + /// + /// /// /// /// @@ -51,15 +55,16 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, - ILogger _logger, - ILogger _examineIndexLogger, + ILogger logger, + ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, IValueSetValidator validator = null, IReadOnlyDictionary indexValueTypes = null) : base(name, luceneDirectory, fieldDefinitions, defaultAnalyzer, validator, indexValueTypes) { - this._logger = _logger; + _logger = logger; + _loggerFactory = loggerFactory; _runtimeState = runtimeState; ProfilingLogger = profilingLogger ?? throw new ArgumentNullException(nameof(profilingLogger)); @@ -67,7 +72,7 @@ namespace Umbraco.Examine if (luceneDirectory is FSDirectory fsDir) LuceneIndexFolder = fsDir.Directory; - _diagnostics = new UmbracoExamineIndexDiagnostics(this, _examineIndexLogger, hostingEnvironment); + _diagnostics = new UmbracoExamineIndexDiagnostics(this, _loggerFactory.CreateLogger("UmbracoExamineIndexDiagnostics"), hostingEnvironment); } private readonly bool _configBased = false; diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs index f6abb9bd26..5ee808f315 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs @@ -5,6 +5,8 @@ using Umbraco.Core; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -12,7 +14,7 @@ namespace Umbraco.Examine { private readonly UmbracoExamineIndex _index; - public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) : base(index, logger, hostingEnvironment) { _index = index; diff --git a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs index 167c1addc1..27a1b6aab9 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs @@ -9,6 +9,8 @@ using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; using Umbraco.Core.IO; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -23,8 +25,7 @@ namespace Umbraco.Examine public UmbracoIndexesCreator( ITypeFinder typeFinder, IProfilingLogger profilingLogger, - ILogger contentIndexLogger, ILogger examineIndexLogger, - ILogger examineIndexDiagnosticsLogger, + ILoggerFactory loggerFactory, ILocalizationService languageService, IPublicAccessService publicAccessService, IMemberService memberService, @@ -35,9 +36,7 @@ namespace Umbraco.Examine ILuceneDirectoryFactory directoryFactory) : base(typeFinder, hostingEnvironment, settings) { ProfilingLogger = profilingLogger ?? throw new System.ArgumentNullException(nameof(profilingLogger)); - ContentIndexLogger = contentIndexLogger; - ExamineIndexLogger = examineIndexLogger; - ExamineIndexDiagnosticsLogger = examineIndexDiagnosticsLogger; + LoggerFactory = loggerFactory; LanguageService = languageService ?? throw new System.ArgumentNullException(nameof(languageService)); PublicAccessService = publicAccessService ?? throw new System.ArgumentNullException(nameof(publicAccessService)); MemberService = memberService ?? throw new System.ArgumentNullException(nameof(memberService)); @@ -48,9 +47,7 @@ namespace Umbraco.Examine } protected IProfilingLogger ProfilingLogger { get; } - protected ILogger ContentIndexLogger { get; } - protected ILogger ExamineIndexLogger { get; } - protected ILogger ExamineIndexDiagnosticsLogger { get; } + protected ILoggerFactory LoggerFactory { get; } protected IHostingEnvironment HostingEnvironment { get; } protected IRuntimeState RuntimeState { get; } protected ILuceneDirectoryFactory DirectoryFactory { get; } @@ -81,9 +78,8 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, - ContentIndexLogger, - ExamineIndexLogger, - ExamineIndexDiagnosticsLogger, + LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory, HostingEnvironment, RuntimeState, LanguageService, @@ -100,9 +96,8 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30), ProfilingLogger, - ContentIndexLogger, - ExamineIndexLogger, - ExamineIndexDiagnosticsLogger, + LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory, HostingEnvironment, RuntimeState, LanguageService, @@ -118,8 +113,8 @@ namespace Umbraco.Examine DirectoryFactory.CreateDirectory(Constants.UmbracoIndexes.MembersIndexPath), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, - ExamineIndexLogger, - ExamineIndexDiagnosticsLogger, + LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory, HostingEnvironment, RuntimeState, UmbracoIndexConfig.GetMemberValueSetValidator() diff --git a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs index 2c64e4c650..744ef3d333 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs @@ -1,10 +1,12 @@ using Examine; using Lucene.Net.Analysis; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Directory = Lucene.Net.Store.Directory; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -31,12 +33,12 @@ namespace Umbraco.Examine Directory luceneDirectory, Analyzer analyzer, IProfilingLogger profilingLogger, - ILogger indexLogger, - ILogger indexDiagnosticsLogger, + ILogger logger, + ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, IValueSetValidator validator = null) : - base(name, luceneDirectory, fieldDefinitions, analyzer, profilingLogger, indexLogger, indexDiagnosticsLogger, hostingEnvironment, runtimeState, validator) + base(name, luceneDirectory, fieldDefinitions, analyzer, profilingLogger, logger, loggerFactory, hostingEnvironment, runtimeState, validator) { } From 633d42039e68c3d67e97cda21a147aae3c55a0fd Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 15:14:44 +0200 Subject: [PATCH 15/85] Fix a whole bunch of other errors --- src/Umbraco.Core/Composing/Composers.cs | 6 +- src/Umbraco.Core/Scheduling/KeepAlive.cs | 7 ++- .../Scheduling/TempFileCleanup.cs | 6 +- .../ExamineLuceneFinalComponent.cs | 4 +- .../LuceneIndexDiagnosticsFactory.cs | 9 +-- .../Packaging/PackageDataInstallation.cs | 2 +- .../Runtime/CoreInitialComposer.cs | 1 + .../Runtime/CoreRuntime.cs | 15 +++-- .../Scheduling/HealthCheckNotifier.cs | 6 +- .../Scheduling/LogScrubber.cs | 6 +- .../Scheduling/ScheduledPublishing.cs | 15 ++--- .../Scheduling/SchedulerComponent.cs | 25 +++++--- .../Search/BackgroundIndexRebuilder.cs | 12 ++-- .../Search/ExamineComponent.cs | 13 +++-- .../Sync/DatabaseServerMessenger.cs | 4 +- src/Umbraco.Tests.Common/TestHelperBase.cs | 2 +- .../Implementations/TestHelper.cs | 1 - src/Umbraco.Tests.Integration/RuntimeTests.cs | 5 +- .../Testing/IntegrationTestComposer.cs | 4 +- .../Testing/UmbracoIntegrationTest.cs | 11 +++- .../Components/ComponentTests.cs | 58 ++++++++++--------- .../Composing/ComposingTestBase.cs | 2 +- .../Composing/CompositionTests.cs | 2 +- .../Composing/TypeLoaderTests.cs | 2 +- .../PublishedContentSnapshotTestBase.cs | 6 +- .../PublishedContent/PublishedContentTests.cs | 6 +- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 17 +++--- .../TestHelpers/BaseUsingSqlCeSyntax.cs | 2 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 23 +++++--- src/Umbraco.Tests/Umbraco.Tests.csproj | 3 + .../UmbracoExamine/IndexInitializer.cs | 13 +++-- src/Umbraco.Tests/Web/UmbracoHelperTests.cs | 3 +- .../UmbracoCoreServiceCollectionExtensions.cs | 8 ++- .../Install/InstallApiController.cs | 12 ++-- .../Editors/AuthenticationController.cs | 13 +++-- src/Umbraco.Web/Macros/MacroRenderer.cs | 15 +++-- src/Umbraco.Web/Mvc/UmbracoController.cs | 7 ++- src/Umbraco.Web/UmbracoHttpHandler.cs | 6 +- src/Umbraco.Web/UmbracoWebService.cs | 6 +- 39 files changed, 207 insertions(+), 151 deletions(-) diff --git a/src/Umbraco.Core/Composing/Composers.cs b/src/Umbraco.Core/Composing/Composers.cs index 93f6def891..eec355e9e7 100644 --- a/src/Umbraco.Core/Composing/Composers.cs +++ b/src/Umbraco.Core/Composing/Composers.cs @@ -5,6 +5,8 @@ using System.Reflection; using System.Text; using Umbraco.Core.Collections; using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Composing { @@ -16,7 +18,7 @@ namespace Umbraco.Core.Composing public class Composers { private readonly Composition _composition; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _profileLogger; private readonly IEnumerable _composerTypes; private readonly IEnumerable _enableDisableAttributes; @@ -38,7 +40,7 @@ namespace Umbraco.Core.Composing /// enableDisableAttributes /// or /// logger - public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, ILogger logger, IProfilingLogger profileLogger) + public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, ILogger logger, IProfilingLogger profileLogger) { _composition = composition ?? throw new ArgumentNullException(nameof(composition)); _composerTypes = composerTypes ?? throw new ArgumentNullException(nameof(composerTypes)); diff --git a/src/Umbraco.Core/Scheduling/KeepAlive.cs b/src/Umbraco.Core/Scheduling/KeepAlive.cs index 727c75326e..57df68d072 100644 --- a/src/Umbraco.Core/Scheduling/KeepAlive.cs +++ b/src/Umbraco.Core/Scheduling/KeepAlive.cs @@ -6,6 +6,7 @@ using Umbraco.Core; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Logging; using Umbraco.Core.Sync; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Scheduling { @@ -14,13 +15,13 @@ namespace Umbraco.Web.Scheduling private readonly IRequestAccessor _requestAccessor; private readonly IMainDom _mainDom; private readonly IKeepAliveSettings _keepAliveSettings; - private readonly ILogger _logger; - private readonly ProfilingLogger _profilingLogger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly IProfilingLogger _profilingLogger; private readonly IServerRegistrar _serverRegistrar; private static HttpClient _httpClient; public KeepAlive(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IRequestAccessor requestAccessor, IMainDom mainDom, IKeepAliveSettings keepAliveSettings, ILogger logger, ProfilingLogger profilingLogger, IServerRegistrar serverRegistrar) + IRequestAccessor requestAccessor, IMainDom mainDom, IKeepAliveSettings keepAliveSettings, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger profilingLogger, IServerRegistrar serverRegistrar) : base(runner, delayMilliseconds, periodMilliseconds) { _requestAccessor = requestAccessor; diff --git a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs index acd4b93769..5bd2f667ee 100644 --- a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs +++ b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs @@ -4,6 +4,8 @@ using System.IO; using System.Linq; using Umbraco.Core; using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -16,11 +18,11 @@ namespace Umbraco.Web.Scheduling private readonly TimeSpan _age; private readonly IMainDom _mainDom; private readonly IProfilingLogger _profilingLogger; - private readonly ILogger _logger; + private readonly ILogger _logger; public TempFileCleanup(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, IEnumerable tempFolders, TimeSpan age, - IMainDom mainDom, IProfilingLogger profilingLogger, ILogger logger) + IMainDom mainDom, IProfilingLogger profilingLogger, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { //SystemDirectories.TempFileUploads diff --git a/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs b/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs index e1e80ead2f..25e79c6040 100644 --- a/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs +++ b/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs @@ -7,11 +7,11 @@ namespace Umbraco.Examine { public class ExamineLuceneFinalComponent : IComponent { - private readonly IProfilingLogger _logger; + private readonly ILogger _logger; private readonly IExamineManager _examineManager; private readonly IMainDom _mainDom; - public ExamineLuceneFinalComponent(IProfilingLogger logger, IExamineManager examineManager, IMainDom mainDom) + public ExamineLuceneFinalComponent(ILogger logger, IExamineManager examineManager, IMainDom mainDom) { _logger = logger; _examineManager = examineManager; diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs index 16e3ee4d9a..4c64263041 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs @@ -1,5 +1,6 @@ using Examine; using Examine.LuceneEngine.Providers; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.Logging; using Umbraco.Core.IO; @@ -12,12 +13,12 @@ namespace Umbraco.Examine /// public class LuceneIndexDiagnosticsFactory : IndexDiagnosticsFactory { - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IHostingEnvironment _hostingEnvironment; - public LuceneIndexDiagnosticsFactory(ILogger logger, IHostingEnvironment hostingEnvironment) + public LuceneIndexDiagnosticsFactory(ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment) { - _logger = logger; + _loggerFactory = loggerFactory; _hostingEnvironment = hostingEnvironment; } @@ -26,7 +27,7 @@ namespace Umbraco.Examine if (!(index is IIndexDiagnostics indexDiag)) { if (index is LuceneIndex luceneIndex) - indexDiag = new LuceneIndexDiagnostics(luceneIndex, _logger, _hostingEnvironment); + indexDiag = new LuceneIndexDiagnostics(luceneIndex, _loggerFactory.CreateLogger("LuceneIndexDiagnostics"), _hostingEnvironment); else indexDiag = base.Create(index); } diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index 1c1ca97f54..027b74ebdd 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -1289,7 +1289,7 @@ namespace Umbraco.Core.Packaging else if (string.IsNullOrEmpty((string)elementCopy.Element("Master")) == false && templateElements.Any(x => (string)x.Element("Alias") == (string)elementCopy.Element("Master")) == false) { - _logger.Info( + _logger.LogInformation( "Template '{TemplateAlias}' has an invalid Master '{TemplateMaster}', so the reference has been ignored.", (string)elementCopy.Element("Alias"), (string)elementCopy.Element("Master")); diff --git a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs index 852c617750..0fd174ac42 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs @@ -145,6 +145,7 @@ namespace Umbraco.Core.Runtime factory.GetInstance(), factory.GetInstance(), factory.GetInstance(), + factory.GetInstance(), factory.GetInstance(), true, new DatabaseServerMessengerOptions(), factory.GetInstance(), diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 4e369336d0..1b94b9239d 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; @@ -12,6 +13,7 @@ using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Core.Runtime { @@ -26,8 +28,7 @@ namespace Umbraco.Core.Runtime private IFactory _factory; // runtime state, this instance will get replaced again once the essential services are available to run the check private RuntimeState _state = RuntimeState.Booting(); - private readonly ILogger _typeLoaderLogger; - private readonly ILogger _composerLogger; + private readonly ILoggerFactory _loggerFactory; private readonly IUmbracoBootPermissionChecker _umbracoBootPermissionChecker; private readonly IGlobalSettings _globalSettings; private readonly IConnectionStrings _connectionStrings; @@ -37,8 +38,7 @@ namespace Umbraco.Core.Runtime IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, - ILogger typeLoaderLogger, - ILogger composerLogger, + ILoggerFactory loggerFactory, IProfiler profiler, IUmbracoBootPermissionChecker umbracoBootPermissionChecker, IHostingEnvironment hostingEnvironment, @@ -57,8 +57,7 @@ namespace Umbraco.Core.Runtime BackOfficeInfo = backOfficeInfo; DbProviderFactoryCreator = dbProviderFactoryCreator; - _typeLoaderLogger = typeLoaderLogger; - _composerLogger = composerLogger; + _loggerFactory = loggerFactory; _umbracoBootPermissionChecker = umbracoBootPermissionChecker; Logger = logger; @@ -171,7 +170,7 @@ namespace Umbraco.Core.Runtime var databaseFactory = CreateDatabaseFactory(); // type finder/loader - var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), _typeLoaderLogger, ProfilingLogger); + var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), _loggerFactory.CreateLogger("TypeLoader"), ProfilingLogger); // re-create the state object with the essential services _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, Logger); @@ -291,7 +290,7 @@ namespace Umbraco.Core.Runtime enableDisableAttributes = typeLoader.GetAssemblyAttributes(typeof(EnableComposerAttribute), typeof(DisableComposerAttribute)); } - var composers = new Composers(composition, composerTypes, enableDisableAttributes, _composerLogger, ProfilingLogger); + var composers = new Composers(composition, composerTypes, enableDisableAttributes, _loggerFactory.CreateLogger("Composers"), ProfilingLogger); composers.Compose(); } diff --git a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs index 8b2213134c..40d6f4eb28 100644 --- a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs +++ b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs @@ -7,6 +7,8 @@ using Umbraco.Core.Logging; using Umbraco.Core.Scoping; using Umbraco.Core.Sync; using Umbraco.Web.HealthCheck; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -17,7 +19,7 @@ namespace Umbraco.Web.Scheduling private readonly HealthCheckNotificationMethodCollection _notifications; private readonly IScopeProvider _scopeProvider; private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IHealthChecksSettings _healthChecksSettingsConfig; private readonly IServerRegistrar _serverRegistrar; private readonly IRuntimeState _runtimeState; @@ -30,7 +32,7 @@ namespace Umbraco.Web.Scheduling HealthCheckNotificationMethodCollection notifications, IMainDom mainDom, IProfilingLogger pLogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IHealthChecksSettings healthChecksSettingsConfig, IServerRegistrar serverRegistrar, IRuntimeState runtimeState, diff --git a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs index bbd6a9c1a5..916309a5db 100644 --- a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs +++ b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs @@ -5,6 +5,8 @@ using Umbraco.Core.Logging; using Umbraco.Core.Scoping; using Umbraco.Core.Services; using Umbraco.Core.Sync; +using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -16,11 +18,11 @@ namespace Umbraco.Web.Scheduling private readonly IAuditService _auditService; private readonly ILoggingSettings _settings; private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IScopeProvider _scopeProvider; public LogScrubber(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, ILoggingSettings settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, ILogger logger) + IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, ILoggingSettings settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, Microsoft.Extensions.Logging.ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { _mainDom = mainDom; diff --git a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs index 8d8015f449..8965be6985 100644 --- a/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs +++ b/src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs @@ -4,13 +4,14 @@ using Umbraco.Core; using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Sync; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Scheduling { public class ScheduledPublishing : RecurringTaskBase { private readonly IContentService _contentService; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IMainDom _mainDom; private readonly IRuntimeState _runtime; private readonly IServerMessenger _serverMessenger; @@ -20,7 +21,7 @@ namespace Umbraco.Web.Scheduling public ScheduledPublishing(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, IRuntimeState runtime, IMainDom mainDom, IServerRegistrar serverRegistrar, IContentService contentService, - IUmbracoContextFactory umbracoContextFactory, ILogger logger, IServerMessenger serverMessenger) + IUmbracoContextFactory umbracoContextFactory, Microsoft.Extensions.Logging.ILogger logger, IServerMessenger serverMessenger) : base(runner, delayMilliseconds, periodMilliseconds) { _runtime = runtime; @@ -42,24 +43,24 @@ namespace Umbraco.Web.Scheduling switch (_serverRegistrar.GetCurrentServerRole()) { case ServerRole.Replica: - _logger.Debug("Does not run on replica servers."); + _logger.LogDebug("Does not run on replica servers."); return true; // DO repeat, server role can change case ServerRole.Unknown: - _logger.Debug("Does not run on servers with unknown role."); + _logger.LogDebug("Does not run on servers with unknown role."); return true; // DO repeat, server role can change } // ensure we do not run if not main domain, but do NOT lock it if (_mainDom.IsMainDom == false) { - _logger.Debug("Does not run if not MainDom."); + _logger.LogDebug("Does not run if not MainDom."); return false; // do NOT repeat, going down } // do NOT run publishing if not properly running if (_runtime.Level != RuntimeLevel.Run) { - _logger.Debug("Does not run if run level is not Run."); + _logger.LogDebug("Does not run if run level is not Run."); return true; // repeat/wait } @@ -98,7 +99,7 @@ namespace Umbraco.Web.Scheduling catch (Exception ex) { // important to catch *everything* to ensure the task repeats - _logger.LogError(ex, "Failed."); + _logger.LogError(ex, "Failed."); } return true; // repeat diff --git a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs index 3539993358..80666e838b 100644 --- a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs +++ b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Configuration.HealthChecks; @@ -15,6 +16,7 @@ using Umbraco.Core.Services; using Umbraco.Core.Sync; using Umbraco.Web.HealthCheck; using Umbraco.Web.Routing; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -30,7 +32,9 @@ namespace Umbraco.Web.Scheduling private readonly IServerRegistrar _serverRegistrar; private readonly IContentService _contentService; private readonly IAuditService _auditService; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _applicationShutdownRegistry; private readonly IScopeProvider _scopeProvider; private readonly HealthCheckCollection _healthChecks; @@ -56,7 +60,7 @@ namespace Umbraco.Web.Scheduling public SchedulerComponent(IRuntimeState runtime, IMainDom mainDom, IServerRegistrar serverRegistrar, IContentService contentService, IAuditService auditService, HealthCheckCollection healthChecks, HealthCheckNotificationMethodCollection notifications, - IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger logger, + IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry applicationShutdownRegistry, IHealthChecksSettings healthChecksSettingsConfig, IServerMessenger serverMessenger, IRequestAccessor requestAccessor, ILoggingSettings loggingSettings, IKeepAliveSettings keepAliveSettings, @@ -68,7 +72,9 @@ namespace Umbraco.Web.Scheduling _contentService = contentService; _auditService = auditService; _scopeProvider = scopeProvider; + _pLogger = pLogger; _logger = logger; + _loggerFactory = loggerFactory; _applicationShutdownRegistry = applicationShutdownRegistry; _umbracoContextFactory = umbracoContextFactory; @@ -84,6 +90,7 @@ namespace Umbraco.Web.Scheduling public void Initialize() { + var backGroundTaskLogger = _loggerFactory.CreateLogger("BackgroundTaskRunner"); // backgrounds runners are web aware, if the app domain dies, these tasks will wind down correctly _keepAliveRunner = new BackgroundTaskRunner("KeepAlive", _logger, _applicationShutdownRegistry); _publishingRunner = new BackgroundTaskRunner("ScheduledPublishing", _logger, _applicationShutdownRegistry); @@ -116,7 +123,7 @@ namespace Umbraco.Web.Scheduling { LazyInitializer.EnsureInitialized(ref _tasks, ref _started, ref _locker, () => { - _logger.Debug("Initializing the scheduler"); + _logger.LogDebug("Initializing the scheduler"); var tasks = new List(); @@ -131,7 +138,7 @@ namespace Umbraco.Web.Scheduling var healthCheckConfig = _healthChecksSettingsConfig; if (healthCheckConfig.NotificationSettings.Enabled) - tasks.Add(RegisterHealthCheckNotifier(healthCheckConfig, _healthChecks, _notifications, _logger)); + tasks.Add(RegisterHealthCheckNotifier(healthCheckConfig, _healthChecks, _notifications, _pLogger)); return tasks.ToArray(); }); @@ -141,7 +148,7 @@ namespace Umbraco.Web.Scheduling { // ping/keepalive // on all servers - var task = new KeepAlive(_keepAliveRunner, DefaultDelayMilliseconds, FiveMinuteMilliseconds, _requestAccessor, _mainDom, keepAliveSettings, _logger, _serverRegistrar); + var task = new KeepAlive(_keepAliveRunner, DefaultDelayMilliseconds, FiveMinuteMilliseconds, _requestAccessor, _mainDom, keepAliveSettings, _loggerFactory.CreateLogger(), _pLogger, _serverRegistrar); _keepAliveRunner.TryAdd(task); return task; } @@ -150,7 +157,7 @@ namespace Umbraco.Web.Scheduling { // scheduled publishing/unpublishing // install on all, will only run on non-replica servers - var task = new ScheduledPublishing(_publishingRunner, DefaultDelayMilliseconds, OneMinuteMilliseconds, _runtime, _mainDom, _serverRegistrar, _contentService, _umbracoContextFactory, _logger, _serverMessenger); + var task = new ScheduledPublishing(_publishingRunner, DefaultDelayMilliseconds, OneMinuteMilliseconds, _runtime, _mainDom, _serverRegistrar, _contentService, _umbracoContextFactory, _loggerFactory.CreateLogger(), _serverMessenger); _publishingRunner.TryAdd(task); return task; } @@ -176,7 +183,7 @@ namespace Umbraco.Web.Scheduling } var periodInMilliseconds = healthCheckSettingsConfig.NotificationSettings.PeriodInHours * 60 * 60 * 1000; - var task = new HealthCheckNotifier(_healthCheckRunner, delayInMilliseconds, periodInMilliseconds, healthChecks, notifications, _mainDom, logger, _healthChecksSettingsConfig, _serverRegistrar, _runtime, _scopeProvider); + var task = new HealthCheckNotifier(_healthCheckRunner, delayInMilliseconds, periodInMilliseconds, healthChecks, notifications, _mainDom, logger, _loggerFactory.CreateLogger(), _healthChecksSettingsConfig, _serverRegistrar, _runtime, _scopeProvider); _healthCheckRunner.TryAdd(task); return task; } @@ -185,7 +192,7 @@ namespace Umbraco.Web.Scheduling { // log scrubbing // install on all, will only run on non-replica servers - var task = new LogScrubber(_scrubberRunner, DefaultDelayMilliseconds, LogScrubber.GetLogScrubbingInterval(), _mainDom, _serverRegistrar, _auditService, settings, _scopeProvider, _logger); + var task = new LogScrubber(_scrubberRunner, DefaultDelayMilliseconds, LogScrubber.GetLogScrubbingInterval(), _mainDom, _serverRegistrar, _auditService, settings, _scopeProvider, _pLogger, _loggerFactory.CreateLogger()); _scrubberRunner.TryAdd(task); return task; } @@ -209,7 +216,7 @@ namespace Umbraco.Web.Scheduling var task = new TempFileCleanup(_fileCleanupRunner, DefaultDelayMilliseconds, OneHourMilliseconds, tempFolderPaths.Select(x=>new DirectoryInfo(x)), TimeSpan.FromDays(1), //files that are over a day old - _mainDom, _logger); + _mainDom, _pLogger, _loggerFactory.CreateLogger("TempFileCleanup")); _scrubberRunner.TryAdd(task); return task; } diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 0ecef1f253..ca1f9c3bf4 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -17,13 +17,15 @@ namespace Umbraco.Web.Search private static readonly object RebuildLocker = new object(); private readonly IndexRebuilder _indexRebuilder; private readonly IMainDom _mainDom; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; private readonly IApplicationShutdownRegistry _hostingEnvironment; private static BackgroundTaskRunner _rebuildOnStartupRunner; - public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) { _mainDom = mainDom; + _pLogger = pLogger; _logger = logger; _hostingEnvironment = hostingEnvironment; _indexRebuilder = indexRebuilder; @@ -42,17 +44,17 @@ namespace Umbraco.Web.Search { if (_rebuildOnStartupRunner != null && _rebuildOnStartupRunner.IsRunning) { - _logger.LogWarning("Call was made to RebuildIndexes but the task runner for rebuilding is already running"); + _logger.LogWarning("Call was made to RebuildIndexes but the task runner for rebuilding is already running"); return; } _logger.LogInformation("Starting initialize async background thread."); //do the rebuild on a managed background thread - var task = new RebuildOnStartupTask(_mainDom, _indexRebuilder, _logger, onlyEmptyIndexes, waitMilliseconds); + var task = new RebuildOnStartupTask(_mainDom, _indexRebuilder, _logger as ILogger, onlyEmptyIndexes, waitMilliseconds); _rebuildOnStartupRunner = new BackgroundTaskRunner( "RebuildIndexesOnStartup", - _logger, _hostingEnvironment); + _logger as ILogger, _hostingEnvironment); _rebuildOnStartupRunner.TryAdd(task); } diff --git a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs index ab1c20b0a3..297d7ac2aa 100644 --- a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs +++ b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs @@ -27,7 +27,8 @@ namespace Umbraco.Web.Search private readonly IScopeProvider _scopeProvider; private readonly ServiceContext _services; private readonly IMainDom _mainDom; - private readonly IProfilingLogger _logger; + private readonly IProfilingLogger _pLogger; + private readonly ILogger _logger; private readonly IUmbracoIndexesCreator _indexCreator; @@ -38,6 +39,7 @@ namespace Umbraco.Web.Search public ExamineComponent(IMainDom mainDom, IExamineManager examineManager, IProfilingLogger profilingLogger, + ILogger logger, IScopeProvider scopeProvider, IUmbracoIndexesCreator indexCreator, ServiceContext services, IContentValueSetBuilder contentValueSetBuilder, @@ -55,7 +57,8 @@ namespace Umbraco.Web.Search _memberValueSetBuilder = memberValueSetBuilder; _backgroundIndexRebuilder = backgroundIndexRebuilder; _mainDom = mainDom; - _logger = profilingLogger; + _pLogger = profilingLogger; + _logger = logger; _indexCreator = indexCreator; } @@ -64,7 +67,7 @@ namespace Umbraco.Web.Search //let's deal with shutting down Examine with MainDom var examineShutdownRegistered = _mainDom.Register(() => { - using (_logger.TraceDuration("Examine shutting down")) + using (_pLogger.TraceDuration("Examine shutting down")) { _examineManager.Dispose(); } @@ -75,7 +78,7 @@ namespace Umbraco.Web.Search _logger.LogInformation("Examine shutdown not registered, this AppDomain is not the MainDom, Examine will be disabled"); //if we could not register the shutdown examine ourselves, it means we are not maindom! in this case all of examine should be disabled! - Suspendable.ExamineEvents.SuspendIndexers(_logger); + Suspendable.ExamineEvents.SuspendIndexers(_logger as ILogger); return; //exit, do not continue } @@ -83,7 +86,7 @@ namespace Umbraco.Web.Search foreach(var index in _indexCreator.Create()) _examineManager.AddIndex(index); - _logger.Debug("Examine shutdown registered with MainDom"); + _logger.LogDebug("Examine shutdown registered with MainDom"); var registeredIndexers = _examineManager.Indexes.OfType().Count(x => x.EnableDefaultEventHandler); diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 11da064637..a557244b62 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -47,7 +47,7 @@ namespace Umbraco.Core.Sync public DatabaseServerMessengerOptions Options { get; } public DatabaseServerMessenger( - IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, IServerRegistrar serverRegistrar, + IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, ILogger logger, IServerRegistrar serverRegistrar, bool distributedEnabled, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, CacheRefresherCollection cacheRefreshers) : base(distributedEnabled) { @@ -58,7 +58,7 @@ namespace Umbraco.Core.Sync _serverRegistrar = serverRegistrar; _hostingEnvironment = hostingEnvironment; _cacheRefreshers = cacheRefreshers; - Logger = proflog; + Logger = logger; Options = options ?? throw new ArgumentNullException(nameof(options)); _lastPruned = _lastSync = DateTime.UtcNow; _syncIdle = new ManualResetEvent(true); diff --git a/src/Umbraco.Tests.Common/TestHelperBase.cs b/src/Umbraco.Tests.Common/TestHelperBase.cs index 8a4ed3f40e..cc01fa3528 100644 --- a/src/Umbraco.Tests.Common/TestHelperBase.cs +++ b/src/Umbraco.Tests.Common/TestHelperBase.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Common public TypeLoader GetMockedTypeLoader() { - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); } public Configs GetConfigs() => GetConfigsFactory().Create(); diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index a33e264acb..7853ae9111 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -54,7 +54,6 @@ namespace Umbraco.Tests.Integration.Implementations _hostEnvironment = hostEnvironment.Object; _hostingLifetime = new AspNetCoreApplicationShutdownRegistry(Mock.Of()); - Logger = new ConsoleLogger(new MessageTemplates()); ProfilingLogger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); } diff --git a/src/Umbraco.Tests.Integration/RuntimeTests.cs b/src/Umbraco.Tests.Integration/RuntimeTests.cs index 07a0db167c..a20c0cd1c0 100644 --- a/src/Umbraco.Tests.Integration/RuntimeTests.cs +++ b/src/Umbraco.Tests.Integration/RuntimeTests.cs @@ -5,11 +5,11 @@ using NUnit.Framework; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Logging; using Smidge; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Runtime; using Umbraco.Tests.Common; using Umbraco.Tests.Integration.Extensions; @@ -17,6 +17,7 @@ using Umbraco.Tests.Integration.Implementations; using Umbraco.Tests.Integration.Testing; using Umbraco.Web.Common.AspNetCore; using Umbraco.Extensions; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration { @@ -56,7 +57,7 @@ namespace Umbraco.Tests.Integration // Create the core runtime var coreRuntime = new CoreRuntime(testHelper.GetConfigs(), testHelper.GetUmbracoVersion(), - testHelper.IOHelper, testHelper.Logger, testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, + testHelper.IOHelper, testHelper.Logger, Mock.Of(), testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo(), testHelper.DbProviderFactoryCreator, testHelper.MainDom, testHelper.GetTypeFinder(), AppCaches.NoCache); diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index e9b38741e2..76480da97e 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -87,8 +87,8 @@ namespace Umbraco.Tests.Integration.Testing // replace the default so there is no background index rebuilder private class TestBackgroundIndexRebuilder : BackgroundIndexRebuilder { - public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) - : base(mainDom, logger, hostingEnvironment, indexRebuilder) + public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + : base(mainDom, pLogger, hostingEnvironment, indexRebuilder) { } diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 28b8fa0702..510d2ae6cf 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -29,6 +29,7 @@ using Microsoft.Extensions.Configuration; using System.Data.SqlClient; using System.Data.Common; using System.IO; +using Microsoft.Extensions.Logging; namespace Umbraco.Tests.Integration.Testing { @@ -124,6 +125,7 @@ namespace Umbraco.Tests.Integration.Testing /// /// /// + /// /// /// /// @@ -132,13 +134,14 @@ namespace Umbraco.Tests.Integration.Testing /// /// public CoreRuntime CreateTestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, - ILogger logger, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, + ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator) { var runtime = CreateTestRuntime(configs, umbracoVersion, ioHelper, logger, + loggerFactory, profiler, hostingEnvironment, backOfficeInfo, @@ -159,17 +162,18 @@ namespace Umbraco.Tests.Integration.Testing /// /// /// + /// /// /// /// /// - /// + /// /// /// /// The event handler used for DB installation /// public static CoreRuntime CreateTestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, - ILogger logger, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, + ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator, IMainDom mainDom, Action eventHandler) { @@ -178,6 +182,7 @@ namespace Umbraco.Tests.Integration.Testing umbracoVersion, ioHelper, logger, + loggerFactory, profiler, Mock.Of(), hostingEnvironment, diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index 6227ce00f6..c8e3adf5a0 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -14,6 +14,7 @@ using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; using Umbraco.Core.Scoping; using Umbraco.Tests.TestHelpers; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Components { @@ -32,15 +33,16 @@ namespace Umbraco.Tests.Components var mock = new Mock(); var logger = Mock.Of(); + var umbLogger = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); - var f = new UmbracoDatabaseFactory(logger, SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); - var fs = new FileSystems(mock.Object, logger, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); + var f = new UmbracoDatabaseFactory(umbLogger, SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); + var fs = new FileSystems(mock.Object, umbLogger, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = Mock.Of(); var mediaFileSystem = Mock.Of(); - var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, logger, typeFinder, NoAppCache.Instance); + var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, umbLogger, typeFinder, NoAppCache.Instance); mock.Setup(x => x.GetInstance(typeof (ILogger))).Returns(logger); - mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); + mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); mock.Setup(x => x.GetInstance(typeof (IUmbracoDatabaseFactory))).Returns(f); mock.Setup(x => x.GetInstance(typeof (IScopeProvider))).Returns(p); @@ -56,7 +58,7 @@ namespace Umbraco.Tests.Components private static TypeLoader MockTypeLoader() { var ioHelper = TestHelper.IOHelper; - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); } public static IRuntimeState MockRuntimeState(RuntimeLevel level) @@ -74,7 +76,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - goes away with RuntimeLevel.Unknown @@ -90,7 +92,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer1)) return new Composer1(); if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); - if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); throw new NotSupportedException(type.FullName); }); }); @@ -113,7 +115,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - stays with RuntimeLevel.Run @@ -129,7 +131,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); // 21 is required by 20 // => reorder components accordingly @@ -144,7 +146,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); // i23 requires 22 // 24, 25 implement i23 @@ -161,7 +163,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); try { @@ -184,7 +186,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 13 is required by 1 @@ -213,14 +215,14 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5a)) return new Composer5a(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(Component5a)) return new Component5a(); - if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); throw new NotSupportedException(type.FullName); }); }); var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer1), typeof(Composer5), typeof(Composer5a) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Assert.IsEmpty(Composed); composers.Compose(); @@ -246,7 +248,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer7), typeof(Composer8) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -261,7 +263,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -279,7 +281,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); var builder = composition.WithCollectionBuilder(); @@ -298,32 +300,32 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer10) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); Assert.AreEqual(typeof(Composer10), Composed[0]); types = new[] { typeof(Composer11) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); var requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer2) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer12) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); @@ -337,7 +339,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), Configs, TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer8) }; // 8 disables 7 which is not in the list - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -353,13 +355,13 @@ namespace Umbraco.Tests.Components var types = new[] { typeof(Composer26) }; var enableDisableAttributes = new[] { new DisableComposerAttribute(typeof(Composer26)) }; - var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(0, Composed.Count); // 26 gone types = new[] { typeof(Composer26), typeof(Composer27) }; // 26 disabled by assembly attribute, enabled by 27 - composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); + composers = new Composers(composition, types, enableDisableAttributes, Mock.Of(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); // both @@ -372,7 +374,7 @@ namespace Umbraco.Tests.Components { var ioHelper = TestHelper.IOHelper; var typeFinder = TestHelper.GetTypeFinder(); - var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); + var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); var register = MockRegister(); var composition = new Composition(register, typeLoader, Mock.Of(), @@ -380,7 +382,7 @@ namespace Umbraco.Tests.Components var allComposers = typeLoader.GetTypes().ToList(); var types = allComposers.Where(x => x.FullName.StartsWith("Umbraco.Core.") || x.FullName.StartsWith("Umbraco.Web")).ToList(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); var requirements = composers.GetRequirements(); var report = Composers.GetComposersReport(requirements); Console.WriteLine(report); diff --git a/src/Umbraco.Tests/Composing/ComposingTestBase.cs b/src/Umbraco.Tests/Composing/ComposingTestBase.cs index 1977a5dfc1..dd605e1c6f 100644 --- a/src/Umbraco.Tests/Composing/ComposingTestBase.cs +++ b/src/Umbraco.Tests/Composing/ComposingTestBase.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), ProfilingLogger, false, AssembliesToScan); + TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), ProfilingLogger, false, AssembliesToScan); } [TearDown] diff --git a/src/Umbraco.Tests/Composing/CompositionTests.cs b/src/Umbraco.Tests/Composing/CompositionTests.cs index 380511eaaa..b018f7c63e 100644 --- a/src/Umbraco.Tests/Composing/CompositionTests.cs +++ b/src/Umbraco.Tests/Composing/CompositionTests.cs @@ -40,7 +40,7 @@ namespace Umbraco.Tests.Composing var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), logger); + var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), logger); var composition = new Composition(mockedRegister, typeLoader, logger, Mock.Of(), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); // create the factory, ensure it is the mocked factory diff --git a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs index 980878d6f2..7894ee9fe8 100644 --- a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs +++ b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs @@ -30,7 +30,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); _typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(TestHelper.IOHelper.MapPath("~/App_Data/TEMP")), - new ProfilingLogger(Mock.Of(), Mock.Of()), false, + Mock.Of(), new ProfilingLogger(Mock.Of(), Mock.Of()), false, // for testing, we'll specify which assemblies are scanned for the PluginTypeResolver // TODO: Should probably update this so it only searches this assembly and add custom types to be found diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index abaf61917a..2e4c6e5fa0 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -46,11 +46,11 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(f => new PublishedModelFactory(f.GetInstance().GetTypes(), f.GetInstance())); } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache,IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, pLogger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), pLogger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] {typeof(PublishedContentMoreTests).Assembly}) diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index 7191d552f9..7ce365b84e 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -95,11 +95,11 @@ namespace Umbraco.Tests.PublishedContent } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, pLogger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), pLogger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] { typeof(PublishedContentTests).Assembly }) diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 37a527542d..b2088f00d7 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -7,6 +7,7 @@ using System.Reflection; using System.Text; using System.Web; using Examine; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -58,6 +59,7 @@ namespace Umbraco.Tests.Runtimes ConfigurationManager.AppSettings[Constants.AppSettings.ConfigurationStatus] = ""; // FIXME: we need a better management of settings here (and, true config files?) + var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); // create the very basic and essential things we need var logger = new ConsoleLogger(new MessageTemplates()); var profiler = new LogProfiler(logger); @@ -69,7 +71,7 @@ namespace Umbraco.Tests.Runtimes var databaseFactory = new UmbracoDatabaseFactory(logger,globalSettings, connectionStrings, new Lazy(() => factory.GetInstance()), TestHelper.DbProviderFactoryCreator); var ioHelper = TestHelper.IOHelper; var hostingEnvironment = Mock.Of(); - var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), profilingLogger); + var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger("TypeLoader"), profilingLogger); var mainDom = new SimpleMainDom(); var umbracoVersion = TestHelper.GetUmbracoVersion(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); @@ -84,7 +86,7 @@ namespace Umbraco.Tests.Runtimes composition.RegisterEssentials(logger, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself - var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // determine actual runtime level runtimeState.DetermineRuntimeLevel(); @@ -95,7 +97,7 @@ namespace Umbraco.Tests.Runtimes var composerTypes = typeLoader.GetTypes() // all of them .Where(x => !x.FullName.StartsWith("Umbraco.Tests.")) // exclude test components .Where(x => x != typeof(WebInitialComposer) && x != typeof(WebFinalComposer)); // exclude web runtime - var composers = new Composers(composition, composerTypes, Enumerable.Empty(), profilingLogger); + var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger("Composers"), profilingLogger); composers.Compose(); // must registers stuff that WebRuntimeComponent would register otherwise @@ -255,16 +257,15 @@ namespace Umbraco.Tests.Runtimes // - assigning the factory to Current.Factory // create the very basic and essential things we need + var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); var logger = new ConsoleLogger(new MessageTemplates()); - var composerLogger = new ConsoleLogger(new MessageTemplates()); - var typeLoaderLogger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); var profilingLogger = new ProfilingLogger(logger, profiler); var appCaches = AppCaches.Disabled; var databaseFactory = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), typeLoaderLogger, profilingLogger); + var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger("TypeLoader"), profilingLogger); var runtimeState = Mock.Of(); var hostingEnvironment = Mock.Of(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); @@ -280,7 +281,7 @@ namespace Umbraco.Tests.Runtimes composition.RegisterEssentials(logger, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself - var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // get the components // all of them? @@ -290,7 +291,7 @@ namespace Umbraco.Tests.Runtimes .Where(x => !x.FullName.StartsWith("Umbraco.Tests")); // single? //var componentTypes = new[] { typeof(CoreRuntimeComponent) }; - var composers = new Composers(composition, composerTypes, Enumerable.Empty(), profilingLogger); + var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger("Composers"), profilingLogger); // get components to compose themselves composers.Compose(); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index 2ad52856df..46495d6bc5 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.TestHelpers var typeFinder = TestHelper.GetTypeFinder(); var typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of>(), + Mock.Of(), logger, false); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 6f57db554e..4fec590de1 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -4,12 +4,15 @@ using System.Globalization; using System.IO; using System.Linq; using System.Reflection; +using System.Web.Http.Validation; using System.Web.Routing; using System.Web.Security; using System.Xml.Linq; using Examine; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; +using Serilog; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -60,6 +63,7 @@ using Umbraco.Web.Trees; using Current = Umbraco.Web.Composing.Current; using Umbraco.Tests.Common; using Umbraco.Core.Media; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Testing { @@ -166,7 +170,7 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful - var (logger, profiler) = GetLoggers(Options.Logger); + var (logger, msLogger, profiler) = GetLoggers(Options.Logger); var proflogger = new ProfilingLogger(logger, profiler); IOHelper = TestHelper.IOHelper; @@ -181,7 +185,7 @@ namespace Umbraco.Tests.Testing LocalizedTextService = new LocalizedTextService(new Dictionary>(), logger); - var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, logger, proflogger, Options.TypeLoader); + var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, msLogger, proflogger, Options.TypeLoader); var register = TestHelper.GetRegister(); @@ -252,30 +256,35 @@ namespace Umbraco.Tests.Testing #region Compose - protected virtual (ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) + protected virtual (ILogger, Microsoft.Extensions.Logging.ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) { + // TODO: Fix this, give the microsoft loggers a name ILogger logger; + Microsoft.Extensions.Logging.ILogger msLogger; IProfiler profiler; switch (option) { case UmbracoTestOptions.Logger.Mock: logger = Mock.Of(); + msLogger = Mock.Of(); profiler = Mock.Of(); break; case UmbracoTestOptions.Logger.Serilog: logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); + msLogger = LoggerFactory.Create(builder => builder.AddSerilog()).CreateLogger(""); profiler = new LogProfiler(logger); break; case UmbracoTestOptions.Logger.Console: logger = new ConsoleLogger(new MessageTemplates()); + msLogger = LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger(""); profiler = new LogProfiler(logger); break; default: throw new NotSupportedException($"Logger option {option} is not supported."); } - return (logger, profiler); + return (logger, msLogger, profiler); } protected virtual AppCaches GetAppCaches() @@ -369,7 +378,7 @@ namespace Umbraco.Tests.Testing .ComposeCoreMappingProfiles(); } - protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) + protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) { switch (option) { @@ -384,13 +393,13 @@ namespace Umbraco.Tests.Testing } } - protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); } // common to all tests = cannot be overriden - private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, new[] { diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index f1db4b619f..191a70d765 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -95,6 +95,9 @@ + + 3.1.8 + diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index 9f33e33000..81964eb714 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -6,6 +6,7 @@ using Examine.LuceneEngine.Providers; using Lucene.Net.Analysis; using Lucene.Net.Analysis.Standard; using Lucene.Net.Store; +using Microsoft.Extensions.Logging; using Moq; using Umbraco.Core; using Umbraco.Core.Hosting; @@ -23,6 +24,7 @@ using Umbraco.Core.Strings; using Umbraco.Examine; using Umbraco.Tests.TestHelpers; using IContentService = Umbraco.Core.Services.IContentService; +using ILogger = Umbraco.Core.Logging.ILogger; using IMediaService = Umbraco.Core.Services.IMediaService; using Version = Lucene.Net.Util.Version; @@ -161,9 +163,9 @@ namespace Umbraco.Tests.UmbracoExamine return new ProfilingLogger(Mock.Of(), Mock.Of()); } - public static ILogger GetMockLogger() + public static Core.Logging.ILogger GetMockLogger() { - return Mock.Of>(); + return Mock.Of>(); } public static UmbracoContentIndex GetUmbracoIndexer( @@ -190,10 +192,9 @@ namespace Umbraco.Tests.UmbracoExamine new UmbracoFieldDefinitionCollection(), analyzer, profilingLogger, - GetMockLogger(), - GetMockLogger(), - GetMockLogger(), - hostingEnvironment, + Mock.Of(), + Mock.Of(), + hostingEnvironment, runtimeState, languageService, validator); diff --git a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs index 80cc45a412..38e6657892 100644 --- a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs +++ b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs @@ -11,6 +11,7 @@ using Umbraco.Tests.TestHelpers; using Umbraco.Web; using Current = Umbraco.Web.Composing.Current; + namespace Umbraco.Tests.Web { @@ -36,7 +37,7 @@ namespace Umbraco.Tests.Web typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of>(), + Mock.Of(), new ProfilingLogger(Mock.Of(), Mock.Of()) ) ); diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 5ab13b72ab..2a59a0fa95 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -207,7 +207,7 @@ namespace Umbraco.Extensions AppCaches appCaches, ILoggingConfiguration loggingConfiguration, // TODO: Yep that's extremely ugly - Func getRuntime, + Func getRuntime, out IFactory factory) { if (services is null) throw new ArgumentNullException(nameof(services)); @@ -234,7 +234,9 @@ namespace Umbraco.Extensions // into the container. This is not true for `Configs` but we should do that too, see comments in // `RegisterEssentials`. var serviceProvider = services.BuildServiceProvider(); + var configs = serviceProvider.GetService(); + var loggerFactory = serviceProvider.GetService(); var dbProviderFactoryCreator = serviceProvider.GetRequiredService(); CreateCompositionRoot(services, @@ -252,6 +254,7 @@ namespace Umbraco.Extensions umbracoVersion, ioHelper, logger, + loggerFactory, profiler, hostingEnvironment, backOfficeInfo, @@ -273,7 +276,7 @@ namespace Umbraco.Extensions } private static IRuntime GetCoreRuntime( - Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Core.Logging.ILogger logger, + Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator) { @@ -295,6 +298,7 @@ namespace Umbraco.Extensions umbracoVersion, ioHelper, logger, + loggerFactory, profiler, new AspNetCoreBootPermissionsChecker(), hostingEnvironment, diff --git a/src/Umbraco.Web.Common/Install/InstallApiController.cs b/src/Umbraco.Web.Common/Install/InstallApiController.cs index a9d2fecfec..83134ba803 100644 --- a/src/Umbraco.Web.Common/Install/InstallApiController.cs +++ b/src/Umbraco.Web.Common/Install/InstallApiController.cs @@ -32,10 +32,10 @@ namespace Umbraco.Web.Common.Install private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; private readonly BackOfficeSignInManager _backOfficeSignInManager; private readonly InstallStepCollection _installSteps; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _proflog; - public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, + public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, ILogger logger, InstallHelper installHelper, InstallStepCollection installSteps, InstallStatusTracker installStatusTracker, IUmbracoApplicationLifetime umbracoApplicationLifetime, BackOfficeSignInManager backOfficeSignInManager) { @@ -46,7 +46,7 @@ namespace Umbraco.Web.Common.Install _umbracoApplicationLifetime = umbracoApplicationLifetime; _backOfficeSignInManager = backOfficeSignInManager; InstallHelper = installHelper; - _logger = _proflog; + _logger = logger; } @@ -155,7 +155,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.LogError(ex, "An error occurred during installation step {Step}", + _logger.LogError(ex, "An error occurred during installation step {Step}", step.Name); if (ex is TargetInvocationException && ex.InnerException != null) @@ -268,7 +268,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.LogError(ex, "Checking if step requires execution ({Step}) failed.", + _logger.LogError(ex, "Checking if step requires execution ({Step}) failed.", step.Name); throw; } @@ -299,7 +299,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - _logger.LogError(ex, "Installation step {Step} failed.", step.Name); + _logger.LogError(ex, "Installation step {Step} failed.", step.Name); throw; } } diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index 021128d551..bacd533560 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -46,6 +46,7 @@ namespace Umbraco.Web.Editors private BackOfficeSignInManager _signInManager; private readonly IUserPasswordConfiguration _passwordConfiguration; private readonly IHostingEnvironment _hostingEnvironment; + private readonly ILogger _logger; private readonly IRuntimeState _runtimeState; private readonly ISecuritySettings _securitySettings; private readonly IRequestAccessor _requestAccessor; @@ -59,17 +60,19 @@ namespace Umbraco.Web.Editors ISqlContext sqlContext, ServiceContext services, AppCaches appCaches, - IProfilingLogger logger, + IProfilingLogger pLogger, + ILogger logger, IRuntimeState runtimeState, UmbracoMapper umbracoMapper, ISecuritySettings securitySettings, IPublishedUrlProvider publishedUrlProvider, IRequestAccessor requestAccessor, IEmailSender emailSender) - : base(globalSettings, umbracoContextAccessor, sqlContext, services, appCaches, logger, runtimeState, umbracoMapper, publishedUrlProvider) + : base(globalSettings, umbracoContextAccessor, sqlContext, services, appCaches, pLogger, runtimeState, umbracoMapper, publishedUrlProvider) { _passwordConfiguration = passwordConfiguration ?? throw new ArgumentNullException(nameof(passwordConfiguration)); _hostingEnvironment = hostingEnvironment ?? throw new ArgumentNullException(nameof(hostingEnvironment)); + _logger = logger; _runtimeState = runtimeState ?? throw new ArgumentNullException(nameof(runtimeState)); _securitySettings = securitySettings ?? throw new ArgumentNullException(nameof(securitySettings)); _requestAccessor = requestAccessor ?? throw new ArgumentNullException(nameof(securitySettings)); @@ -117,7 +120,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -136,7 +139,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -159,7 +162,7 @@ namespace Umbraco.Web.Editors var userName = await SignInManager.GetVerifiedUserNameAsync(); if (userName == null) { - Logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } diff --git a/src/Umbraco.Web/Macros/MacroRenderer.cs b/src/Umbraco.Web/Macros/MacroRenderer.cs index 9e9bbcd0e5..dd705cef57 100644 --- a/src/Umbraco.Web/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web/Macros/MacroRenderer.cs @@ -19,6 +19,7 @@ namespace Umbraco.Web.Macros internal class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly IContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -34,6 +35,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, + ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IContentSettings contentSettings, ILocalizedTextService textService, @@ -44,9 +46,10 @@ namespace Umbraco.Web.Macros IMemberUserKeyProvider memberUserKeyProvider, ISessionManager sessionManager, IRequestAccessor requestAccessor, - IHttpContextAccessor httpContextAccessor) + IHttpContextAccessor httpContextAccessor) { _plogger = plogger ?? throw new ArgumentNullException(nameof(plogger)); + _logger = logger; _umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor)); _contentSettings = contentSettings ?? throw new ArgumentNullException(nameof(contentSettings)); _textService = textService; @@ -109,7 +112,7 @@ namespace Umbraco.Web.Macros if (macroContent == null) return null; - _plogger.Debug("Macro content loaded from cache '{MacroCacheId}'", model.CacheIdentifier); + _logger.LogDebug("Macro content loaded from cache '{MacroCacheId}'", model.CacheIdentifier); // ensure that the source has not changed // note: does not handle dependencies, and never has @@ -118,13 +121,13 @@ namespace Umbraco.Web.Macros { if (macroSource.Exists == false) { - _plogger.Debug("Macro source does not exist anymore, ignore cache."); + _logger.LogDebug("Macro source does not exist anymore, ignore cache."); return null; } if (macroContent.Date < macroSource.LastWriteTime) { - _plogger.Debug("Macro source has changed, ignore cache."); + _logger.LogDebug("Macro source has changed, ignore cache."); return null; } } @@ -158,7 +161,7 @@ namespace Umbraco.Web.Macros new TimeSpan(0, 0, model.CacheDuration) ); - _plogger.Debug("Macro content saved to cache '{MacroCacheId}'", model.CacheIdentifier); + _logger.LogDebug("Macro content saved to cache '{MacroCacheId}'", model.CacheIdentifier); } // gets the macro source file name @@ -280,7 +283,7 @@ namespace Umbraco.Web.Macros } catch (Exception e) { - _plogger.LogWarning(e, "Failed {MsgIn}", msgIn); + _logger.LogWarning(e, "Failed {MsgIn}", msgIn); var macroErrorEventArgs = new MacroErrorEventArgs { diff --git a/src/Umbraco.Web/Mvc/UmbracoController.cs b/src/Umbraco.Web/Mvc/UmbracoController.cs index 9cfd93ba9d..139257904f 100644 --- a/src/Umbraco.Web/Mvc/UmbracoController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoController.cs @@ -73,18 +73,19 @@ namespace Umbraco.Web.Mvc Current.Factory.GetInstance(), Current.Factory.GetInstance(), Current.Factory.GetInstance(), - Current.Factory.GetInstance() + Current.Factory.GetInstance(), + Current.Factory.GetInstance() ) { } - protected UmbracoController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) + protected UmbracoController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) { GlobalSettings = globalSettings; UmbracoContextAccessor = umbracoContextAccessor; Services = services; AppCaches = appCaches; - Logger = profilingLogger; + Logger = logger; ProfilingLogger = profilingLogger; } } diff --git a/src/Umbraco.Web/UmbracoHttpHandler.cs b/src/Umbraco.Web/UmbracoHttpHandler.cs index eb219f82d2..042cc794b3 100644 --- a/src/Umbraco.Web/UmbracoHttpHandler.cs +++ b/src/Umbraco.Web/UmbracoHttpHandler.cs @@ -14,13 +14,13 @@ namespace Umbraco.Web private UrlHelper _url; protected UmbracoHttpHandler() - : this(Current.UmbracoContextAccessor, Current.Services, Current.ProfilingLogger) + : this(Current.UmbracoContextAccessor, Current.Services, Current.Logger, Current.ProfilingLogger) { } - protected UmbracoHttpHandler(IUmbracoContextAccessor umbracoContextAccessor,ServiceContext service, IProfilingLogger plogger) + protected UmbracoHttpHandler(IUmbracoContextAccessor umbracoContextAccessor,ServiceContext service, ILogger logger, IProfilingLogger plogger) { UmbracoContextAccessor = umbracoContextAccessor; - Logger = plogger; + Logger = logger; ProfilingLogger = plogger; Services = service; } diff --git a/src/Umbraco.Web/UmbracoWebService.cs b/src/Umbraco.Web/UmbracoWebService.cs index 916ab5ad8e..dc7bf3f9e7 100644 --- a/src/Umbraco.Web/UmbracoWebService.cs +++ b/src/Umbraco.Web/UmbracoWebService.cs @@ -21,9 +21,9 @@ namespace Umbraco.Web { private UrlHelper _url; - protected UmbracoWebService(IProfilingLogger profilingLogger, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, IGlobalSettings globalSettings) + protected UmbracoWebService(ILogger logger, IProfilingLogger profilingLogger, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, IGlobalSettings globalSettings) { - Logger = profilingLogger; + Logger = logger; ProfilingLogger = profilingLogger; UmbracoContextAccessor = umbracoContextAccessor; Services = services; @@ -31,7 +31,7 @@ namespace Umbraco.Web } protected UmbracoWebService() - : this(Current.ProfilingLogger, Current.UmbracoContextAccessor, Current.Services, Current.Configs.Global()) + : this(Current.Logger, Current.ProfilingLogger, Current.UmbracoContextAccessor, Current.Services, Current.Configs.Global()) { } From 4492d48aef63436d7414e3a9345db762b82eaefe Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Tue, 15 Sep 2020 15:42:04 +0200 Subject: [PATCH 16/85] Inject IFactory and ILogger more places --- .../TestServerTest/UmbracoBuilderExtensions.cs | 3 ++- src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs | 10 ++++++---- src/Umbraco.Web/Editors/BackOfficeController.cs | 3 ++- src/Umbraco.Web/Mvc/RenderMvcController.cs | 4 ++-- src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs | 4 ++-- 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs b/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs index ba96c06826..1a7668d755 100644 --- a/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs +++ b/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs @@ -29,13 +29,14 @@ namespace Umbraco.Tests.Integration.TestServerTest AppCaches.NoCache, // Disable caches in integration tests testHelper.GetLoggingConfiguration(), // TODO: Yep that's extremely ugly - (configs, umbVersion, ioHelper, logger, profiler, hostingEnv, backOfficeInfo, typeFinder, appCaches, dbProviderFactoryCreator) => + (configs, umbVersion, ioHelper, logger, factory, profiler, hostingEnv, backOfficeInfo, typeFinder, appCaches, dbProviderFactoryCreator) => { var runtime = UmbracoIntegrationTest.CreateTestRuntime( configs, umbVersion, ioHelper, logger, + factory, profiler, hostingEnv, backOfficeInfo, diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index 9a4531b4e9..5536accba7 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -2,6 +2,7 @@ using System.Linq; using System.Web.Mvc; using System.Web.Routing; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -50,7 +51,7 @@ namespace Umbraco.Tests.Routing public class TestRuntime : CoreRuntime { public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - : base(configs, umbracoVersion, ioHelper, Mock.Of(), Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + : base(configs, umbracoVersion, ioHelper, Mock.Of(), Mock.Of(), Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } @@ -153,7 +154,8 @@ namespace Umbraco.Tests.Routing umbracoContextAccessor, Factory.GetInstance(), Factory.GetInstance(), - Factory.GetInstance()); + Factory.GetInstance(), + Factory.GetInstance()); }), ShortStringHelper); handler.GetHandlerForRoute(httpContext.Request.RequestContext, frequest); @@ -190,8 +192,8 @@ namespace Umbraco.Tests.Routing /// public class CustomDocumentController : RenderMvcController { - public CustomDocumentController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger) + public CustomDocumentController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { } diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs index ca5279fe2f..c8b14f4a4a 100644 --- a/src/Umbraco.Web/Editors/BackOfficeController.cs +++ b/src/Umbraco.Web/Editors/BackOfficeController.cs @@ -44,12 +44,13 @@ namespace Umbraco.Web.Editors ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, + ILogger logger, IUmbracoVersion umbracoVersion, IContentSettings contentSettings, IHostingEnvironment hostingEnvironment, IRuntimeSettings settings, ISecuritySettings securitySettings) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { _features = features; diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 57a1b34892..6b6924e8de 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -25,8 +25,8 @@ namespace Umbraco.Web.Mvc ActionInvoker = new RenderActionInvoker(); } - public RenderMvcController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger) + public RenderMvcController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { ActionInvoker = new RenderActionInvoker(); } diff --git a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs index 0724cd138d..6835e462f4 100644 --- a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs @@ -21,8 +21,8 @@ namespace Umbraco.Web.Mvc { } - protected UmbracoAuthorizedController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger) + protected UmbracoAuthorizedController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { } } From 80ee2356d59ab61a2b1f5cc12a65c27b6f32fb07 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 08:57:06 +0200 Subject: [PATCH 17/85] Fix a bunch of tests and try to add ILoggerFactory to Current --- src/Umbraco.Core/Composing/Current.cs | 4 ++++ .../BatchedDatabaseServerMessenger.cs | 3 ++- .../Testing/IntegrationTestComposer.cs | 4 ++-- .../XmlPublishedSnapshotService.cs | 4 ++-- .../PublishedContent/NuCacheChildrenTests.cs | 4 ++++ src/Umbraco.Tests/PublishedContent/NuCacheTests.cs | 4 ++++ src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 10 ++++++---- src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs | 2 ++ .../Services/ContentTypeServiceVariantsTests.cs | 2 ++ src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs | 4 ++-- src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs | 2 +- src/Umbraco.Web/Composing/Current.cs | 4 ++++ src/Umbraco.Web/UmbracoApplication.cs | 7 ++++--- src/Umbraco.Web/UmbracoApplicationBase.cs | 5 ++++- 14 files changed, 43 insertions(+), 16 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 055a29228a..1ca99e1348 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -1,16 +1,19 @@ using System; using System.Runtime.CompilerServices; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Composing { public static class Current { private static ILogger _logger = new NullLogger(); + private static ILoggerFactory _loggerFactory; private static Configs _configs; private static IIOHelper _ioHelper; private static IHostingEnvironment _hostingEnvironment; @@ -23,6 +26,7 @@ namespace Umbraco.Composing public static IHostingEnvironment HostingEnvironment => EnsureInitialized(_hostingEnvironment); public static IBackOfficeInfo BackOfficeInfo => EnsureInitialized(_backOfficeInfo); public static IProfiler Profiler => EnsureInitialized(_profiler); + public static ILoggerFactory LoggerFactory => EnsureInitialized(_loggerFactory); public static bool IsInitialized { get; internal set; } diff --git a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs index b3c5b00472..7792a5dc67 100644 --- a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs @@ -32,13 +32,14 @@ namespace Umbraco.Web IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, + ILogger logger, IServerRegistrar serverRegistrar, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, CacheRefresherCollection cacheRefreshers, IRequestCache requestCache, IRequestAccessor requestAccessor) - : base(mainDom, scopeProvider, sqlContext, proflog, serverRegistrar, true, options, hostingEnvironment, cacheRefreshers) + : base(mainDom, scopeProvider, sqlContext, proflog, logger, serverRegistrar, true, options, hostingEnvironment, cacheRefreshers) { _databaseFactory = databaseFactory; _requestCache = requestCache; diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index 76480da97e..7be6325b92 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -87,8 +87,8 @@ namespace Umbraco.Tests.Integration.Testing // replace the default so there is no background index rebuilder private class TestBackgroundIndexRebuilder : BackgroundIndexRebuilder { - public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) - : base(mainDom, pLogger, hostingEnvironment, indexRebuilder) + public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + : base(mainDom, pLogger, logger, hostingEnvironment, indexRebuilder) { } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs index bf7cbe40c4..42ecd971f2 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache IUmbracoContextAccessor umbracoContextAccessor, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IGlobalSettings globalSettings, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, @@ -83,7 +83,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache IUmbracoContextAccessor umbracoContextAccessor, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IGlobalSettings globalSettings, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs index f0aa39fcf8..f9320b3e60 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -31,6 +32,7 @@ using Umbraco.Web.PublishedCache; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.PublishedCache.NuCache.DataSource; using Current = Umbraco.Web.Composing.Current; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PublishedContent { @@ -158,6 +160,8 @@ namespace Umbraco.Tests.PublishedContent _snapshotAccessor, _variationAccesor, Mock.Of(), + Mock.Of>(), + Mock.Of(), scopeProvider.Object, Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs index 8003bdf236..07b9c36d4a 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -29,6 +30,7 @@ using Umbraco.Web.PublishedCache; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.PublishedCache.NuCache.DataSource; using Current = Umbraco.Web.Composing.Current; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PublishedContent { @@ -198,6 +200,8 @@ namespace Umbraco.Tests.PublishedContent new TestPublishedSnapshotAccessor(), _variationAccesor, Mock.Of(), + Mock.Of>(), + Mock.Of(), scopeProvider, Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 25e7fbb456..b49421c708 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Data; using Examine; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -24,6 +25,7 @@ using Umbraco.Web; using Umbraco.Web.Hosting; using Umbraco.Web.Runtime; using Current = Umbraco.Web.Composing.Current; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Runtimes { @@ -108,17 +110,17 @@ namespace Umbraco.Tests.Runtimes public IRuntime Runtime { get; private set; } - protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { - return Runtime = new TestRuntime(configs, umbracoVersion, ioHelper, logger, profiler, hostingEnvironment, backOfficeInfo); + return Runtime = new TestRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, hostingEnvironment, backOfficeInfo); } } // test runtime public class TestRuntime : CoreRuntime { - public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - :base(configs, umbracoVersion, ioHelper, logger, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + :base(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } diff --git a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs index 49bca378c7..db3ec8c80b 100644 --- a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs @@ -98,6 +98,8 @@ namespace Umbraco.Tests.Scoping publishedSnapshotAccessor, Mock.Of(), ProfilingLogger, + Mock.Of>(), + Mock.Of(), ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, diff --git a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs index ab9f85aa3c..f8d0116772 100644 --- a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs +++ b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs @@ -70,6 +70,8 @@ namespace Umbraco.Tests.Services publishedSnapshotAccessor, Mock.Of(), ProfilingLogger, + Mock.Of>(), + Mock.Of(), ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index 6616e94339..2212ede7cb 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -246,7 +246,7 @@ namespace Umbraco.Tests.TestHelpers Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), - Logger); + Factory.GetInstance()); // testing=true so XmlStore will not use the file nor the database @@ -260,7 +260,7 @@ namespace Umbraco.Tests.TestHelpers Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), DefaultCultureAccessor, - Logger, + Factory.GetInstance(), Factory.GetInstance(), HostingEnvironment, HostingLifetime, diff --git a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs index 6f1a073eca..711676f8c1 100644 --- a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs @@ -421,7 +421,7 @@ namespace Umbraco.Tests.Web.Mvc null, null, umbracoContextAccessor, null, null, null, new TestDefaultCultureAccessor(), - Current.Logger, TestObjects.GetGlobalSettings(), + Current.LoggerFactory.CreateLogger("XmlPublishedSnapshotService"), TestObjects.GetGlobalSettings(), TestHelper.GetHostingEnvironment(), TestHelper.GetHostingEnvironmentLifetime(), ShortStringHelper, diff --git a/src/Umbraco.Web/Composing/Current.cs b/src/Umbraco.Web/Composing/Current.cs index 68120947df..b41a45ae2d 100644 --- a/src/Umbraco.Web/Composing/Current.cs +++ b/src/Umbraco.Web/Composing/Current.cs @@ -1,4 +1,5 @@ using System; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Dictionary; @@ -33,6 +34,7 @@ using Umbraco.Web.Security; using Umbraco.Web.Services; using Umbraco.Web.Trees; using Umbraco.Web.WebApi; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Composing { @@ -247,6 +249,8 @@ namespace Umbraco.Web.Composing public static ILogger Logger => Umbraco.Composing.Current.Logger; + public static ILoggerFactory LoggerFactory => Umbraco.Composing.Current.LoggerFactory; + public static IProfiler Profiler => Factory.GetInstance(); public static IProfilerHtml ProfilerHtml => Factory.GetInstance(); diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs index 2e9ba11866..3af09eb3e6 100644 --- a/src/Umbraco.Web/UmbracoApplication.cs +++ b/src/Umbraco.Web/UmbracoApplication.cs @@ -4,9 +4,9 @@ using System.Linq; using System.Runtime.InteropServices; using System.Threading; using System.Web; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Logging.Serilog; using Umbraco.Core.Runtime; using Umbraco.Core.Configuration; @@ -14,6 +14,7 @@ using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Web.Runtime; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web { @@ -22,7 +23,7 @@ namespace Umbraco.Web /// public class UmbracoApplication : UmbracoApplicationBase { - protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { var connectionStringConfig = configs.ConnectionStrings()[Constants.System.UmbracoConnectionName]; @@ -49,7 +50,7 @@ namespace Umbraco.Web new IsolatedCaches(type => new DeepCloneAppCache(new ObjectCacheAppCache()))); var umbracoBootPermissionChecker = new AspNetUmbracoBootPermissionChecker(); - return new CoreRuntime(configs, umbracoVersion, ioHelper, logger, profiler, umbracoBootPermissionChecker, hostingEnvironment, backOfficeInfo, dbProviderFactoryCreator, mainDom, + return new CoreRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, umbracoBootPermissionChecker, hostingEnvironment, backOfficeInfo, dbProviderFactoryCreator, mainDom, GetTypeFinder(hostingEnvironment, logger, profiler), appCaches); } diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 86fc7de76c..8d40a36240 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -5,6 +5,7 @@ using System.Reflection; using System.Threading; using System.Web; using System.Web.Hosting; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -19,6 +20,7 @@ using Umbraco.Web.AspNet; using Umbraco.Web.Hosting; using Umbraco.Web.Logging; using Current = Umbraco.Web.Composing.Current; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web { @@ -120,7 +122,7 @@ namespace Umbraco.Web /// /// Gets a runtime. /// - protected abstract IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo); + protected abstract IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo); /// /// Gets the application register. @@ -170,6 +172,7 @@ namespace Umbraco.Web umbracoVersion, Umbraco.Composing.Current.IOHelper, Umbraco.Composing.Current.Logger, + Umbraco.Composing.Current.LoggerFactory, Umbraco.Composing.Current.Profiler, Umbraco.Composing.Current.HostingEnvironment, Umbraco.Composing.Current.BackOfficeInfo); From dda6fb12a392486f7008b1aab2bc77b7bfe2d612 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 09:40:49 +0200 Subject: [PATCH 18/85] Remove LogError from LoggerExtensions --- .../Configuration/Grid/GridEditorsConfig.cs | 2 +- .../HealthChecks/ConfigurationService.cs | 4 +- src/Umbraco.Core/IO/MediaFileSystem.cs | 2 +- src/Umbraco.Core/IO/PhysicalFileSystem.cs | 12 +-- src/Umbraco.Core/Logging/LoggerExtensions.cs | 80 ------------------- .../Mapping/ContentPropertyBasicMapper.cs | 2 +- .../Packaging/PackageActionRunner.cs | 4 +- .../Routing/UrlProviderExtensions.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 2 +- ...aseServerRegistrarAndMessengerComponent.cs | 4 +- .../Examine/MediaValueSetBuilder.cs | 2 +- .../HealthCheck/HealthCheckResults.cs | 2 +- .../Install/InstallHelper.cs | 4 +- .../InstallSteps/DatabaseConfigureStep.cs | 2 +- .../Logging/Viewer/SerilogJsonLogViewer.cs | 2 +- .../Manifest/ManifestParser.cs | 2 +- .../Migrations/Install/DatabaseBuilder.cs | 2 +- .../Install/DatabaseSchemaCreator.cs | 2 +- .../DropDownPropertyEditorsMigration.cs | 2 +- .../MergeDateAndDateTimePropertyEditor.cs | 2 +- ...adioAndCheckboxPropertyEditorsMigration.cs | 2 +- .../Packaging/PackageDataInstallation.cs | 8 +- .../Implement/ContentTypeRepository.cs | 2 +- .../Implement/ContentTypeRepositoryBase.cs | 4 +- .../SqlSyntax/SqlServerSyntaxProvider.cs | 2 +- .../Persistence/UmbracoDatabase.cs | 2 +- .../ImageCropperPropertyEditor.cs | 2 +- .../MultiUrlPickerValueEditor.cs | 4 +- .../ValueConverters/GridValueConverter.cs | 2 +- .../ImageCropperValueConverter.cs | 2 +- .../ValueConverters/JsonValueConverter.cs | 2 +- .../Routing/NotFoundHandlerHelper.cs | 2 +- .../Runtime/CoreRuntime.cs | 6 +- .../Runtime/MainDomSemaphoreLock.cs | 2 +- .../Runtime/SqlMainDomLock.cs | 16 ++-- .../Scheduling/BackgroundTaskRunner.cs | 6 +- .../Search/BackgroundIndexRebuilder.cs | 2 +- .../Services/Implement/ContentService.cs | 10 +-- .../LocalizedTextServiceFileSources.cs | 2 +- .../Services/Implement/NotificationService.cs | 2 +- .../Sync/DatabaseServerMessenger.cs | 4 +- .../LiveModelsProvider.cs | 2 +- .../LegacyXmlPublishedCache/PreviewContent.cs | 4 +- .../PublishedMediaCache.cs | 8 +- .../LegacyXmlPublishedCache/XmlStore.cs | 8 +- .../TestHelpers/TestWithDatabaseBase.cs | 2 +- .../Controllers/ContentController.cs | 2 +- .../Controllers/ContentTypeController.cs | 2 +- .../Controllers/DashboardController.cs | 6 +- .../ExamineManagementController.cs | 2 +- .../Controllers/MacrosController.cs | 4 +- .../Controllers/MediaController.cs | 2 +- .../Controllers/PackageInstallController.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 4 +- ...alidateAngularAntiForgeryTokenAttribute.cs | 2 +- .../HealthCheck/HealthCheckController.cs | 2 +- .../PropertyEditors/RteEmbedController.cs | 2 +- .../Install/InstallAuthorizeAttribute.cs | 2 +- .../Middleware/UmbracoRequestMiddleware.cs | 8 +- src/Umbraco.Web/CdfLogger.cs | 4 +- src/Umbraco.Web/ImageProcessorLogger.cs | 2 +- .../Mvc/AdminTokenAuthorizeAttribute.cs | 2 +- .../Security/MembershipProviderBase.cs | 2 +- src/Umbraco.Web/UmbracoApplicationBase.cs | 4 +- .../FileUploadCleanupFilterAttribute.cs | 6 +- .../CDF/ClientDependencyConfiguration.cs | 6 +- 66 files changed, 115 insertions(+), 195 deletions(-) diff --git a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs index 882d9073a9..f0e4a2c71f 100644 --- a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs +++ b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs @@ -47,7 +47,7 @@ namespace Umbraco.Core.Configuration.Grid } catch (Exception ex) { - _logger.LogError(ex, "Could not parse the contents of grid.editors.config.js into a JSON array '{Json}", sourceString); + _logger.LogError(ex, "Could not parse the contents of grid.editors.config.js into a JSON array '{Json}", sourceString); } } diff --git a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs index d8b4eb6c99..557383a8de 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs @@ -61,7 +61,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Config } catch (Exception ex) { - _logger.LogError(ex, "Error trying to get configuration value"); + _logger.LogError(ex, "Error trying to get configuration value"); return new ConfigurationServiceResult { Success = false, @@ -107,7 +107,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Config } catch (Exception ex) { - _logger.LogError(ex, "Error trying to update configuration"); + _logger.LogError(ex, "Error trying to update configuration"); return new ConfigurationServiceResult { Success = false, diff --git a/src/Umbraco.Core/IO/MediaFileSystem.cs b/src/Umbraco.Core/IO/MediaFileSystem.cs index a16c9822c8..a6af47fab5 100644 --- a/src/Umbraco.Core/IO/MediaFileSystem.cs +++ b/src/Umbraco.Core/IO/MediaFileSystem.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.IO } catch (Exception e) { - _logger.LogError(e, "Failed to delete media file '{File}'.", file); + _logger.LogError(e, "Failed to delete media file '{File}'.", file); } }); } diff --git a/src/Umbraco.Core/IO/PhysicalFileSystem.cs b/src/Umbraco.Core/IO/PhysicalFileSystem.cs index 22dfd8c43e..105ddf056c 100644 --- a/src/Umbraco.Core/IO/PhysicalFileSystem.cs +++ b/src/Umbraco.Core/IO/PhysicalFileSystem.cs @@ -87,11 +87,11 @@ namespace Umbraco.Core.IO } catch (UnauthorizedAccessException ex) { - _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); + _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); } catch (DirectoryNotFoundException ex) { - _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); + _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); } return Enumerable.Empty(); @@ -123,7 +123,7 @@ namespace Umbraco.Core.IO } catch (DirectoryNotFoundException ex) { - _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); + _logger.LogError(ex, "Directory not found for '{Path}'", fullPath); } } @@ -203,11 +203,11 @@ namespace Umbraco.Core.IO } catch (UnauthorizedAccessException ex) { - _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); + _logger.LogError(ex, "Not authorized to get directories for '{Path}'", fullPath); } catch (DirectoryNotFoundException ex) { - _logger.LogError(ex, "Directory not found for '{FullPath}'", fullPath); + _logger.LogError(ex, "Directory not found for '{FullPath}'", fullPath); } return Enumerable.Empty(); @@ -240,7 +240,7 @@ namespace Umbraco.Core.IO } catch (FileNotFoundException ex) { - _logger.LogError(ex.InnerException, "DeleteFile failed with FileNotFoundException for '{Path}'", fullPath); + _logger.LogError(ex.InnerException, "DeleteFile failed with FileNotFoundException for '{Path}'", fullPath); } } diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index efc17fd623..0c9eed8671 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -16,46 +16,6 @@ namespace Umbraco.Core.Logging public static bool IsEnabled(this ILogger logger, LogLevel level) => logger.IsEnabled(typeof(T), level); - /// - /// Logs an error message with an exception. - /// - /// The reporting type. - /// The logger. - /// A message. - /// An exception. - public static void LogError(this ILogger logger, Exception exception, string message) - => logger.LogError(exception, message); - - /// - /// Logs an error message with an exception. - /// - /// The reporting type. - /// The logger. - /// An exception. - /// A message template. - /// Property values. - public static void LogError(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.LogError(exception, messageTemplate, propertyValues); - - /// - /// Logs an error message. - /// - /// The reporting type. - /// The logger. - /// A message. - public static void LogError(this ILogger logger, string message) - => logger.LogError(message); - - /// - /// Logs an error message. - /// - /// The reporting type. - /// The logger. - /// A message template. - /// Property values. - public static void LogError(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogError(messageTemplate, propertyValues); - /// /// Logs a warning message. /// @@ -96,25 +56,6 @@ namespace Umbraco.Core.Logging public static void LogWarning(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) => logger.LogWarning(exception, messageTemplate, propertyValues); - /// - /// Logs an information message. - /// - /// The reporting type. - /// The logger. - /// A message. - public static void LogInformation(this ILogger logger, string message) - => logger.LogInformation(message); - - /// - /// Logs a information message. - /// - /// The reporting type - /// The logger. - /// A message template. - /// Property values. - public static void LogInformation(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogInformation(messageTemplate, propertyValues); - /// /// Logs a debugging message. /// @@ -143,26 +84,5 @@ namespace Umbraco.Core.Logging /// Property values. public static void Verbose(this ILogger logger, string messageTemplate, params object[] propertyValues) => logger.LogTrace(messageTemplate, propertyValues); - - /// - /// Logs a fatal message. - /// - /// The reporting type. - /// The logger. - /// An exception. - /// A message. - public static void Fatal(this ILogger logger, Exception exception, string message) - => logger.LogCritical(exception, message); - - /// - /// Logs a fatal message. - /// - /// The reporting type. - /// The logger. - /// An exception. - /// A message template. - /// Property values. - public static void Fatal(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.LogCritical(exception, messageTemplate, propertyValues); } } diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs index 2f97a76b3c..cddd8a1a81 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs @@ -38,7 +38,7 @@ namespace Umbraco.Web.Models.Mapping var editor = _propertyEditors[property.PropertyType.PropertyEditorAlias]; if (editor == null) { - _logger.LogError>( + _logger.LogError( new NullReferenceException("The property editor with alias " + property.PropertyType.PropertyEditorAlias + " does not exist"), "No property editor '{PropertyEditorAlias}' found, converting to a Label", property.PropertyType.PropertyEditorAlias); diff --git a/src/Umbraco.Core/Packaging/PackageActionRunner.cs b/src/Umbraco.Core/Packaging/PackageActionRunner.cs index 6054f6067d..b99e0c0062 100644 --- a/src/Umbraco.Core/Packaging/PackageActionRunner.cs +++ b/src/Umbraco.Core/Packaging/PackageActionRunner.cs @@ -34,7 +34,7 @@ namespace Umbraco.Core.Packaging catch (Exception ex) { e.Add($"{ipa.Alias()} - {ex.Message}"); - _logger.LogError(ex, "Error loading package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); + _logger.LogError(ex, "Error loading package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); } } @@ -56,7 +56,7 @@ namespace Umbraco.Core.Packaging catch (Exception ex) { e.Add($"{ipa.Alias()} - {ex.Message}"); - _logger.LogError(ex, "Error undoing package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); + _logger.LogError(ex, "Error undoing package action '{PackageActionAlias}' for package {PackageName}", ipa.Alias(), packageName); } } errors = e; diff --git a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs index 18658c8194..66cdd61aa6 100644 --- a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs +++ b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs @@ -123,7 +123,7 @@ namespace Umbraco.Web.Routing } catch (Exception ex) { - logger.LogError(ex, "GetUrl exception."); + logger.LogError(ex, "GetUrl exception."); url = "#ex"; } diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index 1a81a2fb71..195bc7ff72 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -121,7 +121,7 @@ namespace Umbraco.Core.Runtime } catch (Exception e) { - _logger.LogError(e, "Error while running callback"); + _logger.LogError(e, "Error while running callback"); continue; } } diff --git a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs index 200e3a578c..6aba70530d 100644 --- a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs @@ -225,7 +225,7 @@ namespace Umbraco.Web.Compose } catch (Exception e) { - _logger.LogError(e, "Failed (will repeat)."); + _logger.LogError(e, "Failed (will repeat)."); } return true; // repeat } @@ -268,7 +268,7 @@ namespace Umbraco.Web.Compose } catch (Exception ex) { - _logger.LogError(ex, "Failed to update server record in database."); + _logger.LogError(ex, "Failed to update server record in database."); return false; // probably stop if we have an error } } diff --git a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs index 5103a7dd64..55811c8906 100644 --- a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs @@ -55,7 +55,7 @@ namespace Umbraco.Examine } catch (Exception ex) { - _logger.LogError(ex, $"Could not Deserialize ImageCropperValue for item with key {m.Key} "); + _logger.LogError(ex, $"Could not Deserialize ImageCropperValue for item with key {m.Key} "); } if (cropper != null) diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index 33cb0f204f..2e055f53ea 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -27,7 +27,7 @@ namespace Umbraco.Web.HealthCheck } catch (Exception ex) { - Logger.LogError(ex, "Error running scheduled health check: {HealthCheckName}", t.Name); + Logger.LogError(ex, "Error running scheduled health check: {HealthCheckName}", t.Name); var message = $"Health check failed with exception: {ex.Message}. See logs for details."; return new List { diff --git a/src/Umbraco.Infrastructure/Install/InstallHelper.cs b/src/Umbraco.Infrastructure/Install/InstallHelper.cs index aaba1b458b..08d4d40b92 100644 --- a/src/Umbraco.Infrastructure/Install/InstallHelper.cs +++ b/src/Umbraco.Infrastructure/Install/InstallHelper.cs @@ -103,7 +103,7 @@ namespace Umbraco.Web.Install } catch (Exception ex) { - _logger.LogError(ex, "An error occurred in InstallStatus trying to check upgrades"); + _logger.LogError(ex, "An error occurred in InstallStatus trying to check upgrades"); } } @@ -154,7 +154,7 @@ namespace Umbraco.Web.Install } catch (AggregateException ex) { - _logger.LogError(ex, "Could not download list of available starter kits"); + _logger.LogError(ex, "Could not download list of available starter kits"); } return packages; diff --git a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs index 68a23bf6b2..3b798ec767 100644 --- a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs +++ b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs @@ -119,7 +119,7 @@ namespace Umbraco.Web.Install.InstallSteps } catch (Exception ex) { - _logger.LogError(ex, "An error occurred, reconfiguring..."); + _logger.LogError(ex, "An error occurred, reconfiguring..."); //something went wrong, could not connect so probably need to reconfigure return true; } diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs index bde6d8e919..a985d98453 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs @@ -128,7 +128,7 @@ namespace Umbraco.Core.Logging.Viewer { // As we are reading/streaming one line at a time in the JSON file // Thus we can not report the line number, as it will always be 1 - _logger.LogError(ex, "Unable to parse a line in the JSON log file"); + _logger.LogError(ex, "Unable to parse a line in the JSON log file"); evt = null; return true; diff --git a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs index 05d6ab73fc..40c97c16a9 100644 --- a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs +++ b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs @@ -115,7 +115,7 @@ namespace Umbraco.Core.Manifest } catch (Exception e) { - _logger.LogError(e, "Failed to parse manifest at '{Path}', ignoring.", path); + _logger.LogError(e, "Failed to parse manifest at '{Path}', ignoring.", path); } } diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index 1cc8115664..d7672f78fd 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -449,7 +449,7 @@ namespace Umbraco.Core.Migrations.Install private Result HandleInstallException(Exception ex) { - _logger.LogError(ex, "Database configuration failed"); + _logger.LogError(ex, "Database configuration failed"); if (_databaseSchemaValidationResult != null) { diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs index a7417eacb6..195d02fac3 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs @@ -111,7 +111,7 @@ namespace Umbraco.Core.Migrations.Install { //swallow this for now, not sure how best to handle this with diff databases... though this is internal // and only used for unit tests. If this fails its because the table doesn't exist... generally! - _logger.LogError(ex, "Could not drop table {TableName}", tableName); + _logger.LogError(ex, "Could not drop table {TableName}", tableName); } } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs index 6e88ab4db2..1110cbaa0e 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.LogError( + Logger.LogError( ex, "Invalid configuration: \"{Configuration}\", cannot convert editor.", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs index 4efb685cf9..7c2164f58a 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs @@ -40,7 +40,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.LogError( + Logger.LogError( ex, "Invalid property editor configuration detected: \"{Configuration}\", cannot convert editor, values will be cleared", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs index 35e5f71ffe..04b7ad8aef 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs @@ -55,7 +55,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception ex) { - Logger.LogError( + Logger.LogError( ex, "Invalid configuration: \"{Configuration}\", cannot convert editor.", dataType.Configuration); diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index 027b74ebdd..94cc5720cf 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -539,7 +539,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _contentTypeService.CreateContainer(-1, rootFolder); if (tryCreateFolder == false) { - _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); throw tryCreateFolder.Exception; } var rootFolderId = tryCreateFolder.Result.Entity.Id; @@ -573,7 +573,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _contentTypeService.CreateContainer(current.Id, folderName); if (tryCreateFolder == false) { - _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); throw tryCreateFolder.Exception; } return _contentTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); @@ -952,7 +952,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _dataTypeService.CreateContainer(-1, rootFolder); if (tryCreateFolder == false) { - _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", rootFolder); throw tryCreateFolder.Exception; } current = _dataTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); @@ -985,7 +985,7 @@ namespace Umbraco.Core.Packaging var tryCreateFolder = _dataTypeService.CreateContainer(current.Id, folderName); if (tryCreateFolder == false) { - _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); + _logger.LogError(tryCreateFolder.Exception, "Could not create folder: {FolderName}", folderName); throw tryCreateFolder.Exception; } return _dataTypeService.GetContainer(tryCreateFolder.Result.Entity.Id); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs index 94d7b8c076..2e165b5600 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs @@ -226,7 +226,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement if (string.IsNullOrWhiteSpace(entity.Alias)) { var ex = new Exception($"ContentType '{entity.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.LogError("ContentType '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", entity.Name); + Logger.LogError("ContentType '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", entity.Name); throw ex; } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs index b481ee2dc7..a1bca5e6c1 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs @@ -1216,7 +1216,7 @@ AND umbracoNode.id <> @id", { var ex = new InvalidOperationException($"Property Type '{pt.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.LogError>("Property Type '{PropertyTypeName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", + Logger.LogError("Property Type '{PropertyTypeName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", pt.Name); throw ex; @@ -1229,7 +1229,7 @@ AND umbracoNode.id <> @id", { var ex = new InvalidOperationException($"{typeof(TEntity).Name} '{entity.Name}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias."); - Logger.LogError>("{EntityTypeName} '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", + Logger.LogError("{EntityTypeName} '{EntityName}' cannot have an empty Alias. This is most likely due to invalid characters stripped from the Alias.", typeof(TEntity).Name, entity.Name); diff --git a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs index 375ddac767..0c69fd7ebc 100644 --- a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs +++ b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs @@ -161,7 +161,7 @@ namespace Umbraco.Core.Persistence.SqlSyntax } catch (Exception e) { - logger.LogError(e, "Failed to detected SqlServer version."); + logger.LogError(e, "Failed to detected SqlServer version."); version = new ServerVersionInfo(); // all unknown } } diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs index deeaa4bc5f..68f85df25a 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs @@ -226,7 +226,7 @@ namespace Umbraco.Core.Persistence protected override void OnException(Exception ex) { - _logger.LogError(ex, "Exception ({InstanceId}).", InstanceId); + _logger.LogError(ex, "Exception ({InstanceId}).", InstanceId); _logger.Debug("At:\r\n{StackTrace}", Environment.StackTrace); if (EnableSqlTrace == false) _logger.Debug("Sql:\r\n{Sql}", CommandToString(LastSQL, LastArgs)); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs index 2a00d2f788..f2e231c390 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs @@ -103,7 +103,7 @@ namespace Umbraco.Web.PropertyEditors catch (Exception ex) { if (writeLog) - Logger.LogError(ex, "Could not parse image cropper value '{Json}'", value); + Logger.LogError(ex, "Could not parse image cropper value '{Json}'", value); return null; } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs index 67feea6cac..30d1197eb6 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs @@ -122,7 +122,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.LogError("Error getting links", ex); + _logger.LogError("Error getting links", ex); } return base.ToEditor(property, culture, segment); @@ -157,7 +157,7 @@ namespace Umbraco.Web.PropertyEditors } catch (Exception ex) { - _logger.LogError("Error saving links", ex); + _logger.LogError("Error saving links", ex); } return base.FromEditor(editorValue, currentValue); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs index ae34e4fe51..8addda00dd 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs @@ -92,7 +92,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters } catch (Exception ex) { - Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); + Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs index 95352bffcf..2feb676549 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs @@ -44,7 +44,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters catch (Exception ex) { // cannot deserialize, assume it may be a raw image url - Current.Logger.LogError(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); + Current.Logger.LogError(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); value = new ImageCropperValue { Src = sourceString }; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs index 6354b6c1a7..6ce8a47925 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs @@ -58,7 +58,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters } catch (Exception ex) { - Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); + Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); } } diff --git a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs index d5b783e324..a46b0be150 100644 --- a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs +++ b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs @@ -107,7 +107,7 @@ namespace Umbraco.Web.Routing } catch (Exception ex) { - Current.Logger.LogError(ex, "Could not parse xpath expression: {ContentXPath}", errorPage.ContentXPath); + Current.Logger.LogError(ex, "Could not parse xpath expression: {ContentXPath}", errorPage.ContentXPath); return null; } } diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 1b94b9239d..3fb07b6841 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -34,7 +34,7 @@ namespace Umbraco.Core.Runtime private readonly IConnectionStrings _connectionStrings; public CoreRuntime( - Configs configs, + Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, @@ -59,7 +59,7 @@ namespace Umbraco.Core.Runtime _loggerFactory = loggerFactory; _umbracoBootPermissionChecker = umbracoBootPermissionChecker; - + Logger = logger; MainDom = mainDom; TypeFinder = typeFinder; @@ -275,7 +275,7 @@ namespace Umbraco.Core.Runtime var msg = "Unhandled exception in AppDomain"; if (isTerminating) msg += " (terminating)"; msg += "."; - Logger.LogError(exception, msg); + Logger.LogError(exception, msg); }; } diff --git a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs index 50c4b91671..37c1244e08 100644 --- a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs @@ -52,7 +52,7 @@ namespace Umbraco.Core.Runtime } catch (TimeoutException ex) { - _logger.LogError(ex.Message); + _logger.LogError(ex.Message); return Task.FromResult(false); } finally diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index 20d720ae79..e50b3e9416 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -78,7 +78,7 @@ namespace Umbraco.Core.Runtime { if (IsLockTimeoutException(ex)) { - _logger.LogError(ex, "Sql timeout occurred, could not acquire MainDom."); + _logger.LogError(ex, "Sql timeout occurred, could not acquire MainDom."); _errorDuringAcquiring = true; return false; } @@ -103,7 +103,7 @@ namespace Umbraco.Core.Runtime catch (Exception ex) { // unexpected - _logger.LogError(ex, "Unexpected error, cannot acquire MainDom"); + _logger.LogError(ex, "Unexpected error, cannot acquire MainDom"); _errorDuringAcquiring = true; return false; } @@ -186,7 +186,7 @@ namespace Umbraco.Core.Runtime } catch (Exception ex) { - _logger.LogError(ex, "Unexpected error during listening."); + _logger.LogError(ex, "Unexpected error during listening."); // We need to keep on listening unless we've been notified by our own AppDomain to shutdown since // we don't want to shutdown resources controlled by MainDom inadvertently. We'll just keep listening otherwise. @@ -277,12 +277,12 @@ namespace Umbraco.Core.Runtime { if (IsLockTimeoutException(ex as SqlException)) { - _logger.LogError(ex, "Sql timeout occurred, waiting for existing MainDom is canceled."); + _logger.LogError(ex, "Sql timeout occurred, waiting for existing MainDom is canceled."); _errorDuringAcquiring = true; return false; } // unexpected - _logger.LogError(ex, "Unexpected error, waiting for existing MainDom is canceled."); + _logger.LogError(ex, "Unexpected error, waiting for existing MainDom is canceled."); _errorDuringAcquiring = true; return false; } @@ -321,11 +321,11 @@ namespace Umbraco.Core.Runtime if (IsLockTimeoutException(ex as SqlException)) { // something is wrong, we cannot acquire, not much we can do - _logger.LogError(ex, "Sql timeout occurred, could not forcibly acquire MainDom."); + _logger.LogError(ex, "Sql timeout occurred, could not forcibly acquire MainDom."); _errorDuringAcquiring = true; return false; } - _logger.LogError(ex, "Unexpected error, could not forcibly acquire MainDom."); + _logger.LogError(ex, "Unexpected error, could not forcibly acquire MainDom."); _errorDuringAcquiring = true; return false; } @@ -409,7 +409,7 @@ namespace Umbraco.Core.Runtime } catch (Exception ex) { - _logger.LogError(ex, "Unexpected error during dipsose."); + _logger.LogError(ex, "Unexpected error during dipsose."); } finally { diff --git a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs index ae753883fc..4bcc179fc9 100644 --- a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs +++ b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs @@ -414,7 +414,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.LogError(ex, "{LogPrefix} Task runner exception", _logPrefix); + _logger.LogError(ex, "{LogPrefix} Task runner exception", _logPrefix); } } } @@ -573,7 +573,7 @@ namespace Umbraco.Web.Scheduling catch (Exception ex) { - _logger.LogError(ex, "{LogPrefix} Task has failed", _logPrefix); + _logger.LogError(ex, "{LogPrefix} Task has failed", _logPrefix); } } @@ -617,7 +617,7 @@ namespace Umbraco.Web.Scheduling } catch (Exception ex) { - _logger.LogError(ex, "{LogPrefix} {Name} exception occurred", _logPrefix, name); + _logger.LogError(ex, "{LogPrefix} {Name} exception occurred", _logPrefix, name); } } diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index ca1f9c3bf4..2fcad84241 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -97,7 +97,7 @@ namespace Umbraco.Web.Search } catch (Exception ex) { - _logger.LogError(ex, "Failed to rebuild empty indexes."); + _logger.LogError(ex, "Failed to rebuild empty indexes."); } } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 266a18f931..56bf1ebe94 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -1417,7 +1417,7 @@ namespace Umbraco.Core.Services.Implement var result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1427,7 +1427,7 @@ namespace Umbraco.Core.Services.Implement d.ContentSchedule.Clear(ContentScheduleAction.Expire, date); var result = Unpublish(d, userId: d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } } @@ -1498,7 +1498,7 @@ namespace Umbraco.Core.Services.Implement result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1512,7 +1512,7 @@ namespace Umbraco.Core.Services.Implement : SaveAndPublish(d, userId: d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -3164,7 +3164,7 @@ namespace Umbraco.Core.Services.Implement if (rollbackSaveResult.Success == false) { //Log the error/warning - Logger.LogError("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); + Logger.LogError("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); } else { diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 823f5cecad..a069e85410 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -206,7 +206,7 @@ namespace Umbraco.Core.Services.Implement } catch (Exception ex) { - _logger.LogError(ex, "Could not load file into XML {File}", supplementaryFile.File.FullName); + _logger.LogError(ex, "Could not load file into XML {File}", supplementaryFile.File.FullName); continue; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs index bac7cf7d8f..d17569d308 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs @@ -523,7 +523,7 @@ namespace Umbraco.Core.Services.Implement } catch (Exception ex) { - _logger.LogError(ex, "An error occurred sending notification"); + _logger.LogError(ex, "An error occurred sending notification"); } finally { diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index a557244b62..1dc2af526b 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -361,7 +361,7 @@ namespace Umbraco.Core.Sync } catch (JsonException ex) { - Logger.LogError(ex, "Failed to deserialize instructions ({DtoId}: '{DtoInstructions}').", + Logger.LogError(ex, "Failed to deserialize instructions ({DtoId}: '{DtoInstructions}').", dto.Id, dto.Instructions); @@ -419,7 +419,7 @@ namespace Umbraco.Core.Sync //} catch (Exception ex) { - Logger.LogError( + Logger.LogError( ex, "DISTRIBUTED CACHE IS NOT UPDATED. Failed to execute instructions ({DtoId}: '{DtoInstructions}'). Instruction is being skipped/ignored", dto.Id, diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index a7bef79cee..75573a2272 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -97,7 +97,7 @@ namespace Umbraco.ModelsBuilder.Embedded catch (Exception e) { _mbErrors.Report("Failed to build Live models.", e); - _logger.LogError("Failed to generate models.", e); + _logger.LogError("Failed to generate models.", e); } finally { diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs index 5ccc070798..96f27a7051 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs @@ -41,7 +41,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.LogError(ex, "Could not load preview set {PreviewSet} for user {UserId}.", _previewSet, _userId); + Current.Logger.LogError(ex, "Could not load preview set {PreviewSet} for user {UserId}.", _previewSet, _userId); ClearPreviewSet(); @@ -147,7 +147,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.LogError(ex, "Couldn't delete preview set {FileName} for user {UserId}", file.Name, userId); + Current.Logger.LogError(ex, "Couldn't delete preview set {FileName} for user {UserId}", file.Name, userId); } } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs index c0a6dc4f33..ee59b792dc 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs @@ -134,13 +134,13 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache //See this thread: http://examine.cdodeplex.com/discussions/264341 //Catch the exception here for the time being, and just fallback to GetMedia // TODO: Need to fix examine in LB scenarios! - Current.Logger.LogError(ex, "Could not load data from Examine index for media"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media"); } else if (ex is AlreadyClosedException) { //If the app domain is shutting down and the site is under heavy load the index reader will be closed and it really cannot //be re-opened since the app domain is shutting down. In this case we have no option but to try to load the data from the db. - Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); } else throw; } @@ -302,13 +302,13 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache //See this thread: http://examine.cdodeplex.com/discussions/264341 //Catch the exception here for the time being, and just fallback to GetMedia // TODO: Need to fix examine in LB scenarios! - Current.Logger.LogError(ex, "Could not load data from Examine index for media"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media"); } else if (ex is AlreadyClosedException) { //If the app domain is shutting down and the site is under heavy load the index reader will be closed and it really cannot //be re-opened since the app domain is shutting down. In this case we have no option but to try to load the data from the db. - Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); + Current.Logger.LogError(ex, "Could not load data from Examine index for media, the app domain is most likely in a shutdown state"); } else throw; } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index 1215f2d489..b15a869821 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -415,7 +415,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache } catch (Exception ex) { - Current.Logger.LogError(ex, "Failed to build a DTD for the Xml cache."); + Current.Logger.LogError(ex, "Failed to build a DTD for the Xml cache."); } dtd.AppendLine("]>"); @@ -705,7 +705,7 @@ AND (umbracoNode.id=@id)"; // if something goes wrong remove the file DeleteXmlFile(); - Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); } } @@ -745,7 +745,7 @@ AND (umbracoNode.id=@id)"; // if something goes wrong remove the file DeleteXmlFile(); - Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to save Xml to file '{FileName}'.", _xmlFileName); } } @@ -802,7 +802,7 @@ AND (umbracoNode.id=@id)"; } catch (Exception ex) { - Current.Logger.LogError(ex, "Failed to load Xml from file '{FileName}'.", _xmlFileName); + Current.Logger.LogError(ex, "Failed to load Xml from file '{FileName}'.", _xmlFileName); try { DeleteXmlFile(); diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index 2212ede7cb..e9315a1435 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -344,7 +344,7 @@ namespace Umbraco.Tests.TestHelpers } catch (Exception ex) { - Logger.LogError(ex, "Could not remove the old database file"); + Logger.LogError(ex, "Could not remove the old database file"); // swallow this exception - that's because a sub class might require further teardown logic onFail?.Invoke(ex); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs index c4a56830db..7ef7b75cea 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs @@ -1628,7 +1628,7 @@ namespace Umbraco.Web.Editors } catch (Exception ex) { - Logger.LogError(ex, "Could not update content sort order"); + Logger.LogError(ex, "Could not update content sort order"); throw; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs index dc21196158..53497225b6 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs @@ -632,7 +632,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(ex, "Error cleaning up temporary udt file in App_Data: {File}", filePath); + _logger.LogError(ex, "Error cleaning up temporary udt file in App_Data: {File}", filePath); } return Ok(); diff --git a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs index 5e4217ed8d..fca0a4da1a 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs @@ -98,7 +98,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard content from {Url}", url); + _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard content from {Url}", url); //it's still new JObject() - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); @@ -136,7 +136,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard CSS from {Url}", url); + _logger.LogError(ex.InnerException ?? ex, "Error getting dashboard CSS from {Url}", url); //it's still string.Empty - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); @@ -199,7 +199,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (HttpRequestException ex) { - _logger.LogError(ex.InnerException ?? ex, "Error getting remote dashboard data from {UrlPrefix}{Url}", urlPrefix, url); + _logger.LogError(ex.InnerException ?? ex, "Error getting remote dashboard data from {UrlPrefix}{Url}", urlPrefix, url); //it's still string.Empty - we return it like this to avoid error codes which triggers UI warnings _appCaches.RuntimeCache.InsertCacheItem(key, () => result, new TimeSpan(0, 5, 0)); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index e8646f4d47..f64360efc7 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -162,7 +162,7 @@ namespace Umbraco.Web.BackOffice.Controllers { //ensure it's not listening index.IndexOperationComplete -= Indexer_IndexOperationComplete; - _logger.LogError(ex, "An error occurred rebuilding index"); + _logger.LogError(ex, "An error occurred rebuilding index"); var response = new ConflictObjectResult("The index could not be rebuilt at this time, most likely there is another thread currently writing to the index. Error: {ex}"); HttpContext.SetReasonPhrase("Could Not Rebuild"); diff --git a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs index f7d00585d1..43a4275591 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs @@ -102,7 +102,7 @@ namespace Umbraco.Web.BackOffice.Controllers catch (Exception exception) { const string errorMessage = "Error creating macro"; - _logger.LogError(exception, errorMessage); + _logger.LogError(exception, errorMessage); throw HttpResponseException.CreateNotificationValidationErrorResponse(errorMessage); } } @@ -226,7 +226,7 @@ namespace Umbraco.Web.BackOffice.Controllers catch (Exception exception) { const string errorMessage = "Error creating macro"; - _logger.LogError(exception, errorMessage); + _logger.LogError(exception, errorMessage); throw HttpResponseException.CreateNotificationValidationErrorResponse(errorMessage); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs index cdac1cdf8f..5bf7bfe30c 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs @@ -629,7 +629,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - Logger.LogError(ex, "Could not update media sort order"); + Logger.LogError(ex, "Could not update media sort order"); throw; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs index b39da8862a..5a1114406f 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs @@ -99,7 +99,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(ex, "Failed to uninstall."); + _logger.LogError(ex, "Failed to uninstall."); throw; } diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index 9e14a4f5db..c9d7789797 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -75,7 +75,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - _logger.LogError(ex, + _logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } } @@ -129,7 +129,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (Exception ex) { - _logger.LogError(ex, + _logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } diff --git a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs index 941d9153a1..339127953c 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs @@ -104,7 +104,7 @@ namespace Umbraco.Web.BackOffice.Filters } catch (AntiforgeryValidationException ex) { - _logger.LogError(ex, "Could not validate XSRF token"); + _logger.LogError(ex, "Could not validate XSRF token"); return false; } } diff --git a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs index 013dadcabc..586768b899 100644 --- a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs +++ b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs @@ -71,7 +71,7 @@ namespace Umbraco.Web.BackOffice.Controllers } catch (Exception ex) { - _logger.LogError(ex, "Exception in health check: {HealthCheckName}", check.Name); + _logger.LogError(ex, "Exception in health check: {HealthCheckName}", check.Name); throw; } } diff --git a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs index 95660a721a..88b92fc2e2 100644 --- a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs +++ b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs @@ -63,7 +63,7 @@ namespace Umbraco.Web.BackOffice.PropertyEditors } catch(Exception ex) { - _logger.LogError(ex, "Error embedding url {Url} - width: {Width} height: {Height}", url, width, height); + _logger.LogError(ex, "Error embedding url {Url} - width: {Width} height: {Height}", url, width, height); result.OEmbedStatus = OEmbedStatus.Error; } diff --git a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs index dd75aea739..9b5b19f2fc 100644 --- a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs +++ b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs @@ -45,7 +45,7 @@ namespace Umbraco.Web.Common.Install } catch (Exception ex) { - logger.LogError(ex, "An error occurred determining authorization"); + logger.LogError(ex, "An error occurred determining authorization"); return false; } } diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index e38c91b1f5..48360650d7 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -53,7 +53,7 @@ namespace Umbraco.Web.Common.Middleware try { if (umbracoContextReference.UmbracoContext.IsFrontEndUmbracoRequest) - { + { LogHttpRequest.TryGetCurrentHttpRequestId(out var httpRequestId, _requestCache); _logger.Verbose("Begin request [{HttpRequestId}]: {RequestUrl}", httpRequestId, requestUri); } @@ -65,7 +65,7 @@ namespace Umbraco.Web.Common.Middleware catch (Exception ex) { // try catch so we don't kill everything in all requests - _logger.LogError(ex.Message); + _logger.LogError(ex.Message); } finally { @@ -128,7 +128,7 @@ namespace Umbraco.Web.Common.Middleware } catch (Exception ex) { - logger.LogError("Could not dispose item with key " + k, ex); + logger.LogError("Could not dispose item with key " + k, ex); } try { @@ -136,7 +136,7 @@ namespace Umbraco.Web.Common.Middleware } catch (Exception ex) { - logger.LogError("Could not dispose item key " + k, ex); + logger.LogError("Could not dispose item key " + k, ex); } } } diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index 07d4eca0ea..a89035e220 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -36,12 +36,12 @@ namespace Umbraco.Web public void Error(string msg, Exception ex) { - _logger.LogError(ex, msg); + _logger.LogError(ex, msg); } public void Fatal(string msg, Exception ex) { - _logger.LogError(ex, msg); + _logger.LogError(ex, msg); } } } diff --git a/src/Umbraco.Web/ImageProcessorLogger.cs b/src/Umbraco.Web/ImageProcessorLogger.cs index 78c0cd231e..bdbf95ed38 100644 --- a/src/Umbraco.Web/ImageProcessorLogger.cs +++ b/src/Umbraco.Web/ImageProcessorLogger.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web { // Using LogHelper since the ImageProcessor logger expects a parameterless constructor. var message = $"{callerName} {lineNumber} : {text}"; - Current.Logger.LogError(new ImageProcessingException(message).Message); + Current.Logger.LogError(new ImageProcessingException(message).Message); } /// diff --git a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs index eac73fc7da..24aef4c370 100644 --- a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs +++ b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs @@ -119,7 +119,7 @@ namespace Umbraco.Web.Mvc } catch (Exception ex) { - Logger.LogError(ex, "Failed to format passed in token value"); + Logger.LogError(ex, "Failed to format passed in token value"); return false; } } diff --git a/src/Umbraco.Web/Security/MembershipProviderBase.cs b/src/Umbraco.Web/Security/MembershipProviderBase.cs index e3deda725c..7e81008374 100644 --- a/src/Umbraco.Web/Security/MembershipProviderBase.cs +++ b/src/Umbraco.Web/Security/MembershipProviderBase.cs @@ -257,7 +257,7 @@ namespace Umbraco.Web.Security if ((PasswordFormat == MembershipPasswordFormat.Hashed) && EnablePasswordRetrieval) { var ex = new ProviderException("Provider can not retrieve a hashed password"); - Current.Logger.LogError(ex, "Cannot specify a Hashed password format with the enabledPasswordRetrieval option set to true"); + Current.Logger.LogError(ex, "Cannot specify a Hashed password format with the enabledPasswordRetrieval option set to true"); throw ex; } diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 8d40a36240..ed5c2115d4 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -294,7 +294,7 @@ namespace Umbraco.Web // ignore HTTP errors if (exception.GetType() == typeof(HttpException)) return; - Current.Logger.LogError(exception, "An unhandled exception occurred"); + Current.Logger.LogError(exception, "An unhandled exception occurred"); } // called by ASP.NET (auto event wireup) at any phase in the application life cycle @@ -317,7 +317,7 @@ namespace Umbraco.Web } catch (Exception ex) { - Current.Logger.LogError(ex, "Error in {Name} handler.", name); + Current.Logger.LogError(ex, "Error in {Name} handler.", name); throw; } } diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index 1180cbd9d6..b441a6228a 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -57,7 +57,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); + Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } } } @@ -89,7 +89,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.LogError(ex, "Could not acquire actionExecutedContext.Response.Content"); + Current.Logger.LogError(ex, "Could not acquire actionExecutedContext.Response.Content"); return; } @@ -119,7 +119,7 @@ namespace Umbraco.Web.WebApi.Filters } catch (System.Exception ex) { - Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); + Current.Logger.LogError(ex, "Could not delete temp file {FileName}", f.TempFilePath); } //clear out the temp path so it's not returned in the response diff --git a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs index 8532c3ae0d..b73cee7524 100644 --- a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs +++ b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs @@ -91,7 +91,7 @@ namespace Umbraco.Web.WebAssets.CDF } catch (Exception ex) { - _logger.LogError(ex, "Couldn't update ClientDependency version number"); + _logger.LogError(ex, "Couldn't update ClientDependency version number"); } return false; @@ -124,7 +124,7 @@ namespace Umbraco.Web.WebAssets.CDF catch (Exception ex) { //invalid path format or something... try/catch to be safe - _logger.LogError(ex, "Could not get path from ClientDependency.config"); + _logger.LogError(ex, "Could not get path from ClientDependency.config"); } var success = true; @@ -140,7 +140,7 @@ namespace Umbraco.Web.WebAssets.CDF catch (Exception ex) { // Something could be locking the directory or the was another error, making sure we don't break the upgrade installer - _logger.LogError(ex, "Could not clear temp files"); + _logger.LogError(ex, "Could not clear temp files"); success = false; } } From 488093add39ea8cf8956e80fcee8ea491b43fa62 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 09:58:07 +0200 Subject: [PATCH 19/85] Remove LogWarning from LoggerExtensions --- .../ContentAppFactoryCollection.cs | 2 +- src/Umbraco.Core/Logging/LoggerExtensions.cs | 50 ------------------- src/Umbraco.Core/Models/Member.cs | 18 +++---- .../Packaging/PackageDefinitionXmlParser.cs | 2 +- .../Packaging/PackagesRepository.cs | 2 +- .../Routing/ContentFinderByUrlAndTemplate.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 4 +- .../BatchedDatabaseServerMessenger.cs | 2 +- .../Cache/DistributedCacheBinder.cs | 2 +- .../HealthCheck/HealthCheckResults.cs | 2 +- .../Upgrade/V_8_0_0/DataTypeMigration.cs | 6 +-- .../Models/Mapping/DataTypeMapDefinition.cs | 2 +- .../Models/Mapping/MacroMapDefinition.cs | 2 +- .../Packaging/PackageDataInstallation.cs | 8 +-- .../Persistence/DbConnectionExtensions.cs | 2 +- .../Implement/ContentRepositoryBase.cs | 2 +- .../Implement/ContentTypeRepositoryBase.cs | 2 +- .../Implement/LanguageRepository.cs | 2 +- .../BlockEditorPropertyEditor.cs | 4 +- .../PropertyEditors/DataValueEditor.cs | 2 +- .../ImageCropperPropertyValueEditor.cs | 2 +- .../NestedContentPropertyEditor.cs | 4 +- .../Runtime/SqlMainDomLock.cs | 2 +- src/Umbraco.Infrastructure/RuntimeState.cs | 2 +- .../Services/Implement/ContentService.cs | 2 +- .../Implement/LocalizedTextService.cs | 8 +-- .../LocalizedTextServiceFileSources.cs | 4 +- .../Services/Implement/UserService.cs | 2 +- .../Sync/DatabaseServerMessenger.cs | 6 +-- .../LiveModelsProvider.cs | 2 +- .../DataSource/DatabaseDataSource.cs | 4 +- .../DictionaryPublishedContent.cs | 2 +- .../PublishedMediaCache.cs | 4 +- .../LegacyXmlPublishedCache/XmlStore.cs | 4 +- .../XmlStoreFilePersister.cs | 2 +- .../Controllers/AuthenticationController.cs | 4 +- .../Controllers/BackOfficeController.cs | 12 ++--- .../Controllers/ContentController.cs | 4 +- .../Controllers/ContentControllerBase.cs | 2 +- .../Controllers/ContentTypeController.cs | 2 +- .../Controllers/MediaController.cs | 2 +- .../Filters/ContentModelValidator.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 12 ++--- .../Security/PasswordChanger.cs | 4 +- .../Trees/ContentTreeControllerBase.cs | 2 +- .../Middleware/UmbracoRequestMiddleware.cs | 4 +- src/Umbraco.Web/CdfLogger.cs | 2 +- .../Editors/BackOfficeController.cs | 4 +- src/Umbraco.Web/Editors/PasswordChanger.cs | 4 +- src/Umbraco.Web/Mvc/RenderMvcController.cs | 2 +- src/Umbraco.Web/Mvc/RenderRouteHandler.cs | 2 +- src/Umbraco.Web/Security/MembershipHelper.cs | 4 +- .../Providers/UmbracoMembershipProvider.cs | 4 +- src/Umbraco.Web/UmbracoInjectedModule.cs | 4 +- src/Umbraco.Web/UmbracoModule.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 14 +++--- 56 files changed, 105 insertions(+), 155 deletions(-) diff --git a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs index d79485fe7e..b4c20ea519 100644 --- a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs +++ b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs @@ -51,7 +51,7 @@ namespace Umbraco.Web.ContentApps // dying is not user-friendly, so let's write to log instead, and wish people read logs... //throw new InvalidOperationException($"Duplicate content app aliases found: {string.Join(",", dups)}"); - _logger.LogWarning("Duplicate content app aliases found: {DuplicateAliases}", string.Join(",", dups)); + _logger.LogWarning("Duplicate content app aliases found: {DuplicateAliases}", string.Join(",", dups)); } return apps; diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index 0c9eed8671..f40c090c0a 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -16,46 +16,6 @@ namespace Umbraco.Core.Logging public static bool IsEnabled(this ILogger logger, LogLevel level) => logger.IsEnabled(typeof(T), level); - /// - /// Logs a warning message. - /// - /// The reporting type. - /// The logger. - /// A message. - public static void LogWarning(this ILogger logger, string message) - => logger.LogWarning(message); - - /// - /// Logs a warning message. - /// - /// The reporting type. - /// The logger. - /// A message template. - /// Property values. - public static void LogWarning(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogWarning(messageTemplate, propertyValues); - - /// - /// Logs a warning message with an exception. - /// - /// The reporting type. - /// The logger. - /// An exception. - /// A message. - public static void LogWarning(this ILogger logger, Exception exception, string message) - => logger.LogWarning(exception, message); - - /// - /// Logs a warning message with an exception. - /// - /// The reporting type. - /// The logger. - /// An exception. - /// A message template. - /// Property values. - public static void LogWarning(this ILogger logger, Exception exception, string messageTemplate, params object[] propertyValues) - => logger.LogWarning(exception, messageTemplate, propertyValues); - /// /// Logs a debugging message. /// @@ -74,15 +34,5 @@ namespace Umbraco.Core.Logging /// Property values. public static void Debug(this ILogger logger, string messageTemplate, params object[] propertyValues) => logger.LogDebug(messageTemplate, propertyValues); - - /// - /// Logs a verbose message. - /// - /// The reporting type. - /// The logger. - /// A message template. - /// Property values. - public static void Verbose(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogTrace(messageTemplate, propertyValues); } } diff --git a/src/Umbraco.Core/Models/Member.cs b/src/Umbraco.Core/Models/Member.cs index 52a887bbfb..d22636dd68 100644 --- a/src/Umbraco.Core/Models/Member.cs +++ b/src/Umbraco.Core/Models/Member.cs @@ -414,7 +414,7 @@ namespace Umbraco.Core.Models public virtual string ContentTypeAlias => ContentType.Alias; /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -423,7 +423,7 @@ namespace Umbraco.Core.Models [EditorBrowsable(EditorBrowsableState.Never)] public string LongStringPropertyValue { get; set; } /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -432,7 +432,7 @@ namespace Umbraco.Core.Models [EditorBrowsable(EditorBrowsableState.Never)] public string ShortStringPropertyValue { get; set; } /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -441,7 +441,7 @@ namespace Umbraco.Core.Models [EditorBrowsable(EditorBrowsableState.Never)] public int IntegerPropertyValue { get; set; } /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -450,7 +450,7 @@ namespace Umbraco.Core.Models [EditorBrowsable(EditorBrowsableState.Never)] public bool BoolPropertyValue { get; set; } /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -459,7 +459,7 @@ namespace Umbraco.Core.Models [EditorBrowsable(EditorBrowsableState.Never)] public DateTime DateTimePropertyValue { get; set; } /// - /// Internal/Experimental - only used for mapping queries. + /// Internal/Experimental - only used for mapping queries. /// /// /// Adding these to have first level properties instead of the Properties collection. @@ -472,7 +472,7 @@ namespace Umbraco.Core.Models { void DoLog(string logPropertyAlias, string logPropertyName) { - Current.Logger.LogWarning("Trying to access the '{PropertyName}' property on '{MemberType}' " + + Current.Logger.LogWarning("Trying to access the '{PropertyName}' property on '{MemberType}' " + "but the {PropertyAlias} property does not exist on the member type so a default value is returned. " + "Ensure that you have a property type with alias: {PropertyAlias} configured on your member type in order to use the '{PropertyName}' property on the model correctly.", logPropertyName, @@ -497,7 +497,7 @@ namespace Umbraco.Core.Models { void DoLog(string logPropertyAlias, string logPropertyName) { - Current.Logger.LogWarning("An attempt was made to set a value on the property '{PropertyName}' on type '{MemberType}' but the " + + Current.Logger.LogWarning("An attempt was made to set a value on the property '{PropertyName}' on type '{MemberType}' but the " + "property type {PropertyAlias} does not exist on the member type, ensure that this property type exists so that setting this property works correctly.", logPropertyName, typeof(Member), @@ -524,6 +524,6 @@ namespace Umbraco.Core.Models /// [IgnoreDataMember] - public bool HasAdditionalData => _additionalData != null; + public bool HasAdditionalData => _additionalData != null; } } diff --git a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs index 553346ad70..1d93285c26 100644 --- a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs +++ b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs @@ -68,7 +68,7 @@ namespace Umbraco.Core.Packaging } catch (Exception e) { - _logger.LogWarning(e, "Could not add package actions to the package xml definition, the xml did not parse"); + _logger.LogWarning(e, "Could not add package actions to the package xml definition, the xml did not parse"); } var packageXml = new XElement("package", diff --git a/src/Umbraco.Core/Packaging/PackagesRepository.cs b/src/Umbraco.Core/Packaging/PackagesRepository.cs index 9ab36d0988..cebad06a9a 100644 --- a/src/Umbraco.Core/Packaging/PackagesRepository.cs +++ b/src/Umbraco.Core/Packaging/PackagesRepository.cs @@ -213,7 +213,7 @@ namespace Umbraco.Core.Packaging } catch (Exception e) { - _logger.LogWarning(e, "Could not add package actions to the package, the xml did not parse"); + _logger.LogWarning(e, "Could not add package actions to the package, the xml did not parse"); } } diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs index a756a4a6b5..e908556d78 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web.Routing // IsAllowedTemplate deals both with DisableAlternativeTemplates and ValidateAlternativeTemplates settings if (!node.IsAllowedTemplate(_contentTypeService, _webRoutingSettings, template.Id)) { - Logger.LogWarning("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); + Logger.LogWarning("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); frequest.PublishedContent = null; // clear return false; } diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index 195bc7ff72..04f97d1a15 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -86,7 +86,7 @@ namespace Umbraco.Core.Runtime if (_signaled) return false; if (_isMainDom == false) { - _logger.LogWarning("Register called when MainDom has not been acquired"); + _logger.LogWarning("Register called when MainDom has not been acquired"); return false; } @@ -177,7 +177,7 @@ namespace Umbraco.Core.Runtime catch (OperationCanceledException ex) { // the waiting task could be canceled if this appdomain is naturally shutting down, we'll just swallow this exception - _logger.LogWarning(ex, ex.Message); + _logger.LogWarning(ex, ex.Message); } _logger.LogInformation("Acquired."); diff --git a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs index 7792a5dc67..0170a4aeca 100644 --- a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs @@ -53,7 +53,7 @@ namespace Umbraco.Web if (_databaseFactory.CanConnect == false) { - Logger.LogWarning("Cannot connect to the database, distributed calls will not be enabled for this server."); + Logger.LogWarning("Cannot connect to the database, distributed calls will not be enabled for this server."); } else { diff --git a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs index ba97415ac0..7fd83c9c1e 100644 --- a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs +++ b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Cache { // TODO: should this be fatal (ie, an exception)? var name = e.Sender.GetType().Name + "_" + e.EventName; - _logger.LogWarning("Dropping event {EventName} because no corresponding handler was found.", name); + _logger.LogWarning("Dropping event {EventName} because no corresponding handler was found.", name); continue; } diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index 2e055f53ea..393a78308b 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -66,7 +66,7 @@ namespace Umbraco.Web.HealthCheck } else { - Logger.LogWarning("Checks for '{HealthCheckName}' completed with errors.", checkName); + Logger.LogWarning("Checks for '{HealthCheckName}' completed with errors.", checkName); } foreach (var checkResult in checkResults) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs index e5d47ca45c..8d0cc23fff 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs @@ -94,7 +94,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 { if (!LegacyAliases.Contains(dataType.EditorAlias)) { - _logger.LogWarning( + _logger.LogWarning( "Skipping validation of configuration for data type {NodeId} : {EditorAlias}." + " Please ensure that the configuration is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, dataType.EditorAlias); @@ -104,7 +104,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 { if (!LegacyAliases.Contains(newAlias)) { - _logger.LogWarning("Skipping validation of configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})" + _logger.LogWarning("Skipping validation of configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})" + " because no property editor with that alias was found." + " Please ensure that the configuration is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, newAlias, dataType.EditorAlias); @@ -119,7 +119,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 } catch (Exception e) { - _logger.LogWarning(e, "Failed to validate configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})." + _logger.LogWarning(e, "Failed to validate configuration for data type {NodeId} : {NewEditorAlias} (was: {EditorAlias})." + " Please fix the configuration and ensure it is valid. The site may fail to start and / or load data types and run.", dataType.NodeId, newAlias, dataType.EditorAlias); } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs index 6e34e62c80..f7719c0b08 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs @@ -174,7 +174,7 @@ namespace Umbraco.Web.Models.Mapping else { // weird - just leave the field without a value - but warn - _logger.LogWarning("Could not find a value for configuration field '{ConfigField}'", field.Key); + _logger.LogWarning("Could not find a value for configuration field '{ConfigField}'", field.Key); } } } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs index 3438f5ecd2..b2df6d8553 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Models.Mapping { //we'll just map this to a text box paramEditor = _parameterEditors[Constants.PropertyEditors.Aliases.TextBox]; - _logger.LogWarning("Could not resolve a parameter editor with alias {PropertyEditorAlias}, a textbox will be rendered in it's place", source.EditorAlias); + _logger.LogWarning("Could not resolve a parameter editor with alias {PropertyEditorAlias}, a textbox will be rendered in it's place", source.EditorAlias); } target.View = paramEditor.GetValueEditor().View; diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index 94cc5720cf..20f54dbc39 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -686,7 +686,7 @@ namespace Umbraco.Core.Packaging } else { - _logger.LogWarning("Packager: Error handling allowed templates. Template with alias '{TemplateAlias}' could not be found.", alias); + _logger.LogWarning("Packager: Error handling allowed templates. Template with alias '{TemplateAlias}' could not be found.", alias); } } @@ -702,7 +702,7 @@ namespace Umbraco.Core.Packaging } else { - _logger.LogWarning("Packager: Error handling default template. Default template with alias '{DefaultTemplateAlias}' could not be found.", defaultTemplateElement.Value); + _logger.LogWarning("Packager: Error handling default template. Default template with alias '{DefaultTemplateAlias}' could not be found.", defaultTemplateElement.Value); } } } @@ -774,7 +774,7 @@ namespace Umbraco.Core.Packaging if (dataTypeDefinition == null) { // TODO: We should expose this to the UI during install! - _logger.LogWarning("Packager: Error handling creation of PropertyType '{PropertyType}'. Could not find DataTypeDefintion with unique id '{DataTypeDefinitionId}' nor one referencing the DataType with a property editor alias (or legacy control id) '{PropertyEditorAlias}'. Did the package creator forget to package up custom datatypes? This property will be converted to a label/readonly editor if one exists.", + _logger.LogWarning("Packager: Error handling creation of PropertyType '{PropertyType}'. Could not find DataTypeDefintion with unique id '{DataTypeDefinitionId}' nor one referencing the DataType with a property editor alias (or legacy control id) '{PropertyEditorAlias}'. Did the package creator forget to package up custom datatypes? This property will be converted to a label/readonly editor if one exists.", property.Element("Name").Value, dataTypeDefinitionId, property.Element("Type").Value.Trim()); //convert to a label! @@ -831,7 +831,7 @@ namespace Umbraco.Core.Packaging var allowedChild = importedContentTypes.ContainsKey(alias) ? importedContentTypes[alias] : _contentTypeService.Get(alias); if (allowedChild == null) { - _logger.LogWarning( + _logger.LogWarning( "Packager: Error handling DocumentType structure. DocumentType with alias '{DoctypeAlias}' could not be found and was not added to the structure for '{DoctypeStructureAlias}'.", alias, contentType.Alias); continue; diff --git a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs index 66f47bba14..a17692269e 100644 --- a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs +++ b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs @@ -53,7 +53,7 @@ namespace Umbraco.Core.Persistence catch (DbException e) { // Don't swallow this error, the exception is super handy for knowing "why" its not available - Current.Logger.LogWarning(e, "Configured database is reporting as not being available."); + Current.Logger.LogWarning(e, "Configured database is reporting as not being available."); return false; } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs index 215011171c..fa443808c5 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs @@ -709,7 +709,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { if (ContentRepositoryBase.ThrowOnWarning) throw new InvalidOperationException($"The query returned multiple property sets for content {temp.Id}, {temp.ContentType.Name}"); - Logger.LogWarning>("The query returned multiple property sets for content {ContentId}, {ContentTypeName}", temp.Id, temp.ContentType.Name); + Logger.LogWarning("The query returned multiple property sets for content {ContentId}, {ContentTypeName}", temp.Id, temp.ContentType.Name); } result[temp.VersionId] = new PropertyCollection(properties); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs index a1bca5e6c1..c25fb30c4c 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs @@ -1261,7 +1261,7 @@ AND umbracoNode.id <> @id", } else { - Logger.LogWarning>("Could not assign a data type for the property type {PropertyTypeAlias} since no data type was found with a property editor {PropertyEditorAlias}", propertyType.Alias, propertyType.PropertyEditorAlias); + Logger.LogWarning("Could not assign a data type for the property type {PropertyTypeAlias} since no data type was found with a property editor {PropertyEditorAlias}", propertyType.Alias, propertyType.PropertyEditorAlias); } } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs index be5f8533d2..ce2a04fd9f 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs @@ -317,7 +317,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement if (language != null) return language; // this is an anomaly, the service/repo should ensure it cannot happen - Logger.LogWarning("There is no default language. Fix this anomaly by editing the language table in database and setting one language as the default language."); + Logger.LogWarning("There is no default language. Fix this anomaly by editing the language table in database and setting one language as the default language."); // still, don't kill the site, and return "something" diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs index e1d6123107..b7d4cce21d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs @@ -156,7 +156,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.PropertyValues.Remove(prop.Key); - _logger.LogWarning( + _logger.LogWarning( "ToEditor removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Key, property.PropertyType.Alias); continue; @@ -405,7 +405,7 @@ namespace Umbraco.Web.PropertyEditors if (!propertyTypes.TryGetValue(prop.Key, out var propType)) { block.RawPropertyValues.Remove(prop.Key); - _logger.LogWarning("The property {PropertyKey} for block {BlockKey} was removed because the property type {PropertyTypeAlias} was not found on {ContentTypeAlias}", + _logger.LogWarning("The property {PropertyKey} for block {BlockKey} was removed because the property type {PropertyTypeAlias} was not found on {ContentTypeAlias}", prop.Key, block.Key, prop.Key, contentType.Alias); } else diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs index 73c73f8452..342e1cab3b 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs @@ -217,7 +217,7 @@ namespace Umbraco.Core.PropertyEditors var result = TryConvertValueToCrlType(editorValue.Value); if (result.Success == false) { - Current.Logger.LogWarning("The value {EditorValue} cannot be converted to the type {StorageTypeValue}", editorValue.Value, ValueTypes.ToStorageType(ValueType)); + Current.Logger.LogWarning("The value {EditorValue} cannot be converted to the type {StorageTypeValue}", editorValue.Value, ValueTypes.ToStorageType(ValueType)); return null; } return result.Result; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs index 929d08c042..e634d2630d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs @@ -82,7 +82,7 @@ namespace Umbraco.Web.PropertyEditors catch (Exception ex) { // for some reason the value is invalid so continue as if there was no value there - _logger.LogWarning(ex, "Could not parse current db value to a JObject."); + _logger.LogWarning(ex, "Could not parse current db value to a JObject."); } if (string.IsNullOrWhiteSpace(currentPath) == false) currentPath = _mediaFileSystem.GetRelativePath(currentPath); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs index 93b71e9b2d..70d3aa53e6 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs @@ -143,7 +143,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.RawPropertyValues.Remove(prop.Key); - _logger.LogWarning( + _logger.LogWarning( ex, "ConvertDbToString removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Id, propertyType.Alias); @@ -212,7 +212,7 @@ namespace Umbraco.Web.PropertyEditors { // deal with weird situations by ignoring them (no comment) row.RawPropertyValues.Remove(prop.Key); - _logger.LogWarning( + _logger.LogWarning( ex, "ToEditor removed property value {PropertyKey} in row {RowId} for property type {PropertyTypeAlias}", prop.Key, row.Id, property.PropertyType.Alias); diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index e50b3e9416..5141d30f9a 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -120,7 +120,7 @@ namespace Umbraco.Core.Runtime { if (_errorDuringAcquiring) { - _logger.LogWarning("Could not acquire MainDom, listening is canceled."); + _logger.LogWarning("Could not acquire MainDom, listening is canceled."); return Task.CompletedTask; } diff --git a/src/Umbraco.Infrastructure/RuntimeState.cs b/src/Umbraco.Infrastructure/RuntimeState.cs index 7f6359d15e..d48eb73c98 100644 --- a/src/Umbraco.Infrastructure/RuntimeState.cs +++ b/src/Umbraco.Infrastructure/RuntimeState.cs @@ -122,7 +122,7 @@ namespace Umbraco.Core catch (Exception e) { // can connect to the database but cannot check the upgrade state... oops - _logger.LogWarning(e, "Could not check the upgrade state."); + _logger.LogWarning(e, "Could not check the upgrade state."); if (_globalSettings.InstallEmptyDatabase) { diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 56bf1ebe94..2664b4b2f6 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -1481,7 +1481,7 @@ namespace Umbraco.Core.Services.Implement var impact = CultureImpact.Explicit(culture, IsDefaultCulture(allLangs.Value, culture)); var tryPublish = d.PublishCulture(impact) && _propertyValidationService.Value.IsPropertyDataValid(d, out invalidProperties, impact); if (invalidProperties != null && invalidProperties.Length > 0) - Logger.LogWarning("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", + Logger.LogWarning("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", d.Id, culture, string.Join(",", invalidProperties.Select(x => x.Alias))); publishing &= tryPublish; //set the culture to be published diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs index b182fbfa4c..86612f7a7e 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs @@ -104,7 +104,7 @@ namespace Umbraco.Core.Services.Implement { if (xmlSource.ContainsKey(culture) == false) { - _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return result; } @@ -124,7 +124,7 @@ namespace Umbraco.Core.Services.Implement { if (_dictionarySource.ContainsKey(culture) == false) { - _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return result; } @@ -207,7 +207,7 @@ namespace Umbraco.Core.Services.Implement { if (_dictionarySource.ContainsKey(culture) == false) { - _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return "[" + key + "]"; } @@ -245,7 +245,7 @@ namespace Umbraco.Core.Services.Implement { if (xmlSource.ContainsKey(culture) == false) { - _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); + _logger.LogWarning("The culture specified {Culture} was not found in any configured sources for this service", culture); return "[" + key + "]"; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index a069e85410..30c03f1478 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -51,7 +51,7 @@ namespace Umbraco.Core.Services.Implement if (fileSourceFolder.Exists == false) { - Current.Logger.LogWarning("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); + Current.Logger.LogWarning("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); } else { @@ -99,7 +99,7 @@ namespace Umbraco.Core.Services.Implement } catch (CultureNotFoundException) { - Current.Logger.LogWarning("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); + Current.Logger.LogWarning("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); //If the culture in the file is invalid, we'll just hope the file name is a valid culture below, otherwise // an exception will be thrown. } diff --git a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs index 4868eb7442..730510fca9 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs @@ -291,7 +291,7 @@ namespace Umbraco.Core.Services.Implement // if we are upgrading and an exception occurs, log and swallow it if (_isUpgrading == false) throw; - Logger.LogWarning(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); + Logger.LogWarning(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); // we don't want the uow to rollback its scope! scope.Complete(); diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 1dc2af526b..14f3f099e4 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -151,7 +151,7 @@ namespace Umbraco.Core.Sync var idle =_syncIdle.WaitOne(5000); if (idle == false) { - Logger.LogWarning("The wait lock timed out, application is shutting down. The current instruction batch will be re-processed."); + Logger.LogWarning("The wait lock timed out, application is shutting down. The current instruction batch will be re-processed."); } }, weight); @@ -187,7 +187,7 @@ namespace Umbraco.Core.Sync { // we haven't synced - in this case we aren't going to sync the whole thing, we will assume this is a new // server and it will need to rebuild it's own caches, eg Lucene or the xml cache file. - Logger.LogWarning("No last synced Id found, this generally means this is a new server/install." + Logger.LogWarning("No last synced Id found, this generally means this is a new server/install." + " The server will build its caches and indexes, and then adjust its last synced Id to the latest found in" + " the database and maintain cache updates based on that Id."); @@ -201,7 +201,7 @@ namespace Umbraco.Core.Sync if (count > Options.MaxProcessingInstructionCount) { //too many instructions, proceed to cold boot - Logger.LogWarning( + Logger.LogWarning( "The instruction count ({InstructionCount}) exceeds the specified MaxProcessingInstructionCount ({MaxProcessingInstructionCount})." + " The server will skip existing instructions, rebuild its caches and indexes entirely, adjust its last synced Id" + " to the latest found in the database and maintain cache updates based on that Id.", diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index 75573a2272..e0898f5965 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -92,7 +92,7 @@ namespace Umbraco.ModelsBuilder.Embedded } catch (TimeoutException) { - _logger.LogWarning("Timeout, models were NOT generated."); + _logger.LogWarning("Timeout, models were NOT generated."); } catch (Exception e) { diff --git a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs index 78bf8389e3..eb05130da1 100644 --- a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs +++ b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs @@ -215,7 +215,7 @@ namespace Umbraco.Web.PublishedCache.NuCache.DataSource { if (Debugger.IsAttached) throw new InvalidOperationException("Missing cmsContentNu edited content for node " + dto.Id + ", consider rebuilding."); - _logger.LogWarning("Missing cmsContentNu edited content for node {NodeId}, consider rebuilding.", dto.Id); + _logger.LogWarning("Missing cmsContentNu edited content for node {NodeId}, consider rebuilding.", dto.Id); } else { @@ -242,7 +242,7 @@ namespace Umbraco.Web.PublishedCache.NuCache.DataSource { if (Debugger.IsAttached) throw new InvalidOperationException("Missing cmsContentNu published content for node " + dto.Id + ", consider rebuilding."); - _logger.LogWarning("Missing cmsContentNu published content for node {NodeId}, consider rebuilding.", dto.Id); + _logger.LogWarning("Missing cmsContentNu published content for node {NodeId}, consider rebuilding.", dto.Id); } else { diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs index 627e42da98..338d7ff305 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs @@ -108,7 +108,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache else { // this is a property that does not correspond to anything, ignore and log - Current.Logger.LogWarning("Dropping property '{PropertyKey}' because it does not belong to the content type.", i.Key); + Current.Logger.LogWarning("Dropping property '{PropertyKey}' because it does not belong to the content type.", i.Key); } } } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs index ee59b792dc..f9e152bdb7 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs @@ -326,7 +326,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache var miss = Interlocked.CompareExchange(ref _examineIndexMiss, 0, 0); // volatile read if (miss < ExamineIndexMissMax && Interlocked.Increment(ref _examineIndexMiss) == ExamineIndexMissMax) - Current.Logger.LogWarning("Failed ({ExamineIndexMissMax} times) to retrieve medias from Examine index and had to load" + Current.Logger.LogWarning("Failed ({ExamineIndexMissMax} times) to retrieve medias from Examine index and had to load" + " them from DB. This may indicate that the Examine index is corrupted.", ExamineIndexMissMax); return ConvertFromIMedia(media); @@ -344,7 +344,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache : ConvertFromXPathNavigator(media.Current); } - Current.Logger.LogWarning("Could not retrieve media {MediaId} from Examine index or from legacy library.GetMedia method", id); + Current.Logger.LogWarning("Could not retrieve media {MediaId} from Examine index or from legacy library.GetMedia method", id); return null; } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index b15a869821..895e13fe42 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -287,7 +287,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache if (XmlIsImmutable == false) //Current.Logger.LogWarning("Running with CloneXmlContent being false is a bad idea."); - Current.Logger.LogWarning("CloneXmlContent is false - ignored, we always clone."); + Current.Logger.LogWarning("CloneXmlContent is false - ignored, we always clone."); // note: if SyncFromXmlFile then we should also disable / warn that local edits are going to cause issues... } @@ -797,7 +797,7 @@ AND (umbracoNode.id=@id)"; } catch (FileNotFoundException) { - Current.Logger.LogWarning("Failed to load Xml, file does not exist."); + Current.Logger.LogWarning("Failed to load Xml, file does not exist."); return null; } catch (Exception ex) diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs index d719875ffb..14769e02cd 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs @@ -135,7 +135,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache if (runNow) //Run(); - _logger.LogWarning("Cannot write now because we are going down, changes may be lost."); + _logger.LogWarning("Cannot write now because we are going down, changes may be lost."); return ret; // this, by default, unless we created a new one } diff --git a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs index e670f95d6a..25cae69900 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs @@ -357,13 +357,13 @@ namespace Umbraco.Web.BackOffice.Controllers var unlockResult = await _userManager.SetLockoutEndDateAsync(identityUser, DateTimeOffset.Now); if (unlockResult.Succeeded == false) { - _logger.LogWarning("Could not unlock for user {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); + _logger.LogWarning("Could not unlock for user {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); } var resetAccessFailedCountResult = await _userManager.ResetAccessFailedCountAsync(identityUser); if (resetAccessFailedCountResult.Succeeded == false) { - _logger.LogWarning("Could not reset access failed count {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); + _logger.LogWarning("Could not reset access failed count {UserId} - error {UnlockError}", model.UserId, unlockResult.Errors.First().Description); } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs index 918faef664..c550e44a56 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs @@ -80,7 +80,7 @@ namespace Umbraco.Web.BackOffice.Controllers { var viewPath = Path.Combine(_globalSettings.UmbracoPath , Constants.Web.Mvc.BackOfficeArea, nameof(Default) + ".cshtml") .Replace("\\", "/"); // convert to forward slashes since it's a virtual path - + return await RenderDefaultOrProcessExternalLoginAsync( () => View(viewPath), () => View(viewPath)); @@ -99,7 +99,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (invite == null) { - _logger.LogWarning("VerifyUser endpoint reached with invalid token: NULL"); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: NULL"); return RedirectToAction(nameof(Default)); } @@ -107,7 +107,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (parts.Length != 2) { - _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); return RedirectToAction(nameof(Default)); } @@ -116,7 +116,7 @@ namespace Umbraco.Web.BackOffice.Controllers var decoded = token.FromUrlBase64(); if (decoded.IsNullOrWhiteSpace()) { - _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); + _logger.LogWarning("VerifyUser endpoint reached with invalid token: {Invite}", invite); return RedirectToAction(nameof(Default)); } @@ -125,7 +125,7 @@ namespace Umbraco.Web.BackOffice.Controllers var identityUser = await _userManager.FindByIdAsync(id); if (identityUser == null) { - _logger.LogWarning("VerifyUser endpoint reached with non existing user: {UserId}", id); + _logger.LogWarning("VerifyUser endpoint reached with non existing user: {UserId}", id); return RedirectToAction(nameof(Default)); } @@ -133,7 +133,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (result.Succeeded == false) { - _logger.LogWarning("Could not verify email, Error: {Errors}, Token: {Invite}", result.Errors.ToErrorMessage(), invite); + _logger.LogWarning("Could not verify email, Error: {Errors}, Token: {Invite}", result.Errors.ToErrorMessage(), invite); return new RedirectResult(Url.Action(nameof(Default)) + "#/login/false?invite=3"); } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs index 7ef7b75cea..30fecbc93c 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs @@ -1619,7 +1619,7 @@ namespace Umbraco.Web.Editors var sortResult = contentService.Sort(sorted.IdSortOrder, _webSecurity.CurrentUser.Id); if (!sortResult.Success) { - Logger.LogWarning("Content sorting failed, this was probably caused by an event being cancelled"); + Logger.LogWarning("Content sorting failed, this was probably caused by an event being cancelled"); // TODO: Now you can cancel sorting, does the event messages bubble up automatically? throw HttpResponseException.CreateValidationErrorResponse("Content sorting failed, this was probably caused by an event being cancelled"); } @@ -2001,7 +2001,7 @@ namespace Umbraco.Web.Editors if (template == null) { //ModelState.AddModelError("Template", "No template exists with the specified alias: " + contentItem.TemplateAlias); - Logger.LogWarning("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); + Logger.LogWarning("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); } else if (template.Id != contentSave.PersistedContent.TemplateId) { diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs index 2313e9b5f7..08a1e8cbce 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web.BackOffice.Controllers // get the property editor if (propertyDto.PropertyEditor == null) { - Logger.LogWarning("No property editor found for property {PropertyAlias}", propertyDto.Alias); + Logger.LogWarning("No property editor found for property {PropertyAlias}", propertyDto.Alias); continue; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs index 53497225b6..1b317b8427 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs @@ -461,7 +461,7 @@ namespace Umbraco.Web.BackOffice.Controllers var tryCreateTemplate = _fileService.CreateTemplateForContentType(contentTypeAlias, contentTypeName); if (tryCreateTemplate == false) { - _logger.LogWarning("Could not create a template for Content Type: \"{ContentTypeAlias}\", status: {Status}", + _logger.LogWarning("Could not create a template for Content Type: \"{ContentTypeAlias}\", status: {Status}", contentTypeAlias, tryCreateTemplate.Result.Result); } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs index 5bf7bfe30c..94e5b58095 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs @@ -622,7 +622,7 @@ namespace Umbraco.Web.BackOffice.Controllers // Save Media with new sort order and update content xml in db accordingly if (mediaService.Sort(sortedMedia) == false) { - Logger.LogWarning("Media sorting failed, this was probably caused by an event being cancelled"); + Logger.LogWarning("Media sorting failed, this was probably caused by an event being cancelled"); throw HttpResponseException.CreateValidationErrorResponse("Media sorting failed, this was probably caused by an event being cancelled"); } return Ok(); diff --git a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs index 73746704e6..6e47c900f3 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs @@ -144,7 +144,7 @@ namespace Umbraco.Web.BackOffice.Filters { var message = $"Could not find property editor \"{p.DataType.EditorAlias}\" for property with id {p.Id}."; - Logger.LogWarning(message); + Logger.LogWarning(message); continue; } diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index c9d7789797..6ac3727114 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -86,20 +86,20 @@ namespace Umbraco.Web.WebApi.Filters { if (context == null) { - _logger.LogWarning("The context is null!!??"); + _logger.LogWarning("The context is null!!??"); return Task.CompletedTask; } if (context.Result == null) { - _logger.LogWarning( + _logger.LogWarning( "The context.Result is null!!??"); return Task.CompletedTask; } if(!(context.Result is ObjectResult objectResult)) { - _logger.LogWarning( + _logger.LogWarning( "Could not acquire context.Result as ObjectResult"); return Task.CompletedTask; } @@ -138,20 +138,20 @@ namespace Umbraco.Web.WebApi.Filters } else { - _logger.LogWarning( + _logger.LogWarning( "The f.TempFilePath is null or whitespace!!??"); } } } else { - _logger.LogWarning( + _logger.LogWarning( "The uploadedFiles.UploadedFiles is null!!??"); } } else { - _logger.LogWarning( + _logger.LogWarning( "The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectResult.Value.GetType()); } diff --git a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs index 78fc5329c3..d5793ffaac 100644 --- a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs +++ b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs @@ -72,7 +72,7 @@ namespace Umbraco.Web.BackOffice.Security if (resetResult.Succeeded == false) { var errors = resetResult.Errors.ToErrorMessage(); - _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); + _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "value" }) }); } @@ -92,7 +92,7 @@ namespace Umbraco.Web.BackOffice.Security { //no, fail with error messages for "password" var errors = changeResult.Errors.ToErrorMessage(); - _logger.LogWarning("Could not change user password {PasswordErrors}", errors); + _logger.LogWarning("Could not change user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "password" }) }); } return Attempt.Succeed(new PasswordChangedModel()); diff --git a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs index fcaeef977a..e673ddde96 100644 --- a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs @@ -196,7 +196,7 @@ namespace Umbraco.Web.Trees // TODO: in the future we could return a validation statement so we can have some UI to notify the user they don't have access if (ignoreUserStartNodes == false && HasPathAccess(id, queryStrings) == false) { - _logger.LogWarning("User {Username} does not have access to node with id {Id}", _webSecurity.CurrentUser.Username, id); + _logger.LogWarning("User {Username} does not have access to node with id {Id}", _webSecurity.CurrentUser.Username, id); return nodes; } diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index 48360650d7..fe46349559 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -55,7 +55,7 @@ namespace Umbraco.Web.Common.Middleware if (umbracoContextReference.UmbracoContext.IsFrontEndUmbracoRequest) { LogHttpRequest.TryGetCurrentHttpRequestId(out var httpRequestId, _requestCache); - _logger.Verbose("Begin request [{HttpRequestId}]: {RequestUrl}", httpRequestId, requestUri); + _logger.LogTrace("Begin request [{HttpRequestId}]: {RequestUrl}", httpRequestId, requestUri); } try @@ -84,7 +84,7 @@ namespace Umbraco.Web.Common.Middleware if (umbracoContextReference.UmbracoContext.IsFrontEndUmbracoRequest) { LogHttpRequest.TryGetCurrentHttpRequestId(out var httpRequestId, _requestCache); - _logger.Verbose("End Request [{HttpRequestId}]: {RequestUrl} ({RequestDuration}ms)", httpRequestId, requestUri, DateTime.Now.Subtract(umbracoContextReference.UmbracoContext.ObjectCreated).TotalMilliseconds); + _logger.LogTrace("End Request [{HttpRequestId}]: {RequestUrl} ({RequestDuration}ms)", httpRequestId, requestUri, DateTime.Now.Subtract(umbracoContextReference.UmbracoContext.ObjectCreated).TotalMilliseconds); } try diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index a89035e220..462a0bf7b8 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -31,7 +31,7 @@ namespace Umbraco.Web public void Warn(string msg) { - _logger.LogWarning(msg); + _logger.LogWarning(msg); } public void Error(string msg, Exception ex) diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs index c8b14f4a4a..f3cc3b6185 100644 --- a/src/Umbraco.Web/Editors/BackOfficeController.cs +++ b/src/Umbraco.Web/Editors/BackOfficeController.cs @@ -176,7 +176,7 @@ namespace Umbraco.Web.Editors var authType = OwinContext.Authentication.GetExternalAuthenticationTypes().FirstOrDefault(x => x.AuthenticationType == loginInfo.Login.LoginProvider); if (authType == null) { - Logger.LogWarning("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); + Logger.LogWarning("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); } else { @@ -199,7 +199,7 @@ namespace Umbraco.Web.Editors shouldSignIn = autoLinkOptions.OnExternalLogin(user, loginInfo); if (shouldSignIn == false) { - Logger.LogWarning("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); + Logger.LogWarning("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); } } diff --git a/src/Umbraco.Web/Editors/PasswordChanger.cs b/src/Umbraco.Web/Editors/PasswordChanger.cs index 4267c4327f..06b4ea3367 100644 --- a/src/Umbraco.Web/Editors/PasswordChanger.cs +++ b/src/Umbraco.Web/Editors/PasswordChanger.cs @@ -73,7 +73,7 @@ namespace Umbraco.Web.Editors if (resetResult.Succeeded == false) { var errors = resetResult.Errors.ToErrorMessage(); - _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); + _logger.LogWarning("Could not reset user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "value" }) }); } @@ -93,7 +93,7 @@ namespace Umbraco.Web.Editors { //no, fail with error messages for "password" var errors = changeResult.Errors.ToErrorMessage(); - _logger.LogWarning("Could not change user password {PasswordErrors}", errors); + _logger.LogWarning("Could not change user password {PasswordErrors}", errors); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult(errors, new[] { "password" }) }); } return Attempt.Succeed(new PasswordChangedModel()); diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 6b6924e8de..2f8b5c863f 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -68,7 +68,7 @@ namespace Umbraco.Web.Mvc var result = ViewEngines.Engines.FindView(ControllerContext, template, null); if (result.View != null) return true; - Logger.LogWarning("No physical template file was found for template {Template}", template); + Logger.LogWarning("No physical template file was found for template {Template}", template); return false; } diff --git a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs index af74e1da08..e9e05f40ef 100644 --- a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs +++ b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs @@ -280,7 +280,7 @@ namespace Umbraco.Web.Mvc } else { - Current.Logger.LogWarning("The current Document Type {ContentTypeAlias} matches a locally declared controller of type {ControllerName}. Custom Controllers for Umbraco routing must implement '{UmbracoRenderController}' and inherit from '{UmbracoControllerBase}'.", + Current.Logger.LogWarning("The current Document Type {ContentTypeAlias} matches a locally declared controller of type {ControllerName}. Custom Controllers for Umbraco routing must implement '{UmbracoRenderController}' and inherit from '{UmbracoControllerBase}'.", request.PublishedContent.ContentType.Alias, controllerType.FullName, typeof(IRenderController).FullName, diff --git a/src/Umbraco.Web/Security/MembershipHelper.cs b/src/Umbraco.Web/Security/MembershipHelper.cs index ffbf5a5b09..0ad586616e 100644 --- a/src/Umbraco.Web/Security/MembershipHelper.cs +++ b/src/Umbraco.Web/Security/MembershipHelper.cs @@ -305,7 +305,7 @@ namespace Umbraco.Web.Security if (member == null) { //this should not happen - Current.Logger.LogWarning("The member validated but then no member was returned with the username {Username}", username); + Current.Logger.LogWarning("The member validated but then no member was returned with the username {Username}", username); return false; } //Log them in @@ -847,7 +847,7 @@ namespace Umbraco.Web.Security } catch (Exception ex) { - _logger.LogWarning(ex, "Could not change member password"); + _logger.LogWarning(ex, "Could not change member password"); return Attempt.Fail(new PasswordChangedModel { ChangeError = new ValidationResult("Could not change password, error: " + ex.Message + " (see log for full details)", new[] { "value" }) }); } diff --git a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs index 7c4dff1702..81bd2b161d 100644 --- a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs +++ b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs @@ -131,7 +131,7 @@ namespace Umbraco.Web.Security.Providers if (MemberService.Exists(username)) { status = MembershipCreateStatus.DuplicateUserName; - Current.Logger.LogWarning>("Cannot create member as username already exists: {Username}", username); + Current.Logger.LogWarning("Cannot create member as username already exists: {Username}", username); return null; } @@ -139,7 +139,7 @@ namespace Umbraco.Web.Security.Providers if (MemberService.GetByEmail(email) != null && RequiresUniqueEmail) { status = MembershipCreateStatus.DuplicateEmail; - Current.Logger.LogWarning>("Cannot create member as a member with the same email address exists: {Email}", email); + Current.Logger.LogWarning("Cannot create member as a member with the same email address exists: {Email}", email); return null; } diff --git a/src/Umbraco.Web/UmbracoInjectedModule.cs b/src/Umbraco.Web/UmbracoInjectedModule.cs index b0510fb4ca..66ae70be44 100644 --- a/src/Umbraco.Web/UmbracoInjectedModule.cs +++ b/src/Umbraco.Web/UmbracoInjectedModule.cs @@ -229,7 +229,7 @@ namespace Umbraco.Web if (context.Content.HasContent()) return true; - _logger.LogWarning("Umbraco has no content"); + _logger.LogWarning("Umbraco has no content"); if (RouteTable.Routes[Constants.Web.NoContentRouteName] is Route route) { @@ -297,7 +297,7 @@ namespace Umbraco.Web } - + #endregion #region IHttpModule diff --git a/src/Umbraco.Web/UmbracoModule.cs b/src/Umbraco.Web/UmbracoModule.cs index e5b7914626..db10ede0c5 100644 --- a/src/Umbraco.Web/UmbracoModule.cs +++ b/src/Umbraco.Web/UmbracoModule.cs @@ -78,7 +78,7 @@ namespace Umbraco.Web response.TrySkipIisCustomErrors = Current.Configs.WebRouting().TrySkipIisCustomErrors; if (response.TrySkipIisCustomErrors == false) - logger.LogWarning("Status code is 404 yet TrySkipIisCustomErrors is false - IIS will take over."); + logger.LogWarning("Status code is 404 yet TrySkipIisCustomErrors is false - IIS will take over."); } if (pcr.ResponseStatusCode > 0) diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index b441a6228a..e0b5bbcc23 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -67,17 +67,17 @@ namespace Umbraco.Web.WebApi.Filters { if (actionExecutedContext == null) { - Current.Logger.LogWarning("The actionExecutedContext is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext is null!!??"); return; } if (actionExecutedContext.Request == null) { - Current.Logger.LogWarning("The actionExecutedContext.Request is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext.Request is null!!??"); return; } if (actionExecutedContext.Request.Content == null) { - Current.Logger.LogWarning("The actionExecutedContext.Request.Content is null!!??"); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content is null!!??"); return; } @@ -127,23 +127,23 @@ namespace Umbraco.Web.WebApi.Filters } else { - Current.Logger.LogWarning("The f.TempFilePath is null or whitespace!!??"); + Current.Logger.LogWarning("The f.TempFilePath is null or whitespace!!??"); } } } else { - Current.Logger.LogWarning("The uploadedFiles.UploadedFiles is null!!??"); + Current.Logger.LogWarning("The uploadedFiles.UploadedFiles is null!!??"); } } else { - Current.Logger.LogWarning("The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectContent.Value.GetType()); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content.Value is not IHaveUploadedFiles, it is {ObjectType}", objectContent.Value.GetType()); } } else { - Current.Logger.LogWarning("The actionExecutedContext.Request.Content is not ObjectContent, it is {RequestObjectType}", actionExecutedContext.Request.Content.GetType()); + Current.Logger.LogWarning("The actionExecutedContext.Request.Content is not ObjectContent, it is {RequestObjectType}", actionExecutedContext.Request.Content.GetType()); } } } From a18580c7f6e07efd0fcdb007dfd28fe4401ce83c Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 10:24:05 +0200 Subject: [PATCH 20/85] Remove Debug from LoggerExtensions --- src/Umbraco.Core/IO/FileSystems.cs | 4 ++-- src/Umbraco.Core/Logging/LogProfiler.cs | 2 +- src/Umbraco.Core/Logging/LoggerExtensions.cs | 19 ------------------ .../Routing/ContentFinderByIdPath.cs | 6 +++--- .../Routing/ContentFinderByRedirectUrl.cs | 6 +++--- .../Routing/ContentFinderByUrl.cs | 6 +++--- .../Routing/ContentFinderByUrlAlias.cs | 2 +- .../Routing/ContentFinderByUrlAndTemplate.cs | 8 ++++---- .../Routing/DefaultUrlProvider.cs | 2 +- src/Umbraco.Core/Runtime/MainDom.cs | 4 ++-- .../Persistence/UmbracoDatabase.cs | 8 ++++---- .../Persistence/UmbracoDatabaseFactory.cs | 12 +++++------ .../Routing/ContentFinderByConfigured404.cs | 8 ++++---- .../Runtime/CoreRuntime.cs | 2 +- .../Runtime/SqlMainDomLock.cs | 18 ++++++++--------- src/Umbraco.Infrastructure/RuntimeState.cs | 10 +++++----- .../Scheduling/BackgroundTaskRunner.cs | 12 +++++------ src/Umbraco.Infrastructure/Scoping/Scope.cs | 2 +- .../Services/Implement/NotificationService.cs | 6 +++--- .../Sync/ServerMessengerBase.cs | 8 ++++---- .../LiveModelsProvider.cs | 4 ++-- .../Integration/ContentEventsTests.cs | 2 +- .../LegacyXmlPublishedCache/XmlStore.cs | 14 ++++++------- .../XmlStoreFilePersister.cs | 20 +++++++++---------- .../ExamineManagementController.cs | 2 +- .../RedirectUrlManagementController.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 2 +- src/Umbraco.Web/CdfLogger.cs | 2 +- src/Umbraco.Web/UmbracoModule.cs | 4 ++-- .../FileUploadCleanupFilterAttribute.cs | 2 +- 30 files changed, 90 insertions(+), 109 deletions(-) diff --git a/src/Umbraco.Core/IO/FileSystems.cs b/src/Umbraco.Core/IO/FileSystems.cs index ba5fcb91f3..acb0f2c895 100644 --- a/src/Umbraco.Core/IO/FileSystems.cs +++ b/src/Umbraco.Core/IO/FileSystems.cs @@ -233,7 +233,7 @@ namespace Umbraco.Core.IO _shadowCurrentId = id; - _logger.Debug("Shadow '{ShadowId}'", _shadowCurrentId); + _logger.LogDebug("Shadow '{ShadowId}'", _shadowCurrentId); foreach (var wrapper in _shadowWrappers) wrapper.Shadow(_shadowCurrentId); @@ -250,7 +250,7 @@ namespace Umbraco.Core.IO if (id != _shadowCurrentId) throw new InvalidOperationException("Not the current shadow."); - _logger.Debug("UnShadow '{ShadowId}' {Status}", id, completed ? "complete" : "abort"); + _logger.LogDebug("UnShadow '{ShadowId}' {Status}", id, completed ? "complete" : "abort"); var exceptions = new List(); foreach (var wrapper in _shadowWrappers) diff --git a/src/Umbraco.Core/Logging/LogProfiler.cs b/src/Umbraco.Core/Logging/LogProfiler.cs index 81e250895b..23a9cd5d50 100644 --- a/src/Umbraco.Core/Logging/LogProfiler.cs +++ b/src/Umbraco.Core/Logging/LogProfiler.cs @@ -18,7 +18,7 @@ namespace Umbraco.Core.Logging /// public IDisposable Step(string name) { - _logger.Debug("Begin: {ProfileName}", name); + _logger.LogDebug("Begin: {ProfileName}", name); return new LightDisposableTimer(duration => _logger.LogInformation("End {ProfileName} ({ProfileDuration}ms)", name, duration)); } diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs index f40c090c0a..5c4112ffaf 100644 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ b/src/Umbraco.Core/Logging/LoggerExtensions.cs @@ -15,24 +15,5 @@ namespace Umbraco.Core.Logging /// The level. public static bool IsEnabled(this ILogger logger, LogLevel level) => logger.IsEnabled(typeof(T), level); - - /// - /// Logs a debugging message. - /// - /// The reporting type. - /// The logger. - /// A message. - public static void Debug(this ILogger logger, string message) - => logger.LogDebug(message); - - /// - /// Logs a debugging message. - /// - /// The reporting type - /// The logger. - /// A message template. - /// Property values. - public static void Debug(this ILogger logger, string messageTemplate, params object[] propertyValues) - => logger.LogDebug(messageTemplate, propertyValues); } } diff --git a/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs b/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs index 4b58832e8e..52787ffc0c 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs @@ -51,7 +51,7 @@ namespace Umbraco.Web.Routing if (nodeId > 0) { - _logger.Debug("Id={NodeId}", nodeId); + _logger.LogDebug("Id={NodeId}", nodeId); node = frequest.UmbracoContext.Content.GetById(nodeId); if (node != null) @@ -67,7 +67,7 @@ namespace Umbraco.Web.Routing } frequest.PublishedContent = node; - _logger.Debug("Found node with id={PublishedContentId}", frequest.PublishedContent.Id); + _logger.LogDebug("Found node with id={PublishedContentId}", frequest.PublishedContent.Id); } else { @@ -77,7 +77,7 @@ namespace Umbraco.Web.Routing } if (nodeId == -1) - _logger.Debug("Not a node id"); + _logger.LogDebug("Not a node id"); return node != null; } diff --git a/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs b/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs index 4e67779c1c..97b0de6a9f 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs @@ -41,7 +41,7 @@ namespace Umbraco.Web.Routing if (redirectUrl == null) { - _logger.Debug("No match for route: {Route}", route); + _logger.LogDebug("No match for route: {Route}", route); return false; } @@ -49,14 +49,14 @@ namespace Umbraco.Web.Routing var url = content == null ? "#" : content.Url(_publishedUrlProvider, redirectUrl.Culture); if (url.StartsWith("#")) { - _logger.Debug("Route {Route} matches content {ContentId} which has no url.", route, redirectUrl.ContentId); + _logger.LogDebug("Route {Route} matches content {ContentId} which has no url.", route, redirectUrl.ContentId); return false; } // Appending any querystring from the incoming request to the redirect url. url = string.IsNullOrEmpty(frequest.Uri.Query) ? url : url + frequest.Uri.Query; - _logger.Debug("Route {Route} matches content {ContentId} with url '{Url}', redirecting.", route, content.Id, url); + _logger.LogDebug("Route {Route} matches content {ContentId} with url '{Url}', redirecting.", route, content.Id, url); frequest.SetRedirectPermanent(url); diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrl.cs b/src/Umbraco.Core/Routing/ContentFinderByUrl.cs index 3fcffff842..e14a663684 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrl.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrl.cs @@ -46,17 +46,17 @@ namespace Umbraco.Web.Routing { if (docreq == null) throw new System.ArgumentNullException(nameof(docreq)); - Logger.Debug("Test route {Route}", route); + Logger.LogDebug("Test route {Route}", route); var node = docreq.UmbracoContext.Content.GetByRoute(docreq.UmbracoContext.InPreviewMode, route, culture: docreq.Culture?.Name); if (node != null) { docreq.PublishedContent = node; - Logger.Debug("Got content, id={NodeId}", node.Id); + Logger.LogDebug("Got content, id={NodeId}", node.Id); } else { - Logger.Debug("No match."); + Logger.LogDebug("No match."); } return node; diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs index 6bc1b329ed..d5010fc14d 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs @@ -48,7 +48,7 @@ namespace Umbraco.Web.Routing if (node != null) { frequest.PublishedContent = node; - Logger.Debug("Path '{UriAbsolutePath}' is an alias for id={PublishedContentId}", frequest.Uri.AbsolutePath, frequest.PublishedContent.Id); + Logger.LogDebug("Path '{UriAbsolutePath}' is an alias for id={PublishedContentId}", frequest.Uri.AbsolutePath, frequest.PublishedContent.Id); } } diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs index e908556d78..ccc6bd98f2 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs @@ -46,7 +46,7 @@ namespace Umbraco.Web.Routing // no template if "/" if (path == "/") { - Logger.Debug("No template in path '/'"); + Logger.LogDebug("No template in path '/'"); return false; } @@ -59,11 +59,11 @@ namespace Umbraco.Web.Routing if (template == null) { - Logger.Debug("Not a valid template: '{TemplateAlias}'", templateAlias); + Logger.LogDebug("Not a valid template: '{TemplateAlias}'", templateAlias); return false; } - Logger.Debug("Valid template: '{TemplateAlias}'", templateAlias); + Logger.LogDebug("Valid template: '{TemplateAlias}'", templateAlias); // look for node corresponding to the rest of the route var route = frequest.HasDomain ? (frequest.Domain.ContentId + path) : path; @@ -71,7 +71,7 @@ namespace Umbraco.Web.Routing if (node == null) { - Logger.Debug("Not a valid route to node: '{Route}'", route); + Logger.LogDebug("Not a valid route to node: '{Route}'", route); return false; } diff --git a/src/Umbraco.Core/Routing/DefaultUrlProvider.cs b/src/Umbraco.Core/Routing/DefaultUrlProvider.cs index f56d96b6b3..b0f7e309b8 100644 --- a/src/Umbraco.Core/Routing/DefaultUrlProvider.cs +++ b/src/Umbraco.Core/Routing/DefaultUrlProvider.cs @@ -47,7 +47,7 @@ namespace Umbraco.Web.Routing { if (string.IsNullOrWhiteSpace(route)) { - _logger.Debug("Couldn't find any page with nodeId={NodeId}. This is most likely caused by the page not being published.", id); + _logger.LogDebug("Couldn't find any page with nodeId={NodeId}. This is most likely caused by the page not being published.", id); return null; } diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index 04f97d1a15..cf369ef720 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -105,7 +105,7 @@ namespace Umbraco.Core.Runtime lock (_locko) { - _logger.Debug("Signaled ({Signaled}) ({SignalSource})", _signaled ? "again" : "first", source); + _logger.LogDebug("Signaled ({Signaled}) ({SignalSource})", _signaled ? "again" : "first", source); if (_signaled) return; if (_isMainDom == false) return; // probably not needed _signaled = true; @@ -126,7 +126,7 @@ namespace Umbraco.Core.Runtime } } - _logger.Debug("Stopped ({SignalSource})", source); + _logger.LogDebug("Stopped ({SignalSource})", source); } finally { diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs index 68f85df25a..41348507d3 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs @@ -227,9 +227,9 @@ namespace Umbraco.Core.Persistence protected override void OnException(Exception ex) { _logger.LogError(ex, "Exception ({InstanceId}).", InstanceId); - _logger.Debug("At:\r\n{StackTrace}", Environment.StackTrace); + _logger.LogDebug("At:\r\n{StackTrace}", Environment.StackTrace); if (EnableSqlTrace == false) - _logger.Debug("Sql:\r\n{Sql}", CommandToString(LastSQL, LastArgs)); + _logger.LogDebug("Sql:\r\n{Sql}", CommandToString(LastSQL, LastArgs)); base.OnException(ex); } @@ -242,13 +242,13 @@ namespace Umbraco.Core.Persistence cmd.CommandTimeout = cmd.Connection.ConnectionTimeout; if (EnableSqlTrace) - _logger.Debug("SQL Trace:\r\n{Sql}", CommandToString(cmd).Replace("{", "{{").Replace("}", "}}")); // TODO: these escapes should be builtin + _logger.LogDebug("SQL Trace:\r\n{Sql}", CommandToString(cmd).Replace("{", "{{").Replace("}", "}}")); // TODO: these escapes should be builtin #if DEBUG_DATABASES // detects whether the command is already in use (eg still has an open reader...) DatabaseDebugHelper.SetCommand(cmd, InstanceId + " [T" + System.Threading.Thread.CurrentThread.ManagedThreadId + "]"); var refsobj = DatabaseDebugHelper.GetReferencedObjects(cmd.Connection); - if (refsobj != null) _logger.Debug("Oops!" + Environment.NewLine + refsobj); + if (refsobj != null) _logger.LogDebug("Oops!" + Environment.NewLine + refsobj); #endif _cmd = cmd; diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs index e243ea45ef..b1e7e0e8e8 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs @@ -94,7 +94,7 @@ namespace Umbraco.Core.Persistence if (settings == null) { - logger.Debug("Missing connection string, defer configuration."); + logger.LogDebug("Missing connection string, defer configuration."); return; // not configured } @@ -104,7 +104,7 @@ namespace Umbraco.Core.Persistence var providerName = settings.ProviderName; if (string.IsNullOrWhiteSpace(connectionString) || string.IsNullOrWhiteSpace(providerName)) { - logger.Debug("Empty connection string or provider name, defer configuration."); + logger.LogDebug("Empty connection string or provider name, defer configuration."); return; // not configured } @@ -123,7 +123,7 @@ namespace Umbraco.Core.Persistence if (string.IsNullOrWhiteSpace(connectionString) || string.IsNullOrWhiteSpace(providerName)) { - logger.Debug("Missing connection string or provider name, defer configuration."); + logger.LogDebug("Missing connection string or provider name, defer configuration."); return; // not configured } @@ -188,7 +188,7 @@ namespace Umbraco.Core.Persistence // else leave unchanged } - _logger.Debug("SqlServer {SqlServerVersion}, DatabaseType is {DatabaseType} ({Source}).", + _logger.LogDebug("SqlServer {SqlServerVersion}, DatabaseType is {DatabaseType} ({Source}).", versionName, _databaseType, fromSettings ? "settings" : "detected"); } @@ -245,7 +245,7 @@ namespace Umbraco.Core.Persistence private SqlContext Initialize() { - _logger.Debug("Initializing."); + _logger.LogDebug("Initializing."); if (ConnectionString.IsNullOrWhiteSpace()) throw new InvalidOperationException("The factory has not been configured with a proper connection string."); if (_providerName.IsNullOrWhiteSpace()) throw new InvalidOperationException("The factory has not been configured with a proper provider name."); @@ -290,7 +290,7 @@ namespace Umbraco.Core.Persistence if (_npocoDatabaseFactory == null) throw new NullReferenceException("The call to UmbracoDatabaseFactory.Config yielded a null UmbracoDatabaseFactory instance."); - _logger.Debug("Initialized."); + _logger.LogDebug("Initialized."); return new SqlContext(_sqlSyntax, _databaseType, _pocoDataFactory, _mappers); } diff --git a/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs b/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs index ac8d0980c4..e1209bafdd 100644 --- a/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs +++ b/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs @@ -34,7 +34,7 @@ namespace Umbraco.Web.Routing /// A value indicating whether an Umbraco document was found and assigned. public bool TryFindContent(IPublishedRequest frequest) { - _logger.Debug("Looking for a page to handle 404."); + _logger.LogDebug("Looking for a page to handle 404."); // try to find a culture as best as we can var errorCulture = CultureInfo.CurrentUICulture; @@ -72,17 +72,17 @@ namespace Umbraco.Web.Routing if (error404.HasValue) { - _logger.Debug("Got id={ErrorNodeId}.", error404.Value); + _logger.LogDebug("Got id={ErrorNodeId}.", error404.Value); content = frequest.UmbracoContext.Content.GetById(error404.Value); - _logger.Debug(content == null + _logger.LogDebug(content == null ? "Could not find content with that id." : "Found corresponding content."); } else { - _logger.Debug("Got nothing."); + _logger.LogDebug("Got nothing."); } frequest.PublishedContent = content; diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 3fb07b6841..4c0a088f3e 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -138,7 +138,7 @@ namespace Umbraco.Core.Runtime HostingEnvironment?.ApplicationId, HostingEnvironment?.ApplicationPhysicalPath, NetworkHelper.MachineName); - Logger.Debug("Runtime: {Runtime}", GetType().FullName); + Logger.LogDebug("Runtime: {Runtime}", GetType().FullName); AppDomain.CurrentDomain.SetData("DataDirectory", HostingEnvironment?.MapPathContentRoot(Constants.SystemDirectories.Data)); diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index 5141d30f9a..71633c3972 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -60,7 +60,7 @@ namespace Umbraco.Core.Runtime _sqlServerSyntax = sqlServerSyntaxProvider; - _logger.Debug("Acquiring lock..."); + _logger.LogDebug("Acquiring lock..."); var tempId = Guid.NewGuid().ToString(); @@ -93,7 +93,7 @@ namespace Umbraco.Core.Runtime // if we've inserted, then there was no MainDom so we can instantly acquire InsertLockRecord(_lockId, db); // so update with our appdomain id - _logger.Debug("Acquired with ID {LockId}", _lockId); + _logger.LogDebug("Acquired with ID {LockId}", _lockId); return true; } @@ -180,7 +180,7 @@ namespace Umbraco.Core.Runtime { // we are no longer main dom, another one has come online, exit _mainDomChanging = true; - _logger.Debug("Detected new booting application, releasing MainDom lock."); + _logger.LogDebug("Detected new booting application, releasing MainDom lock."); return; } } @@ -260,7 +260,7 @@ namespace Umbraco.Core.Runtime // so now we update the row with our appdomain id InsertLockRecord(_lockId, db); - _logger.Debug("Acquired with ID {LockId}", _lockId); + _logger.LogDebug("Acquired with ID {LockId}", _lockId); return true; } else if (mainDomRows.Count == 1 && !mainDomRows[0].Value.StartsWith(tempId)) @@ -269,7 +269,7 @@ namespace Umbraco.Core.Runtime // another new AppDomain has come online and is wanting to take over. In that case, we will not // acquire. - _logger.Debug("Cannot acquire, another booting application detected."); + _logger.LogDebug("Cannot acquire, another booting application detected."); return false; } } @@ -303,7 +303,7 @@ namespace Umbraco.Core.Runtime // which isn't ideal. // So... we're going to 'just' take over, if the writelock works then we'll assume we're ok - _logger.Debug("Timeout elapsed, assuming orphan row, acquiring MainDom."); + _logger.LogDebug("Timeout elapsed, assuming orphan row, acquiring MainDom."); using var transaction = db.GetTransaction(IsolationLevel.ReadCommitted); @@ -313,7 +313,7 @@ namespace Umbraco.Core.Runtime // so now we update the row with our appdomain id InsertLockRecord(_lockId, db); - _logger.Debug("Acquired with ID {LockId}", _lockId); + _logger.LogDebug("Acquired with ID {LockId}", _lockId); return true; } catch (Exception ex) @@ -398,12 +398,12 @@ namespace Umbraco.Core.Runtime // Otherwise, if we are just shutting down, we want to just delete the row. if (_mainDomChanging) { - _logger.Debug("Releasing MainDom, updating row, new application is booting."); + _logger.LogDebug("Releasing MainDom, updating row, new application is booting."); var count = db.Execute($"UPDATE umbracoKeyValue SET [value] = [value] + '{UpdatedSuffix}' WHERE [key] = @key", new { key = MainDomKey }); } else { - _logger.Debug("Releasing MainDom, deleting row, application is shutting down."); + _logger.LogDebug("Releasing MainDom, deleting row, application is shutting down."); var count = db.Execute("DELETE FROM umbracoKeyValue WHERE [key] = @key", new { key = MainDomKey }); } } diff --git a/src/Umbraco.Infrastructure/RuntimeState.cs b/src/Umbraco.Infrastructure/RuntimeState.cs index d48eb73c98..b23e5ad9f1 100644 --- a/src/Umbraco.Infrastructure/RuntimeState.cs +++ b/src/Umbraco.Infrastructure/RuntimeState.cs @@ -71,7 +71,7 @@ namespace Umbraco.Core { // local version *does* match code version, but the database is not configured // install - may happen with Deploy/Cloud/etc - _logger.Debug("Database is not configured, need to install Umbraco."); + _logger.LogDebug("Database is not configured, need to install Umbraco."); Level = RuntimeLevel.Install; Reason = RuntimeLevelReason.InstallNoDatabase; return; @@ -86,14 +86,14 @@ namespace Umbraco.Core { connect = _databaseFactory.CanConnect; if (connect || ++i == tries) break; - _logger.Debug("Could not immediately connect to database, trying again."); + _logger.LogDebug("Could not immediately connect to database, trying again."); Thread.Sleep(1000); } if (connect == false) { // cannot connect to configured database, this is bad, fail - _logger.Debug("Could not connect to database."); + _logger.LogDebug("Could not connect to database."); if (_globalSettings.InstallMissingDatabase) { @@ -154,7 +154,7 @@ namespace Umbraco.Core // although the files version matches the code version, the database version does not // which means the local files have been upgraded but not the database - need to upgrade - _logger.Debug("Has not reached the final upgrade step, need to upgrade Umbraco."); + _logger.LogDebug("Has not reached the final upgrade step, need to upgrade Umbraco."); Level = RuntimeLevel.Upgrade; Reason = RuntimeLevelReason.UpgradeMigrations; } @@ -171,7 +171,7 @@ namespace Umbraco.Core FinalMigrationState = upgrader.Plan.FinalState; } - logger.Debug("Final upgrade state is {FinalMigrationState}, database contains {DatabaseState}", FinalMigrationState, CurrentMigrationState ?? ""); + logger.LogDebug("Final upgrade state is {FinalMigrationState}, database contains {DatabaseState}", FinalMigrationState, CurrentMigrationState ?? ""); return CurrentMigrationState == FinalMigrationState; } diff --git a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs index 4bcc179fc9..4298c92aa7 100644 --- a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs +++ b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs @@ -245,7 +245,7 @@ namespace Umbraco.Web.Scheduling throw new InvalidOperationException("The task runner has completed."); // add task - _logger.Debug("{LogPrefix} Task Added {TaskType}", _logPrefix , task.GetType().FullName); + _logger.LogDebug("{LogPrefix} Task Added {TaskType}", _logPrefix , task.GetType().FullName); _tasks.Post(task); // start @@ -265,12 +265,12 @@ namespace Umbraco.Web.Scheduling { if (_completed) { - _logger.Debug("{LogPrefix} Task cannot be added {TaskType}, the task runner has already shutdown", _logPrefix, task.GetType().FullName); + _logger.LogDebug("{LogPrefix} Task cannot be added {TaskType}, the task runner has already shutdown", _logPrefix, task.GetType().FullName); return false; } // add task - _logger.Debug("{LogPrefix} Task added {TaskType}", _logPrefix, task.GetType().FullName); + _logger.LogDebug("{LogPrefix} Task added {TaskType}", _logPrefix, task.GetType().FullName); _tasks.Post(task); // start @@ -327,7 +327,7 @@ namespace Umbraco.Web.Scheduling _shutdownToken = _shutdownTokenSource.Token; _runningTask = Task.Run(async () => await Pump().ConfigureAwait(false), _shutdownToken); - _logger.Debug("{LogPrefix} Starting", _logPrefix); + _logger.LogDebug("{LogPrefix} Starting", _logPrefix); } /// @@ -446,7 +446,7 @@ namespace Umbraco.Web.Scheduling if (_shutdownToken.IsCancellationRequested == false && TaskCount > 0) continue; // if we really have nothing to do, stop - _logger.Debug("{LogPrefix} Stopping", _logPrefix); + _logger.LogDebug("{LogPrefix} Stopping", _logPrefix); if (_options.PreserveRunningTask == false) _runningTask = null; @@ -607,7 +607,7 @@ namespace Umbraco.Web.Scheduling private void OnEvent(TypedEventHandler, TArgs> handler, string name, TArgs e) { - _logger.Debug("{LogPrefix} OnEvent {EventName}", _logPrefix, name); + _logger.LogDebug("{LogPrefix} OnEvent {EventName}", _logPrefix, name); if (handler == null) return; diff --git a/src/Umbraco.Infrastructure/Scoping/Scope.cs b/src/Umbraco.Infrastructure/Scoping/Scope.cs index 3b17ae876d..d1f60666b9 100644 --- a/src/Umbraco.Infrastructure/Scoping/Scope.cs +++ b/src/Umbraco.Infrastructure/Scoping/Scope.cs @@ -323,7 +323,7 @@ namespace Umbraco.Core.Scoping if (completed.HasValue == false || completed.Value == false) { if (LogUncompletedScopes) - _logger.Debug("Uncompleted Child Scope at\r\n {StackTrace}", Environment.StackTrace); + _logger.LogDebug("Uncompleted Child Scope at\r\n {StackTrace}", Environment.StackTrace); _completed = false; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs index d17569d308..5fc195e92a 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs @@ -510,7 +510,7 @@ namespace Umbraco.Core.Services.Implement { ThreadPool.QueueUserWorkItem(state => { - _logger.Debug("Begin processing notifications."); + _logger.LogDebug("Begin processing notifications."); while (true) { NotificationRequest request; @@ -519,7 +519,7 @@ namespace Umbraco.Core.Services.Implement try { _emailSender.SendAsync(request.Mail).GetAwaiter().GetResult(); - _logger.Debug("Notification '{Action}' sent to {Username} ({Email})", request.Action, request.UserName, request.Email); + _logger.LogDebug("Notification '{Action}' sent to {Username} ({Email})", request.Action, request.UserName, request.Email); } catch (Exception ex) { @@ -538,7 +538,7 @@ namespace Umbraco.Core.Services.Implement } } - _logger.Debug("Done processing notifications."); + _logger.LogDebug("Done processing notifications."); }); } diff --git a/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs b/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs index b65254b181..d51ae4a114 100644 --- a/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs +++ b/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs @@ -157,7 +157,7 @@ namespace Umbraco.Core.Sync { if (refresher == null) throw new ArgumentNullException(nameof(refresher)); - Current.Logger.Debug("Invoking refresher {RefresherType} on local server for message type RefreshByPayload", refresher.GetType()); + Current.Logger.LogDebug("Invoking refresher {RefresherType} on local server for message type RefreshByPayload", refresher.GetType()); var payloadRefresher = refresher as IPayloadCacheRefresher; if (payloadRefresher == null) @@ -179,7 +179,7 @@ namespace Umbraco.Core.Sync { if (refresher == null) throw new ArgumentNullException(nameof(refresher)); - Current.Logger.Debug("Invoking refresher {RefresherType} on local server for message type {MessageType}", refresher.GetType(), messageType); + Current.Logger.LogDebug("Invoking refresher {RefresherType} on local server for message type {MessageType}", refresher.GetType(), messageType); switch (messageType) { @@ -240,7 +240,7 @@ namespace Umbraco.Core.Sync { if (refresher == null) throw new ArgumentNullException(nameof(refresher)); - Current.Logger.Debug("Invoking refresher {RefresherType} on local server for message type {MessageType}", refresher.GetType(), messageType); + Current.Logger.LogDebug("Invoking refresher {RefresherType} on local server for message type {MessageType}", refresher.GetType(), messageType); var typedRefresher = refresher as ICacheRefresher; @@ -276,7 +276,7 @@ namespace Umbraco.Core.Sync //{ // if (refresher == null) throw new ArgumentNullException("refresher"); - // Current.Logger.Debug("Invoking refresher {0} on local server for message type Notify", + // Current.Logger.LogDebug("Invoking refresher {0} on local server for message type Notify", // () => refresher.GetType()); // refresher.Notify(payload); diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index e0898f5965..4a514f82f5 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -68,7 +68,7 @@ namespace Umbraco.ModelsBuilder.Embedded private void RequestModelsGeneration(object sender, EventArgs args) { //HttpContext.Current.Items[this] = true; - _logger.Debug("Requested to generate models."); + _logger.LogDebug("Requested to generate models."); Interlocked.Exchange(ref _req, 1); } @@ -82,7 +82,7 @@ namespace Umbraco.ModelsBuilder.Embedded try { - _logger.Debug("Generate models..."); + _logger.LogDebug("Generate models..."); const int timeout = 2 * 60 * 1000; // 2 mins _mutex.WaitOne(timeout); // wait until it is safe, and acquire _logger.LogInformation("Generate models now."); diff --git a/src/Umbraco.Tests/Integration/ContentEventsTests.cs b/src/Umbraco.Tests/Integration/ContentEventsTests.cs index 575215c41f..1bedfed768 100644 --- a/src/Umbraco.Tests/Integration/ContentEventsTests.cs +++ b/src/Umbraco.Tests/Integration/ContentEventsTests.cs @@ -94,7 +94,7 @@ namespace Umbraco.Tests.Integration { _events = new List(); _msgCount = 0; - Current.Logger.Debug("RESET EVENTS"); + Current.Logger.LogDebug("RESET EVENTS"); } private IContent CreateContent(int parentId = -1) diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index 895e13fe42..8a3d307507 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -426,7 +426,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache // assumes xml lock (file is always locked) private void LoadXmlLocked(SafeXmlReaderWriter safeXml, out bool registerXmlChange) { - Current.Logger.Debug("Loading Xml..."); + Current.Logger.LogDebug("Loading Xml..."); // try to get it from the file if (XmlFileEnabled && (safeXml.Xml = LoadXmlFromFile()) != null) @@ -834,7 +834,7 @@ AND (umbracoNode.id=@id)"; _nextFileCheck = now.AddSeconds(1); // check every 1s if (XmlFileLastWriteTime <= _lastFileRead) return; - Current.Logger.Debug("Xml file change detected, reloading."); + Current.Logger.LogDebug("Xml file change detected, reloading."); // time to read @@ -1042,7 +1042,7 @@ ORDER BY umbracoNode.level, umbracoNode.sortOrder"; { foreach (var payload in payloads) { - Current.Logger.Debug("Notified {ChangeTypes} for content {ContentId}", payload.ChangeTypes, payload.Id); + Current.Logger.LogDebug("Notified {ChangeTypes} for content {ContentId}", payload.ChangeTypes, payload.Id); if (payload.ChangeTypes.HasType(TreeChangeTypes.RefreshAll)) { @@ -1075,7 +1075,7 @@ ORDER BY umbracoNode.level, umbracoNode.sortOrder"; if (content == null || content.Published == false || content.Trashed) { // no published version - Current.Logger.Debug("Notified, content {ContentId} has no published version.", payload.Id); + Current.Logger.LogDebug("Notified, content {ContentId} has no published version.", payload.Id); if (current != null) { @@ -1114,7 +1114,7 @@ ORDER BY umbracoNode.level, umbracoNode.sortOrder"; if (dtos.MoveNext() == false) { // gone fishing, remove (possible race condition) - Current.Logger.Debug("Notified, content {ContentId} gone fishing.", payload.Id); + Current.Logger.LogDebug("Notified, content {ContentId} gone fishing.", payload.Id); if (current != null) { @@ -1228,7 +1228,7 @@ ORDER BY umbracoNode.level, umbracoNode.sortOrder"; .ToArray(); foreach (var payload in payloads) - Current.Logger.Debug("Notified {ChangeTypes} for content type {ContentTypeId}", payload.ChangeTypes, payload.Id); + Current.Logger.LogDebug("Notified {ChangeTypes} for content type {ContentTypeId}", payload.ChangeTypes, payload.Id); if (ids.Length > 0) // must have refreshes, not only removes RefreshContentTypes(ids); @@ -1247,7 +1247,7 @@ ORDER BY umbracoNode.level, umbracoNode.sortOrder"; _contentTypeCache.ClearDataType(payload.Id); foreach (var payload in payloads) - Current.Logger.Debug("Notified {RemovedStatus} for data type {payload.Id}", + Current.Logger.LogDebug("Notified {RemovedStatus} for data type {payload.Id}", payload.Removed ? "Removed" : "Refreshed", payload.Id); diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs index 14769e02cd..76d00882e9 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs @@ -61,7 +61,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache if (touched == false) return; - _logger.Debug("Created, save in {WaitMilliseconds}ms.", WaitMilliseconds); + _logger.LogDebug("Created, save in {WaitMilliseconds}ms.", WaitMilliseconds); _initialTouch = DateTime.Now; _timer = new Timer(_ => TimerRelease()); _timer.Change(WaitMilliseconds, 0); @@ -83,22 +83,22 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache { if (_released) // our timer has triggered OR the runner is shutting down { - _logger.Debug("Touched, was released..."); + _logger.LogDebug("Touched, was released..."); // release: has run or is running, too late, return a new task (adds itself to runner) if (_runner == null) { - _logger.Debug("Runner is down, run now."); + _logger.LogDebug("Runner is down, run now."); runNow = true; } else { - _logger.Debug("Create new..."); + _logger.LogDebug("Create new..."); ret = new XmlStoreFilePersister(_runner, _store, _logger, true); if (ret._runner == null) { // could not enlist with the runner, runner is completed, must run now - _logger.Debug("Runner is down, run now."); + _logger.LogDebug("Runner is down, run now."); runNow = true; } } @@ -106,7 +106,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache else if (_timer == null) // we don't have a timer yet { - _logger.Debug("Touched, was idle, start and save in {WaitMilliseconds}ms.", WaitMilliseconds); + _logger.LogDebug("Touched, was idle, start and save in {WaitMilliseconds}ms.", WaitMilliseconds); _initialTouch = DateTime.Now; _timer = new Timer(_ => TimerRelease()); _timer.Change(WaitMilliseconds, 0); @@ -119,12 +119,12 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache if (DateTime.Now - _initialTouch < TimeSpan.FromMilliseconds(MaxWaitMilliseconds)) { - _logger.Debug("Touched, was waiting, can delay, save in {WaitMilliseconds}ms.", WaitMilliseconds); + _logger.LogDebug("Touched, was waiting, can delay, save in {WaitMilliseconds}ms.", WaitMilliseconds); _timer.Change(WaitMilliseconds, 0); } else { - _logger.Debug("Touched, was waiting, cannot delay."); + _logger.LogDebug("Touched, was waiting, cannot delay."); } } } @@ -144,7 +144,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache { lock (_locko) { - _logger.Debug("Timer: release."); + _logger.LogDebug("Timer: release."); _released = true; Release(); @@ -157,7 +157,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache { lock (_locko) { - _logger.Debug("Run now (sync)."); + _logger.LogDebug("Run now (sync)."); // not really needed but safer (it's only us invoking Run, but the method is public...) _released = true; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index f64360efc7..9ebc3801a7 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -245,7 +245,7 @@ namespace Umbraco.Web.BackOffice.Controllers { var indexer = (IIndex)sender; - _logger.Debug("Logging operation completed for index {IndexName}", indexer.Name); + _logger.LogDebug("Logging operation completed for index {IndexName}", indexer.Name); //ensure it's not listening anymore indexer.IndexOperationComplete -= Indexer_IndexOperationComplete; diff --git a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs index 16ab197930..65795b6a0b 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs @@ -113,7 +113,7 @@ namespace Umbraco.Web.BackOffice.Controllers if (userIsAdmin == false) { var errorMessage = "User is not a member of the administrators group and so is not allowed to toggle the URL tracker"; - _logger.Debug(errorMessage); + _logger.LogDebug(errorMessage); throw new SecurityException(errorMessage); } diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index 6ac3727114..a3c667f8d4 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -120,7 +120,7 @@ namespace Umbraco.Web.WebApi.Filters tempFolders.Add(dir); } - _logger.Debug( + _logger.LogDebug( "Removing temp file {FileName}", f.TempFilePath); try diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index 462a0bf7b8..0fe9c663bc 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -21,7 +21,7 @@ namespace Umbraco.Web public void Debug(string msg) { - _logger.Debug(msg); + _logger.LogDebug(msg); } public void Info(string msg) diff --git a/src/Umbraco.Web/UmbracoModule.cs b/src/Umbraco.Web/UmbracoModule.cs index db10ede0c5..3dfd648667 100644 --- a/src/Umbraco.Web/UmbracoModule.cs +++ b/src/Umbraco.Web/UmbracoModule.cs @@ -50,7 +50,7 @@ namespace Umbraco.Web var end = false; var response = context.Response; - logger.Debug("Response status: Redirect={Redirect}, Is404={Is404}, StatusCode={ResponseStatusCode}", + logger.LogDebug("Response status: Redirect={Redirect}, Is404={Is404}, StatusCode={ResponseStatusCode}", pcr.IsRedirect ? (pcr.IsRedirectPermanent ? "permanent" : "redirect") : "none", pcr.Is404 ? "true" : "false", pcr.ResponseStatusCode); @@ -97,7 +97,7 @@ namespace Umbraco.Web context.ApplicationInstance.CompleteRequest(); // though some say that .CompleteRequest() does not properly shutdown the response // and the request will hang until the whole code has run... would need to test? - logger.Debug("Response status: redirecting, complete request now."); + logger.LogDebug("Response status: redirecting, complete request now."); return end; } diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index e0b5bbcc23..1f944bad99 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -111,7 +111,7 @@ namespace Umbraco.Web.WebApi.Filters tempFolders.Add(dir); } - Current.Logger.Debug("Removing temp file {FileName}", f.TempFilePath); + Current.Logger.LogDebug("Removing temp file {FileName}", f.TempFilePath); try { From bd972e1be24b67e0657d0674acc221d79023d5a5 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 10:27:21 +0200 Subject: [PATCH 21/85] Completely remove LoggerExtensions --- src/Umbraco.Core/Logging/LoggerExtensions.cs | 19 ------------------- src/Umbraco.Core/Logging/ProfilingLogger.cs | 4 ++-- 2 files changed, 2 insertions(+), 21 deletions(-) delete mode 100644 src/Umbraco.Core/Logging/LoggerExtensions.cs diff --git a/src/Umbraco.Core/Logging/LoggerExtensions.cs b/src/Umbraco.Core/Logging/LoggerExtensions.cs deleted file mode 100644 index 5c4112ffaf..0000000000 --- a/src/Umbraco.Core/Logging/LoggerExtensions.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - /// - /// Provides extension methods for the interface. - /// - public static class LoggerExtensions - { - /// - /// Determines if logging is enabled at a specified level, for a reporting type. - /// - /// The reporting type. - /// The logger. - /// The level. - public static bool IsEnabled(this ILogger logger, LogLevel level) - => logger.IsEnabled(typeof(T), level); - } -} diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 6611a81123..b20a9ae57a 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -43,14 +43,14 @@ namespace Umbraco.Core.Logging public DisposableTimer DebugDuration(string startMessage) { - return Logger.IsEnabled(LogLevel.Debug) + return Logger.IsEnabled(typeof(T), LogLevel.Debug) ? DebugDuration(startMessage, "Completed.") : null; } public DisposableTimer DebugDuration(string startMessage, string completeMessage, string failMessage = null, int thresholdMilliseconds = 0) { - return Logger.IsEnabled(LogLevel.Debug) + return Logger.IsEnabled(typeof(T), LogLevel.Debug) ? new DisposableTimer(Logger, LogLevel.Debug, Profiler, typeof(T), startMessage, completeMessage, failMessage, thresholdMilliseconds) : null; } From 52051629bafbf43a39a17d3329adb61b7c40e40b Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 10:55:41 +0200 Subject: [PATCH 22/85] Use generic logger in controllers --- src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs | 4 ++-- .../Controllers/ExamineManagementController.cs | 4 ++-- .../Controllers/RedirectUrlManagementController.cs | 4 ++-- src/Umbraco.Web/Editors/BackOfficeController.cs | 2 +- src/Umbraco.Web/Mvc/RenderMvcController.cs | 2 +- src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs | 2 +- src/Umbraco.Web/Mvc/UmbracoController.cs | 6 +++--- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index 5536accba7..9b58317f8b 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -155,7 +155,7 @@ namespace Umbraco.Tests.Routing Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), - Factory.GetInstance()); + Factory.GetInstance>()); }), ShortStringHelper); handler.GetHandlerForRoute(httpContext.Request.RequestContext, frequest); @@ -192,7 +192,7 @@ namespace Umbraco.Tests.Routing /// public class CustomDocumentController : RenderMvcController { - public CustomDocumentController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + public CustomDocumentController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, Umbraco.Core.Logging.ILogger logger) : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { } diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index 9ebc3801a7..3bd984b579 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -22,14 +22,14 @@ namespace Umbraco.Web.BackOffice.Controllers public class ExamineManagementController : UmbracoAuthorizedJsonController { private readonly IExamineManager _examineManager; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; private readonly IIndexDiagnosticsFactory _indexDiagnosticsFactory; private readonly IAppPolicyCache _runtimeCache; private readonly IndexRebuilder _indexRebuilder; - public ExamineManagementController(IExamineManager examineManager, ILogger logger, IIOHelper ioHelper, IIndexDiagnosticsFactory indexDiagnosticsFactory, + public ExamineManagementController(IExamineManager examineManager, ILogger logger, IIOHelper ioHelper, IIndexDiagnosticsFactory indexDiagnosticsFactory, AppCaches appCaches, IndexRebuilder indexRebuilder) { diff --git a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs index 65795b6a0b..5e9943c913 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs @@ -19,7 +19,7 @@ namespace Umbraco.Web.BackOffice.Controllers [PluginController(Constants.Web.Mvc.BackOfficeApiArea)] public class RedirectUrlManagementController : UmbracoAuthorizedApiController { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IWebRoutingSettings _webRoutingSettings; private readonly IWebSecurity _webSecurity; private readonly IRedirectUrlService _redirectUrlService; @@ -28,7 +28,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IConfigManipulator _configManipulator; public RedirectUrlManagementController( - ILogger logger, + ILogger logger, IWebRoutingSettings webRoutingSettings, IWebSecurity webSecurity, IRedirectUrlService redirectUrlService, diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs index f3cc3b6185..1055a54130 100644 --- a/src/Umbraco.Web/Editors/BackOfficeController.cs +++ b/src/Umbraco.Web/Editors/BackOfficeController.cs @@ -44,7 +44,7 @@ namespace Umbraco.Web.Editors ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, - ILogger logger, + ILogger logger, IUmbracoVersion umbracoVersion, IContentSettings contentSettings, IHostingEnvironment hostingEnvironment, diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 2f8b5c863f..d9691cb186 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -25,7 +25,7 @@ namespace Umbraco.Web.Mvc ActionInvoker = new RenderActionInvoker(); } - public RenderMvcController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + public RenderMvcController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { ActionInvoker = new RenderActionInvoker(); diff --git a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs index 6835e462f4..0f1ea42df5 100644 --- a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs @@ -21,7 +21,7 @@ namespace Umbraco.Web.Mvc { } - protected UmbracoAuthorizedController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + protected UmbracoAuthorizedController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) { } diff --git a/src/Umbraco.Web/Mvc/UmbracoController.cs b/src/Umbraco.Web/Mvc/UmbracoController.cs index 139257904f..10b7dc8f1a 100644 --- a/src/Umbraco.Web/Mvc/UmbracoController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoController.cs @@ -48,7 +48,7 @@ namespace Umbraco.Web.Mvc /// /// Gets or sets the logger. /// - public ILogger Logger { get; } + public ILogger Logger { get; } /// /// Gets or sets the profiling logger. @@ -74,12 +74,12 @@ namespace Umbraco.Web.Mvc Current.Factory.GetInstance(), Current.Factory.GetInstance(), Current.Factory.GetInstance(), - Current.Factory.GetInstance() + Current.Factory.GetInstance>() ) { } - protected UmbracoController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + protected UmbracoController(IGlobalSettings globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) { GlobalSettings = globalSettings; UmbracoContextAccessor = umbracoContextAccessor; From 120e163682d601554eaa6c9d4cda52dd9f8c66b0 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 13:08:27 +0200 Subject: [PATCH 23/85] Begin trying to replace logger in Current --- src/Umbraco.Core/Composing/Current.cs | 7 +++-- src/Umbraco.Core/Composing/TypeFinder.cs | 6 ++-- src/Umbraco.Core/Models/Member.cs | 3 +- src/Umbraco.Core/Runtime/MainDom.cs | 6 ++-- src/Umbraco.Core/UriExtensions.cs | 1 + .../UmbracoServiceProviderFactory.cs | 2 +- .../HealthCheck/HealthCheckResults.cs | 2 +- .../Models/PropertyTagsExtensions.cs | 1 + .../Persistence/DbConnectionExtensions.cs | 2 +- .../SqlSyntax/SqlServerSyntaxProvider.cs | 3 +- .../Persistence/UmbracoDatabase.cs | 8 +++--- .../Persistence/UmbracoDatabaseFactory.cs | 16 ++++++----- .../PropertyEditors/DataValueEditor.cs | 2 +- .../ValueConverters/GridValueConverter.cs | 2 +- .../ImageCropperValueConverter.cs | 2 +- .../ValueConverters/JsonValueConverter.cs | 2 +- .../Routing/NotFoundHandlerHelper.cs | 2 +- .../Runtime/CoreRuntime.cs | 2 +- .../Runtime/MainDomSemaphoreLock.cs | 6 ++-- .../Runtime/SqlMainDomLock.cs | 9 +++--- .../LocalizedTextServiceFileSources.cs | 2 ++ src/Umbraco.Infrastructure/Suspendable.cs | 4 +-- .../Sync/ServerMessengerBase.cs | 2 +- .../TypeFinderBenchmarks.cs | 8 +++--- .../Umbraco.Tests.Benchmarks.csproj | 3 ++ src/Umbraco.Tests.Common/TestHelperBase.cs | 2 +- .../Umbraco.Core/Composing/TypeFinderTests.cs | 9 ++++-- .../Integration/ContentEventsTests.cs | 4 +-- .../DictionaryPublishedContent.cs | 2 +- .../LegacyXmlPublishedCache/PreviewContent.cs | 2 +- .../PublishedMediaCache.cs | 2 +- .../LegacyXmlPublishedCache/XmlStore.cs | 2 +- .../Services/ContentServicePerformanceTest.cs | 1 + src/Umbraco.Tests/TestHelpers/TestHelper.cs | 2 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 28 +++++++++++++++++-- .../ImageCropperTemplateExtensions.cs | 1 + .../UmbracoCoreServiceCollectionExtensions.cs | 11 ++++---- .../AspNet/AspNetBackOfficeInfo.cs | 6 ++-- src/Umbraco.Web/CdfLogger.cs | 4 +-- src/Umbraco.Web/Composing/Current.cs | 2 +- src/Umbraco.Web/ImageProcessorLogger.cs | 2 +- src/Umbraco.Web/Logging/OwinLogger.cs | 2 +- .../Mvc/AdminTokenAuthorizeAttribute.cs | 4 +-- src/Umbraco.Web/Mvc/RenderRouteHandler.cs | 2 +- .../AuthenticationOptionsExtensions.cs | 1 + src/Umbraco.Web/Security/MembershipHelper.cs | 3 +- .../Security/MembershipProviderBase.cs | 2 +- .../Providers/UmbracoMembershipProvider.cs | 2 +- src/Umbraco.Web/UmbracoApplication.cs | 9 +++--- src/Umbraco.Web/UmbracoApplicationBase.cs | 28 +++++++++++++++---- src/Umbraco.Web/UmbracoHelper.cs | 1 + src/Umbraco.Web/UmbracoHttpHandler.cs | 1 + src/Umbraco.Web/UmbracoInjectedModule.cs | 2 +- src/Umbraco.Web/UmbracoModule.cs | 2 +- src/Umbraco.Web/UmbracoWebService.cs | 2 ++ .../Filters/AngularAntiForgeryHelper.cs | 2 +- .../FileUploadCleanupFilterAttribute.cs | 2 +- .../WebApi/UnhandledExceptionLogger.cs | 2 +- 58 files changed, 157 insertions(+), 93 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 1ca99e1348..fb2c82030a 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -6,13 +6,14 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging.Abstractions; using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Composing { public static class Current { - private static ILogger _logger = new NullLogger(); + private static Microsoft.Extensions.Logging.ILogger _logger = new NullLogger(); private static ILoggerFactory _loggerFactory; private static Configs _configs; private static IIOHelper _ioHelper; @@ -20,7 +21,7 @@ namespace Umbraco.Composing private static IBackOfficeInfo _backOfficeInfo; private static IProfiler _profiler; - public static ILogger Logger => EnsureInitialized(_logger); + public static Microsoft.Extensions.Logging.ILogger Logger => EnsureInitialized(_logger); public static Configs Configs => EnsureInitialized(_configs); public static IIOHelper IOHelper => EnsureInitialized(_ioHelper); public static IHostingEnvironment HostingEnvironment => EnsureInitialized(_hostingEnvironment); @@ -40,7 +41,7 @@ namespace Umbraco.Composing } public static void Initialize( - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, Configs configs, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, diff --git a/src/Umbraco.Core/Composing/TypeFinder.cs b/src/Umbraco.Core/Composing/TypeFinder.cs index 0d4faf261b..4cfcd9090c 100644 --- a/src/Umbraco.Core/Composing/TypeFinder.cs +++ b/src/Umbraco.Core/Composing/TypeFinder.cs @@ -6,7 +6,7 @@ using System.Reflection; using System.Security; using System.Text; using Umbraco.Core.Configuration.UmbracoSettings; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Composing { @@ -14,7 +14,7 @@ namespace Umbraco.Core.Composing /// public class TypeFinder : ITypeFinder { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IAssemblyProvider _assemblyProvider; private readonly IRuntimeHash _runtimeHash; private volatile HashSet _localFilteredAssemblyCache; @@ -26,7 +26,7 @@ namespace Umbraco.Core.Composing // used for benchmark tests internal bool QueryWithReferencingAssemblies = true; - public TypeFinder(ILogger logger, IAssemblyProvider assemblyProvider, IRuntimeHash runtimeHash, ITypeFinderConfig typeFinderConfig = null) + public TypeFinder(ILogger logger, IAssemblyProvider assemblyProvider, IRuntimeHash runtimeHash, ITypeFinderConfig typeFinderConfig = null) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _assemblyProvider = assemblyProvider; diff --git a/src/Umbraco.Core/Models/Member.cs b/src/Umbraco.Core/Models/Member.cs index d22636dd68..d155db8b7c 100644 --- a/src/Umbraco.Core/Models/Member.cs +++ b/src/Umbraco.Core/Models/Member.cs @@ -2,8 +2,9 @@ using System.Collections.Generic; using System.ComponentModel; using System.Runtime.Serialization; +using Microsoft.Extensions.Logging; using Umbraco.Composing; -using Umbraco.Core.Logging; + namespace Umbraco.Core.Models { diff --git a/src/Umbraco.Core/Runtime/MainDom.cs b/src/Umbraco.Core/Runtime/MainDom.cs index cf369ef720..797dfa36e1 100644 --- a/src/Umbraco.Core/Runtime/MainDom.cs +++ b/src/Umbraco.Core/Runtime/MainDom.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; namespace Umbraco.Core.Runtime { @@ -20,7 +20,7 @@ namespace Umbraco.Core.Runtime { #region Vars - private readonly ILogger _logger; + private readonly ILogger _logger; private IApplicationShutdownRegistry _hostingEnvironment; private readonly IMainDomLock _mainDomLock; @@ -42,7 +42,7 @@ namespace Umbraco.Core.Runtime #region Ctor // initializes a new instance of MainDom - public MainDom(ILogger logger, IMainDomLock systemLock) + public MainDom(ILogger logger, IMainDomLock systemLock) { _logger = logger; _mainDomLock = systemLock; diff --git a/src/Umbraco.Core/UriExtensions.cs b/src/Umbraco.Core/UriExtensions.cs index 5ecbc38183..3ecc919c10 100644 --- a/src/Umbraco.Core/UriExtensions.cs +++ b/src/Umbraco.Core/UriExtensions.cs @@ -1,6 +1,7 @@ using System; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; diff --git a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs index 56a972a64b..d293097144 100644 --- a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs +++ b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs @@ -85,7 +85,7 @@ namespace Umbraco.Core.Composing { // after cross wiring, configure "Current" Current.Initialize( - _container.GetInstance(), + _container.GetInstance>(), _container.GetInstance(), _container.GetInstance(), _container.GetInstance(), diff --git a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs index 393a78308b..7eebf61b22 100644 --- a/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs +++ b/src/Umbraco.Infrastructure/HealthCheck/HealthCheckResults.cs @@ -5,7 +5,7 @@ using System.Text; using HeyRed.MarkdownSharp; using Umbraco.Composing; using Umbraco.Core.Configuration.HealthChecks; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.HealthCheck { diff --git a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs index ff3ad57585..bea07879fb 100644 --- a/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PropertyTagsExtensions.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Composing; diff --git a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs index a17692269e..e00288d94c 100644 --- a/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs +++ b/src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs @@ -3,9 +3,9 @@ using System.Data; using System.Data.Common; using System.Data.SqlClient; using System.Linq; +using Microsoft.Extensions.Logging; using StackExchange.Profiling.Data; using Umbraco.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence.FaultHandling; namespace Umbraco.Core.Persistence diff --git a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs index 0c69fd7ebc..a87c9bdfa6 100644 --- a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs +++ b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs @@ -4,6 +4,7 @@ using System.Data; using System.Data.Common; using System.Data.SqlClient; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Logging; using Umbraco.Core.Persistence.DatabaseModelDefinitions; @@ -105,7 +106,7 @@ namespace Umbraco.Core.Persistence.SqlSyntax } } - internal ServerVersionInfo GetSetVersion(string connectionString, string providerName, ILogger logger) + internal ServerVersionInfo GetSetVersion(string connectionString, string providerName, Microsoft.Extensions.Logging.ILogger logger) { //var factory = DbProviderFactories.GetFactory(providerName); var factory = SqlClientFactory.Instance; diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs index 41348507d3..37c47da50d 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs @@ -5,9 +5,9 @@ using System.Data.Common; using System.Data.SqlClient; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using NPoco; using StackExchange.Profiling; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence.FaultHandling; using Umbraco.Core.Persistence.SqlSyntax; @@ -23,7 +23,7 @@ namespace Umbraco.Core.Persistence /// public class UmbracoDatabase : Database, IUmbracoDatabase { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IBulkSqlInsertProvider _bulkSqlInsertProvider; private readonly RetryPolicy _connectionRetryPolicy; private readonly RetryPolicy _commandRetryPolicy; @@ -39,7 +39,7 @@ namespace Umbraco.Core.Persistence /// Used by UmbracoDatabaseFactory to create databases. /// Also used by DatabaseBuilder for creating databases and installing/upgrading. /// - public UmbracoDatabase(string connectionString, ISqlContext sqlContext, DbProviderFactory provider, ILogger logger, IBulkSqlInsertProvider bulkSqlInsertProvider, RetryPolicy connectionRetryPolicy = null, RetryPolicy commandRetryPolicy = null) + public UmbracoDatabase(string connectionString, ISqlContext sqlContext, DbProviderFactory provider, ILogger logger, IBulkSqlInsertProvider bulkSqlInsertProvider, RetryPolicy connectionRetryPolicy = null, RetryPolicy commandRetryPolicy = null) : base(connectionString, sqlContext.DatabaseType, provider, sqlContext.SqlSyntax.DefaultIsolationLevel) { SqlContext = sqlContext; @@ -58,7 +58,7 @@ namespace Umbraco.Core.Persistence /// Initializes a new instance of the class. /// /// Internal for unit tests only. - internal UmbracoDatabase(DbConnection connection, ISqlContext sqlContext, ILogger logger, IBulkSqlInsertProvider bulkSqlInsertProvider) + internal UmbracoDatabase(DbConnection connection, ISqlContext sqlContext, ILogger logger, IBulkSqlInsertProvider bulkSqlInsertProvider) : base(connection, sqlContext.DatabaseType, sqlContext.SqlSyntax.DefaultIsolationLevel) { SqlContext = sqlContext; diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs index b1e7e0e8e8..d3c9518b18 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs @@ -2,11 +2,11 @@ using System.Data.Common; using System.Data.SqlClient; using System.Threading; +using Microsoft.Extensions.Logging; using NPoco; using NPoco.FluentMappings; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence.FaultHandling; using Umbraco.Core.Persistence.Mappers; using Umbraco.Core.Persistence.SqlSyntax; @@ -30,7 +30,8 @@ namespace Umbraco.Core.Persistence private readonly IDbProviderFactoryCreator _dbProviderFactoryCreator; private readonly IGlobalSettings _globalSettings; private readonly Lazy _mappers; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private object _lock = new object(); @@ -70,8 +71,8 @@ namespace Umbraco.Core.Persistence /// Initializes a new instance of the . /// /// Used by core runtime. - public UmbracoDatabaseFactory(ILogger logger, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, Lazy mappers,IDbProviderFactoryCreator dbProviderFactoryCreator) - : this(logger, globalSettings, connectionStrings, Constants.System.UmbracoConnectionName, mappers, dbProviderFactoryCreator) + public UmbracoDatabaseFactory(ILogger logger, ILoggerFactory loggerFactory, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, Lazy mappers,IDbProviderFactoryCreator dbProviderFactoryCreator) + : this(logger, loggerFactory, globalSettings, connectionStrings, Constants.System.UmbracoConnectionName, mappers, dbProviderFactoryCreator) { } @@ -80,7 +81,7 @@ namespace Umbraco.Core.Persistence /// Initializes a new instance of the . /// /// Used by the other ctor and in tests. - public UmbracoDatabaseFactory(ILogger logger, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, string connectionStringName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) + public UmbracoDatabaseFactory(ILogger logger, ILoggerFactory loggerFactory, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, string connectionStringName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) { if (connectionStringName == null) throw new ArgumentNullException(nameof(connectionStringName)); if (string.IsNullOrWhiteSpace(connectionStringName)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(connectionStringName)); @@ -89,6 +90,7 @@ namespace Umbraco.Core.Persistence _mappers = mappers ?? throw new ArgumentNullException(nameof(mappers)); _dbProviderFactoryCreator = dbProviderFactoryCreator ?? throw new ArgumentNullException(nameof(dbProviderFactoryCreator)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory; var settings = connectionStrings[connectionStringName]; @@ -115,7 +117,7 @@ namespace Umbraco.Core.Persistence /// Initializes a new instance of the . /// /// Used in tests. - public UmbracoDatabaseFactory(ILogger logger, string connectionString, string providerName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) + public UmbracoDatabaseFactory(ILogger logger, string connectionString, string providerName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) { _mappers = mappers ?? throw new ArgumentNullException(nameof(mappers)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); @@ -312,7 +314,7 @@ namespace Umbraco.Core.Persistence // method used by NPoco's UmbracoDatabaseFactory to actually create the database instance private UmbracoDatabase CreateDatabaseInstance() { - return new UmbracoDatabase(ConnectionString, SqlContext, DbProviderFactory, _logger, _bulkSqlInsertProvider, _connectionRetryPolicy, _commandRetryPolicy); + return new UmbracoDatabase(ConnectionString, SqlContext, DbProviderFactory, _loggerFactory.CreateLogger(), _bulkSqlInsertProvider, _connectionRetryPolicy, _commandRetryPolicy); } protected override void DisposeResources() diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs index 342e1cab3b..df9a06515c 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DataValueEditor.cs @@ -4,11 +4,11 @@ using System.ComponentModel.DataAnnotations; using System.Globalization; using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Composing; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors.Validators; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs index 8addda00dd..2dfcf4bda0 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs @@ -1,10 +1,10 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core.Composing; using Umbraco.Core.Configuration.Grid; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Composing; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs index 2feb676549..1f4bb330e8 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs @@ -1,8 +1,8 @@ using System; using System.Globalization; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Composing; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs index 6ce8a47925..972d8f56fe 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs @@ -1,8 +1,8 @@ using System; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Composing; diff --git a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs index a46b0be150..4412a40e59 100644 --- a/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs +++ b/src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs @@ -1,10 +1,10 @@ using System; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Composing; using Umbraco.Core; using Umbraco.Core.Configuration.UmbracoSettings; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Core.Xml; diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 4c0a088f3e..ec59837570 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -13,7 +13,7 @@ using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; -using ILogger = Umbraco.Core.Logging.ILogger; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Runtime { diff --git a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs index 37c1244e08..eed13f5060 100644 --- a/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/MainDomSemaphoreLock.cs @@ -1,8 +1,8 @@ using System; using System.Threading; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; namespace Umbraco.Core.Runtime { @@ -16,10 +16,10 @@ namespace Umbraco.Core.Runtime // event wait handle used to notify current main domain that it should // release the lock because a new domain wants to be the main domain private readonly EventWaitHandle _signal; - private readonly ILogger _logger; + private readonly ILogger _logger; private IDisposable _lockRelease; - public MainDomSemaphoreLock(ILogger logger, IHostingEnvironment hostingEnvironment) + public MainDomSemaphoreLock(ILogger logger, IHostingEnvironment hostingEnvironment) { var lockName = "UMBRACO-" + MainDom.GetMainDomId(hostingEnvironment) + "-MAINDOM-LCK"; _systemLock = new SystemLock(lockName); diff --git a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs index 71633c3972..b4385654c9 100644 --- a/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs +++ b/src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs @@ -6,9 +6,9 @@ using System.Linq; using System.Security.Cryptography; using System.Threading; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Mappers; @@ -21,7 +21,7 @@ namespace Umbraco.Core.Runtime private string _lockId; private const string MainDomKeyPrefix = "Umbraco.Core.Runtime.SqlMainDom"; private const string UpdatedSuffix = "_updated"; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IHostingEnvironment _hostingEnvironment; private IUmbracoDatabase _db; private CancellationTokenSource _cancellationTokenSource = new CancellationTokenSource(); @@ -31,13 +31,14 @@ namespace Umbraco.Core.Runtime private bool _errorDuringAcquiring; private object _locker = new object(); - public SqlMainDomLock(ILogger logger, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, IDbProviderFactoryCreator dbProviderFactoryCreator, IHostingEnvironment hostingEnvironment) + public SqlMainDomLock(ILogger logger, ILoggerFactory loggerFactory, IGlobalSettings globalSettings, IConnectionStrings connectionStrings, IDbProviderFactoryCreator dbProviderFactoryCreator, IHostingEnvironment hostingEnvironment) { // unique id for our appdomain, this is more unique than the appdomain id which is just an INT counter to its safer _lockId = Guid.NewGuid().ToString(); _logger = logger; _hostingEnvironment = hostingEnvironment; - _dbFactory = new UmbracoDatabaseFactory(_logger, + _dbFactory = new UmbracoDatabaseFactory(loggerFactory.CreateLogger(), + loggerFactory, globalSettings, connectionStrings, Constants.System.UmbracoConnectionName, diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 30c03f1478..905361fe2f 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -9,6 +9,8 @@ using Umbraco.Composing; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Core.Services.Implement { diff --git a/src/Umbraco.Infrastructure/Suspendable.cs b/src/Umbraco.Infrastructure/Suspendable.cs index 57ef386c2e..e03931d0d7 100644 --- a/src/Umbraco.Infrastructure/Suspendable.cs +++ b/src/Umbraco.Infrastructure/Suspendable.cs @@ -1,6 +1,6 @@ -using Umbraco.Composing; +using Microsoft.Extensions.Logging; +using Umbraco.Composing; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Examine; using Umbraco.Web.Cache; using Umbraco.Web.Search; diff --git a/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs b/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs index d51ae4a114..d115bc7595 100644 --- a/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs +++ b/src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs @@ -4,7 +4,7 @@ using System.Linq; using Newtonsoft.Json; using Umbraco.Composing; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Sync { diff --git a/src/Umbraco.Tests.Benchmarks/TypeFinderBenchmarks.cs b/src/Umbraco.Tests.Benchmarks/TypeFinderBenchmarks.cs index 1571f63500..203e19fc6e 100644 --- a/src/Umbraco.Tests.Benchmarks/TypeFinderBenchmarks.cs +++ b/src/Umbraco.Tests.Benchmarks/TypeFinderBenchmarks.cs @@ -1,8 +1,9 @@ using BenchmarkDotNet.Attributes; using System; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Tests.Benchmarks.Config; namespace Umbraco.Tests.Benchmarks @@ -15,18 +16,17 @@ namespace Umbraco.Tests.Benchmarks [Benchmark(Baseline = true)] public void WithGetReferencingAssembliesCheck() { - var typeFinder1 = new TypeFinder(new NullLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder1 = new TypeFinder(new NullLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var found = typeFinder1.FindClassesOfType().Count(); } [Benchmark] public void WithoutGetReferencingAssembliesCheck() { - var typeFinder2 = new TypeFinder(new NullLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder2 = new TypeFinder(new NullLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); typeFinder2.QueryWithReferencingAssemblies = false; var found = typeFinder2.FindClassesOfType().Count(); } - } } diff --git a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj index 84ec535b9d..f0d1dff029 100644 --- a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj +++ b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj @@ -97,6 +97,9 @@ 0.11.3 + + 3.1.8 + \ No newline at end of file diff --git a/src/Umbraco.Tests.Common/TestHelperBase.cs b/src/Umbraco.Tests.Common/TestHelperBase.cs index cc01fa3528..c3f977e3c7 100644 --- a/src/Umbraco.Tests.Common/TestHelperBase.cs +++ b/src/Umbraco.Tests.Common/TestHelperBase.cs @@ -35,7 +35,7 @@ namespace Umbraco.Tests.Common { SettingsForTests = new SettingsForTests(); MainDom = new SimpleMainDom(); - _typeFinder = new TypeFinder(Mock.Of(), new DefaultUmbracoAssemblyProvider(entryAssembly), new VaryingRuntimeHash()); + _typeFinder = new TypeFinder(Mock.Of>(), new DefaultUmbracoAssemblyProvider(entryAssembly), new VaryingRuntimeHash()); } public ITypeFinder GetTypeFinder() => _typeFinder; diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index bd9a3c7632..88fffd349d 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -1,11 +1,13 @@ using System; using System.Linq; using System.Reflection; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Composing; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers.Stubs; using Umbraco.Web.BackOffice.Trees; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Composing { @@ -65,10 +67,11 @@ namespace Umbraco.Tests.Composing return new ProfilingLogger(logger, profiler); } - private static ILogger GetLogger() + // TODO: Is console logger the type of logger we want? + private static ILoggerFactory _factory = LoggerFactory.Create(builder => { builder.AddConsole(); }); + private static Microsoft.Extensions.Logging.ILogger GetLogger() { - // TODO: return some sort of actual logger. - return new NullLogger(); + return _factory.CreateLogger(); } [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] diff --git a/src/Umbraco.Tests/Integration/ContentEventsTests.cs b/src/Umbraco.Tests/Integration/ContentEventsTests.cs index 1bedfed768..9a1321c20f 100644 --- a/src/Umbraco.Tests/Integration/ContentEventsTests.cs +++ b/src/Umbraco.Tests/Integration/ContentEventsTests.cs @@ -6,7 +6,7 @@ using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Web.Composing; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories.Implement; using Umbraco.Core.Sync; @@ -33,7 +33,7 @@ namespace Umbraco.Tests.Integration { base.SetUp(); - _h1 = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _h1 = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); _h1.BindEvents(true); _events = new List(); diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs index 338d7ff305..c472778f9f 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs @@ -4,9 +4,9 @@ using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Xml.XPath; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Web.Composing; using Umbraco.Web.Models; diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs index 96f27a7051..7f8793b098 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PreviewContent.cs @@ -2,9 +2,9 @@ using System.IO; using System.Linq; using System.Xml; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; using Umbraco.Web.Composing; diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs index f9e152bdb7..02510d8e88 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs @@ -5,12 +5,12 @@ using System.IO; using System.Linq; using System.Threading; using System.Xml.XPath; +using Microsoft.Extensions.Logging; using Examine; using Examine.Search; using Lucene.Net.Store; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index 8a3d307507..c6680aa3e4 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -5,12 +5,12 @@ using System.IO; using System.Linq; using System.Text; using System.Xml; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Repositories; diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index 20c32f2f6f..0a14a0bf68 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; diff --git a/src/Umbraco.Tests/TestHelpers/TestHelper.cs b/src/Umbraco.Tests/TestHelpers/TestHelper.cs index 5c968f2f90..e48601c4e7 100644 --- a/src/Umbraco.Tests/TestHelpers/TestHelper.cs +++ b/src/Umbraco.Tests/TestHelpers/TestHelper.cs @@ -60,7 +60,7 @@ namespace Umbraco.Tests.TestHelpers public override IBackOfficeInfo GetBackOfficeInfo() => new AspNetBackOfficeInfo( SettingsForTests.GenerateMockGlobalSettings(GetUmbracoVersion()), - TestHelper.IOHelper, Mock.Of(), SettingsForTests.GenerateMockWebRoutingSettings()); + TestHelper.IOHelper, Mock.Of>(), SettingsForTests.GenerateMockWebRoutingSettings()); public override IHostingEnvironment GetHostingEnvironment() => new AspNetHostingEnvironment(SettingsForTests.DefaultHostingSettings); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 4fec590de1..852b0e2210 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -171,15 +171,16 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful var (logger, msLogger, profiler) = GetLoggers(Options.Logger); + var loggerFactoy = GetLoggerFactory(Options.Logger); var proflogger = new ProfilingLogger(logger, profiler); IOHelper = TestHelper.IOHelper; - TypeFinder = new TypeFinder(logger, new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + TypeFinder = new TypeFinder(loggerFactoy.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var appCaches = GetAppCaches(); var globalSettings = TestHelpers.SettingsForTests.DefaultGlobalSettings; var settings = TestHelpers.SettingsForTests.GenerateMockWebRoutingSettings(); - IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, IOHelper, logger, settings); + IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, IOHelper, loggerFactoy.CreateLogger(), settings); IIpResolver ipResolver = new AspNetIpResolver(); UmbracoVersion = new UmbracoVersion(globalSettings); @@ -256,6 +257,29 @@ namespace Umbraco.Tests.Testing #region Compose + protected virtual ILoggerFactory GetLoggerFactory(UmbracoTestOptions.Logger option) + { + ILoggerFactory factory; + + switch (option) + { + case UmbracoTestOptions.Logger.Mock: + // TODO: Make factory return mock of ILogger + factory = Mock.Of(); + break; + case UmbracoTestOptions.Logger.Serilog: + factory = LoggerFactory.Create(builder => { builder.AddSerilog(); }); + break; + case UmbracoTestOptions.Logger.Console: + factory = LoggerFactory.Create(builder => { builder.AddConsole(); }); + break; + default: + throw new NotSupportedException($"Logger option {option} is not supported."); + } + + return factory; + } + protected virtual (ILogger, Microsoft.Extensions.Logging.ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) { // TODO: Fix this, give the microsoft loggers a name diff --git a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs index 7808c83295..77c07e85b2 100644 --- a/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs @@ -4,6 +4,7 @@ using Newtonsoft.Json; using Umbraco.Composing; using Umbraco.Core; using Umbraco.Core.PropertyEditors.ValueConverters; +using Microsoft.Extensions.Logging; namespace Umbraco.Extensions { diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 2a59a0fa95..2d2230dcc8 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -15,6 +15,7 @@ using Microsoft.Extensions.Logging; using Serilog; using Serilog.Extensions.Hosting; using Serilog.Extensions.Logging; +using Umbraco.Composing; using Umbraco.Configuration; using Umbraco.Core; using Umbraco.Core.Cache; @@ -247,10 +248,10 @@ namespace Umbraco.Extensions var globalSettings = configs.Global(); var umbracoVersion = new UmbracoVersion(globalSettings); - var typeFinder = CreateTypeFinder(logger, profiler, webHostEnvironment, entryAssembly, configs.TypeFinder()); + var typeFinder = CreateTypeFinder(logger, Current.LoggerFactory, profiler, webHostEnvironment, entryAssembly, configs.TypeFinder()); var runtime = getRuntime( - configs, + configs, umbracoVersion, ioHelper, logger, @@ -267,12 +268,12 @@ namespace Umbraco.Extensions return services; } - private static ITypeFinder CreateTypeFinder(Core.Logging.ILogger logger, IProfiler profiler, IWebHostEnvironment webHostEnvironment, Assembly entryAssembly, ITypeFinderSettings typeFinderSettings) + private static ITypeFinder CreateTypeFinder(Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IWebHostEnvironment webHostEnvironment, Assembly entryAssembly, ITypeFinderSettings typeFinderSettings) { var runtimeHashPaths = new RuntimeHashPaths(); runtimeHashPaths.AddFolder(new DirectoryInfo(Path.Combine(webHostEnvironment.ContentRootPath, "bin"))); var runtimeHash = new RuntimeHash(new ProfilingLogger(logger, profiler), runtimeHashPaths); - return new TypeFinder(logger, new DefaultUmbracoAssemblyProvider(entryAssembly), runtimeHash, new TypeFinderConfig(typeFinderSettings)); + return new TypeFinder(loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider(entryAssembly), runtimeHash, new TypeFinderConfig(typeFinderSettings)); } private static IRuntime GetCoreRuntime( @@ -294,7 +295,7 @@ namespace Umbraco.Extensions var mainDom = new MainDom(logger, mainDomLock); var coreRuntime = new CoreRuntime( - configs, + configs, umbracoVersion, ioHelper, logger, diff --git a/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs b/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs index d72c64ebf9..66578f1517 100644 --- a/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs +++ b/src/Umbraco.Web/AspNet/AspNetBackOfficeInfo.cs @@ -3,7 +3,7 @@ using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.IO; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Web { @@ -11,10 +11,10 @@ namespace Umbraco.Web { private readonly IGlobalSettings _globalSettings; private readonly IIOHelper _ioHelper; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IWebRoutingSettings _webRoutingSettings; - public AspNetBackOfficeInfo(IGlobalSettings globalSettings, IIOHelper ioHelper, ILogger logger, IWebRoutingSettings webRoutingSettings) + public AspNetBackOfficeInfo(IGlobalSettings globalSettings, IIOHelper ioHelper, ILogger logger, IWebRoutingSettings webRoutingSettings) { _globalSettings = globalSettings; _ioHelper = ioHelper; diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs index 0fe9c663bc..c0cf2129fc 100644 --- a/src/Umbraco.Web/CdfLogger.cs +++ b/src/Umbraco.Web/CdfLogger.cs @@ -1,5 +1,5 @@ using System; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Web.Composing; using ICdfLogger = ClientDependency.Core.Logging.ILogger; using ICoreLogger = Umbraco.Core.Logging.ILogger; @@ -11,7 +11,7 @@ namespace Umbraco.Web /// public class CdfLogger : ICdfLogger { - private readonly ICoreLogger _logger; + private readonly ILogger _logger; // Client Dependency doesn't know how to inject public CdfLogger(/*ICoreLogger logger*/) diff --git a/src/Umbraco.Web/Composing/Current.cs b/src/Umbraco.Web/Composing/Current.cs index b41a45ae2d..94a76ef850 100644 --- a/src/Umbraco.Web/Composing/Current.cs +++ b/src/Umbraco.Web/Composing/Current.cs @@ -247,7 +247,7 @@ namespace Umbraco.Web.Composing public static IShortStringHelper ShortStringHelper => Factory.GetInstance(); - public static ILogger Logger => Umbraco.Composing.Current.Logger; + public static Microsoft.Extensions.Logging.ILogger Logger => Umbraco.Composing.Current.Logger; public static ILoggerFactory LoggerFactory => Umbraco.Composing.Current.LoggerFactory; diff --git a/src/Umbraco.Web/ImageProcessorLogger.cs b/src/Umbraco.Web/ImageProcessorLogger.cs index bdbf95ed38..ad7a6ceaaf 100644 --- a/src/Umbraco.Web/ImageProcessorLogger.cs +++ b/src/Umbraco.Web/ImageProcessorLogger.cs @@ -1,8 +1,8 @@ using System; using System.Runtime.CompilerServices; +using Microsoft.Extensions.Logging; using ImageProcessor.Common.Exceptions; using Umbraco.Web.Composing; -using Umbraco.Core.Logging; namespace Umbraco.Web { diff --git a/src/Umbraco.Web/Logging/OwinLogger.cs b/src/Umbraco.Web/Logging/OwinLogger.cs index afa4b42cab..7983ee36c7 100644 --- a/src/Umbraco.Web/Logging/OwinLogger.cs +++ b/src/Umbraco.Web/Logging/OwinLogger.cs @@ -1,6 +1,6 @@ using System; using System.Diagnostics; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Logging { diff --git a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs index 24aef4c370..25a2f958f8 100644 --- a/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs +++ b/src/Umbraco.Web/Mvc/AdminTokenAuthorizeAttribute.cs @@ -4,8 +4,8 @@ using System.Text; using System.Text.RegularExpressions; using System.Web; using System.Web.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Web.Composing; @@ -19,7 +19,7 @@ namespace Umbraco.Web.Mvc // see note in HttpInstallAuthorizeAttribute private readonly IUserService _userService; private readonly IRuntimeState _runtimeState; - private readonly ILogger _logger; + private readonly ILogger _logger; private IUserService UserService => _userService ?? Current.Services.UserService; diff --git a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs index e9e05f40ef..af896ae243 100644 --- a/src/Umbraco.Web/Mvc/RenderRouteHandler.cs +++ b/src/Umbraco.Web/Mvc/RenderRouteHandler.cs @@ -4,9 +4,9 @@ using System.Web; using System.Web.Mvc; using System.Web.Routing; using System.Web.SessionState; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Strings; using Umbraco.Web.Features; using Umbraco.Web.Models; diff --git a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs index 660007917c..73156cec45 100644 --- a/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs +++ b/src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs @@ -1,4 +1,5 @@ using System; +using Microsoft.Extensions.Logging; using Microsoft.Owin; using Microsoft.Owin.Security; using Umbraco.Core; diff --git a/src/Umbraco.Web/Security/MembershipHelper.cs b/src/Umbraco.Web/Security/MembershipHelper.cs index 0ad586616e..00758b2a65 100644 --- a/src/Umbraco.Web/Security/MembershipHelper.cs +++ b/src/Umbraco.Web/Security/MembershipHelper.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Web.Security; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Web.Models; using Umbraco.Web.PublishedCache; @@ -16,6 +16,7 @@ using Umbraco.Core.Strings; using Umbraco.Web.Editors; using Umbraco.Web.Security.Providers; using System.ComponentModel.DataAnnotations; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Security { diff --git a/src/Umbraco.Web/Security/MembershipProviderBase.cs b/src/Umbraco.Web/Security/MembershipProviderBase.cs index 7e81008374..a62ef958c4 100644 --- a/src/Umbraco.Web/Security/MembershipProviderBase.cs +++ b/src/Umbraco.Web/Security/MembershipProviderBase.cs @@ -8,10 +8,10 @@ using System.Web; using System.Web.Hosting; using System.Web.Configuration; using System.Web.Security; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Web.Composing; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Security; namespace Umbraco.Web.Security diff --git a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs index 81bd2b161d..57c0c23e33 100644 --- a/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs +++ b/src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs @@ -5,10 +5,10 @@ using System.Linq; using System.Text; using System.Web.Configuration; using System.Web.Security; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Membership; using Umbraco.Net; using Umbraco.Core.Persistence.Querying; diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs index 3af09eb3e6..92f7826ac6 100644 --- a/src/Umbraco.Web/UmbracoApplication.cs +++ b/src/Umbraco.Web/UmbracoApplication.cs @@ -7,14 +7,13 @@ using System.Web; using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging.Serilog; using Umbraco.Core.Runtime; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Web.Runtime; -using ILogger = Umbraco.Core.Logging.ILogger; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { @@ -38,10 +37,10 @@ namespace Umbraco.Web var isWindows = RuntimeInformation.IsOSPlatform(OSPlatform.Windows); var mainDomLock = appSettingMainDomLock == "SqlMainDomLock" || isWindows == false - ? (IMainDomLock)new SqlMainDomLock(logger, globalSettings, connectionStrings, dbProviderFactoryCreator, hostingEnvironment) - : new MainDomSemaphoreLock(logger, hostingEnvironment); + ? (IMainDomLock)new SqlMainDomLock(loggerFactory.CreateLogger(), loggerFactory, globalSettings, connectionStrings, dbProviderFactoryCreator, hostingEnvironment) + : new MainDomSemaphoreLock(loggerFactory.CreateLogger(), hostingEnvironment); - var mainDom = new MainDom(logger, mainDomLock); + var mainDom = new MainDom(loggerFactory.CreateLogger(), mainDomLock); var requestCache = new HttpRequestAppCache(() => HttpContext.Current != null ? HttpContext.Current.Items : null); var appCaches = new AppCaches( diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index ed5c2115d4..711d534d8e 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -6,6 +6,7 @@ using System.Threading; using System.Web; using System.Web.Hosting; using Microsoft.Extensions.Logging; +using Serilog; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -20,7 +21,7 @@ using Umbraco.Web.AspNet; using Umbraco.Web.Hosting; using Umbraco.Web.Logging; using Current = Umbraco.Web.Composing.Current; -using ILogger = Umbraco.Core.Logging.ILogger; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { @@ -31,6 +32,7 @@ namespace Umbraco.Web { private IRuntime _runtime; private IFactory _factory; + private ILoggerFactory _loggerFactory; protected UmbracoApplicationBase() { @@ -47,11 +49,25 @@ namespace Umbraco.Web Path.Combine(hostingEnvironment.ApplicationPhysicalPath, "config\\serilog.config"), Path.Combine(hostingEnvironment.ApplicationPhysicalPath, "config\\serilog.user.config")); var ioHelper = new IOHelper(hostingEnvironment); - var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); + + // TODO: Configure Serilog somewhere else + var loggerConfig = new LoggerConfiguration(); + loggerConfig + .MinimalConfiguration(hostingEnvironment, loggingConfiguration) + .ReadFromConfigFile(loggingConfiguration) + .ReadFromUserConfigFile(loggingConfiguration); + Log.Logger = loggerConfig.CreateLogger(); + + _loggerFactory = LoggerFactory.Create(builder => + { + builder.AddSerilog(); + }); + + var logger = _loggerFactory.CreateLogger(); var configs = configFactory.Create(); - var backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, ioHelper, logger, configFactory.WebRoutingSettings); + var backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, ioHelper, _loggerFactory.CreateLogger(), configFactory.WebRoutingSettings); var profiler = GetWebProfiler(hostingEnvironment); Umbraco.Composing.Current.Initialize(logger, configs, ioHelper, hostingEnvironment, backOfficeInfo, profiler); Logger = logger; @@ -74,7 +90,7 @@ namespace Umbraco.Web return webProfiler; } - protected UmbracoApplicationBase(ILogger logger, Configs configs, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected UmbracoApplicationBase(Microsoft.Extensions.Logging.ILogger logger, Configs configs, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { if (!Umbraco.Composing.Current.IsInitialized) { @@ -83,7 +99,7 @@ namespace Umbraco.Web } } - protected ILogger Logger { get; } + protected Microsoft.Extensions.Logging.ILogger Logger { get; } /// /// Gets a @@ -104,7 +120,7 @@ namespace Umbraco.Web // global.asax (the app domain also monitors this, if it changes will do a full restart) runtimeHashPaths.AddFile(new FileInfo(hostingEnvironment.MapPathContentRoot("~/global.asax"))); var runtimeHash = new RuntimeHash(new ProfilingLogger(logger, profiler), runtimeHashPaths); - return new TypeFinder(Logger, new DefaultUmbracoAssemblyProvider( + return new TypeFinder(_loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider( // GetEntryAssembly was actually an exposed API by request of the aspnetcore team which works in aspnet core because a website // in that case is essentially an exe. However in netframework there is no entry assembly, things don't really work that way since // the process that is running the site is iisexpress, so this returns null. The best we can do is fallback to GetExecutingAssembly() diff --git a/src/Umbraco.Web/UmbracoHelper.cs b/src/Umbraco.Web/UmbracoHelper.cs index 93b1acfbe4..d81bb61251 100644 --- a/src/Umbraco.Web/UmbracoHelper.cs +++ b/src/Umbraco.Web/UmbracoHelper.cs @@ -11,6 +11,7 @@ using Umbraco.Core.Templates; using Umbraco.Core.Strings; using Umbraco.Core.Xml; using Umbraco.Web.Mvc; +using Microsoft.Extensions.Logging; namespace Umbraco.Web { diff --git a/src/Umbraco.Web/UmbracoHttpHandler.cs b/src/Umbraco.Web/UmbracoHttpHandler.cs index 042cc794b3..9a25c17298 100644 --- a/src/Umbraco.Web/UmbracoHttpHandler.cs +++ b/src/Umbraco.Web/UmbracoHttpHandler.cs @@ -6,6 +6,7 @@ using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Web.Composing; using Umbraco.Web.Security; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { diff --git a/src/Umbraco.Web/UmbracoInjectedModule.cs b/src/Umbraco.Web/UmbracoInjectedModule.cs index 66ae70be44..74b4190b16 100644 --- a/src/Umbraco.Web/UmbracoInjectedModule.cs +++ b/src/Umbraco.Web/UmbracoInjectedModule.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Web; using System.Web.Routing; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Security; using Umbraco.Core.Cache; @@ -9,7 +10,6 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Exceptions; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Web.Composing; using Umbraco.Web.Routing; using Umbraco.Web.Security; diff --git a/src/Umbraco.Web/UmbracoModule.cs b/src/Umbraco.Web/UmbracoModule.cs index 3dfd648667..7e4ac6c3d5 100644 --- a/src/Umbraco.Web/UmbracoModule.cs +++ b/src/Umbraco.Web/UmbracoModule.cs @@ -1,7 +1,7 @@ using System; using System.Web; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Web.Composing; using Umbraco.Web.Routing; diff --git a/src/Umbraco.Web/UmbracoWebService.cs b/src/Umbraco.Web/UmbracoWebService.cs index dc7bf3f9e7..f71036c0ae 100644 --- a/src/Umbraco.Web/UmbracoWebService.cs +++ b/src/Umbraco.Web/UmbracoWebService.cs @@ -3,6 +3,7 @@ using System.Web; using System.Web.Mvc; using System.Web.Routing; using System.Web.Services; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; @@ -11,6 +12,7 @@ using Umbraco.Core.Persistence; using Umbraco.Core.Services; using Umbraco.Web.Composing; using Umbraco.Web.Security; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { diff --git a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs index 717df89a7b..4b16e650da 100644 --- a/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs +++ b/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Linq; using System.Net.Http.Headers; using System.Web.Helpers; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Web.Composing; namespace Umbraco.Web.WebApi.Filters diff --git a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs index 1f944bad99..b12fc51ca6 100644 --- a/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web/WebApi/Filters/FileUploadCleanupFilterAttribute.cs @@ -4,8 +4,8 @@ using System.IO; using System.Linq; using System.Net.Http; using System.Web.Http.Filters; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Web.Composing; using Umbraco.Web.Models.ContentEditing; diff --git a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs index 3803cdbab6..903e333846 100644 --- a/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs +++ b/src/Umbraco.Web/WebApi/UnhandledExceptionLogger.cs @@ -1,6 +1,6 @@ using System.Web.Http.ExceptionHandling; using Umbraco.Web.Composing; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.WebApi { From 611276a5ebee9b30e62dad6b7ab9335cf53a8ce8 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 14:29:33 +0200 Subject: [PATCH 24/85] Fake SiriLogger for now and start using MSLogger more places --- src/Umbraco.Core/Logging/DisposableTimer.cs | 5 +- src/Umbraco.Core/Logging/ProfilingLogger.cs | 16 +++-- .../CompositionExtensions_Essentials.cs | 6 +- .../Runtime/CoreRuntime.cs | 4 +- src/Umbraco.Infrastructure/RuntimeState.cs | 6 +- .../Search/ExamineComponent.cs | 7 +- .../UmbracoExamine/IndexInitializer.cs | 2 +- src/Umbraco.Tests/Web/UmbracoHelperTests.cs | 2 +- .../UmbracoCoreServiceCollectionExtensions.cs | 68 ++++++++++--------- src/Umbraco.Web/UmbracoApplicationBase.cs | 2 +- 10 files changed, 65 insertions(+), 53 deletions(-) diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index a7dfbd254f..a076d15fae 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -1,5 +1,6 @@ using System; using System.Diagnostics; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Logging { @@ -8,7 +9,7 @@ namespace Umbraco.Core.Logging /// public class DisposableTimer : DisposableObjectSlim { - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly LogLevel _level; private readonly Type _loggerType; private readonly int _thresholdMilliseconds; @@ -20,7 +21,7 @@ namespace Umbraco.Core.Logging private readonly string _timingId; // internal - created by profiling logger - internal DisposableTimer(ILogger logger, LogLevel level, IProfiler profiler, Type loggerType, + internal DisposableTimer(Microsoft.Extensions.Logging.ILogger logger, LogLevel level, IProfiler profiler, Type loggerType, string startMessage, string endMessage, string failMessage = null, int thresholdMilliseconds = 0) { diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index b20a9ae57a..386fcda619 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -1,4 +1,6 @@ using System; +using Microsoft.Extensions.Logging; + namespace Umbraco.Core.Logging { @@ -10,7 +12,7 @@ namespace Umbraco.Core.Logging /// /// Gets the underlying implementation. /// - public ILogger Logger { get; } + public Microsoft.Extensions.Logging.ILogger Logger { get; } /// /// Gets the underlying implementation. @@ -20,7 +22,7 @@ namespace Umbraco.Core.Logging /// /// Initializes a new instance of the class. /// - public ProfilingLogger(ILogger logger, IProfiler profiler) + public ProfilingLogger(Microsoft.Extensions.Logging.ILogger logger, IProfiler profiler) { Logger = logger ?? throw new ArgumentNullException(nameof(logger)); Profiler = profiler ?? throw new ArgumentNullException(nameof(profiler)); @@ -43,29 +45,29 @@ namespace Umbraco.Core.Logging public DisposableTimer DebugDuration(string startMessage) { - return Logger.IsEnabled(typeof(T), LogLevel.Debug) + return Logger.IsEnabled(Microsoft.Extensions.Logging.LogLevel.Debug) ? DebugDuration(startMessage, "Completed.") : null; } public DisposableTimer DebugDuration(string startMessage, string completeMessage, string failMessage = null, int thresholdMilliseconds = 0) { - return Logger.IsEnabled(typeof(T), LogLevel.Debug) + return Logger.IsEnabled(Microsoft.Extensions.Logging.LogLevel.Debug) ? new DisposableTimer(Logger, LogLevel.Debug, Profiler, typeof(T), startMessage, completeMessage, failMessage, thresholdMilliseconds) : null; } public DisposableTimer DebugDuration(Type loggerType, string startMessage, string completeMessage, string failMessage = null, int thresholdMilliseconds = 0) { - return Logger.IsEnabled(loggerType, LogLevel.Debug) + return Logger.IsEnabled(Microsoft.Extensions.Logging.LogLevel.Debug) ? new DisposableTimer(Logger, LogLevel.Debug, Profiler, loggerType, startMessage, completeMessage, failMessage, thresholdMilliseconds) : null; } #region ILogger - public bool IsEnabled(Type reporting, LogLevel level) - => Logger.IsEnabled(reporting, level); + public bool IsEnabled(Microsoft.Extensions.Logging.LogLevel level) + => Logger.IsEnabled(level); public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) => Logger.LogCritical(exception, messageTemplate, propertyValues); diff --git a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs index b2ded07034..aba46baf8f 100644 --- a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs +++ b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs @@ -1,10 +1,12 @@ -using Umbraco.Core.Cache; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Core.Persistence; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core { @@ -37,7 +39,7 @@ namespace Umbraco.Core IDbProviderFactoryCreator dbProviderFactoryCreator, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - { + { composition.RegisterUnique(logger); composition.RegisterUnique(profiler); composition.RegisterUnique(profilingLogger); diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index ec59837570..0cb22c4560 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -173,7 +173,7 @@ namespace Umbraco.Core.Runtime var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), _loggerFactory.CreateLogger("TypeLoader"), ProfilingLogger); // re-create the state object with the essential services - _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, Logger); + _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, _loggerFactory.CreateLogger()); // create the composition composition = new Composition(register, typeLoader, ProfilingLogger, _state, Configs, IOHelper, AppCaches); @@ -384,7 +384,7 @@ namespace Umbraco.Core.Runtime /// /// This is strictly internal, for tests only. protected internal virtual IUmbracoDatabaseFactory CreateDatabaseFactory() - => new UmbracoDatabaseFactory(Logger, _globalSettings, _connectionStrings, new Lazy(() => _factory.GetInstance()), DbProviderFactoryCreator); + => new UmbracoDatabaseFactory(_loggerFactory.CreateLogger(), _loggerFactory, _globalSettings, _connectionStrings, new Lazy(() => _factory.GetInstance()), DbProviderFactoryCreator); #endregion diff --git a/src/Umbraco.Infrastructure/RuntimeState.cs b/src/Umbraco.Infrastructure/RuntimeState.cs index b23e5ad9f1..6adb9b852d 100644 --- a/src/Umbraco.Infrastructure/RuntimeState.cs +++ b/src/Umbraco.Infrastructure/RuntimeState.cs @@ -1,9 +1,9 @@ using System; using System.Threading; using Semver; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Persistence; @@ -17,7 +17,7 @@ namespace Umbraco.Core private readonly IGlobalSettings _globalSettings; private readonly IUmbracoVersion _umbracoVersion; private readonly IUmbracoDatabaseFactory _databaseFactory; - private readonly ILogger _logger; + private readonly ILogger _logger; /// /// The initial @@ -31,7 +31,7 @@ namespace Umbraco.Core /// /// Initializes a new instance of the class. /// - public RuntimeState(IGlobalSettings globalSettings, IUmbracoVersion umbracoVersion, IUmbracoDatabaseFactory databaseFactory, ILogger logger) + public RuntimeState(IGlobalSettings globalSettings, IUmbracoVersion umbracoVersion, IUmbracoDatabaseFactory databaseFactory, ILogger logger) { _globalSettings = globalSettings; _umbracoVersion = umbracoVersion; diff --git a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs index 297d7ac2aa..619edebd26 100644 --- a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs +++ b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs @@ -13,6 +13,7 @@ using Umbraco.Core.Services.Changes; using Umbraco.Core.Sync; using Umbraco.Web.Cache; using Umbraco.Examine; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Search { @@ -28,7 +29,7 @@ namespace Umbraco.Web.Search private readonly ServiceContext _services; private readonly IMainDom _mainDom; private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IUmbracoIndexesCreator _indexCreator; @@ -39,7 +40,7 @@ namespace Umbraco.Web.Search public ExamineComponent(IMainDom mainDom, IExamineManager examineManager, IProfilingLogger profilingLogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IScopeProvider scopeProvider, IUmbracoIndexesCreator indexCreator, ServiceContext services, IContentValueSetBuilder contentValueSetBuilder, @@ -78,7 +79,7 @@ namespace Umbraco.Web.Search _logger.LogInformation("Examine shutdown not registered, this AppDomain is not the MainDom, Examine will be disabled"); //if we could not register the shutdown examine ourselves, it means we are not maindom! in this case all of examine should be disabled! - Suspendable.ExamineEvents.SuspendIndexers(_logger as ILogger); + Suspendable.ExamineEvents.SuspendIndexers(_logger); return; //exit, do not continue } diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index 81964eb714..0304f4005f 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -160,7 +160,7 @@ namespace Umbraco.Tests.UmbracoExamine public static IProfilingLogger GetMockProfilingLogger() { - return new ProfilingLogger(Mock.Of(), Mock.Of()); + return new ProfilingLogger(Mock.Of(), Mock.Of()); } public static Core.Logging.ILogger GetMockLogger() diff --git a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs index 38e6657892..9485fc5a89 100644 --- a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs +++ b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Web NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), - new ProfilingLogger(Mock.Of(), Mock.Of()) + new ProfilingLogger(Mock.Of(), Mock.Of()) ) ); diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 2d2230dcc8..d0f47a0da9 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -30,6 +30,7 @@ using Umbraco.Core.Runtime; using Umbraco.Web.Common.AspNetCore; using Umbraco.Web.Common.Extensions; using Umbraco.Web.Common.Profiler; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Extensions { @@ -208,7 +209,7 @@ namespace Umbraco.Extensions AppCaches appCaches, ILoggingConfiguration loggingConfiguration, // TODO: Yep that's extremely ugly - Func getRuntime, + Func getRuntime, out IFactory factory) { if (services is null) throw new ArgumentNullException(nameof(services)); @@ -248,7 +249,7 @@ namespace Umbraco.Extensions var globalSettings = configs.Global(); var umbracoVersion = new UmbracoVersion(globalSettings); - var typeFinder = CreateTypeFinder(logger, Current.LoggerFactory, profiler, webHostEnvironment, entryAssembly, configs.TypeFinder()); + var typeFinder = CreateTypeFinder(Current.LoggerFactory, profiler, webHostEnvironment, entryAssembly, configs.TypeFinder()); var runtime = getRuntime( configs, @@ -268,16 +269,16 @@ namespace Umbraco.Extensions return services; } - private static ITypeFinder CreateTypeFinder(Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IWebHostEnvironment webHostEnvironment, Assembly entryAssembly, ITypeFinderSettings typeFinderSettings) + private static ITypeFinder CreateTypeFinder(ILoggerFactory loggerFactory, IProfiler profiler, IWebHostEnvironment webHostEnvironment, Assembly entryAssembly, ITypeFinderSettings typeFinderSettings) { var runtimeHashPaths = new RuntimeHashPaths(); runtimeHashPaths.AddFolder(new DirectoryInfo(Path.Combine(webHostEnvironment.ContentRootPath, "bin"))); - var runtimeHash = new RuntimeHash(new ProfilingLogger(logger, profiler), runtimeHashPaths); + var runtimeHash = new RuntimeHash(new ProfilingLogger(loggerFactory.CreateLogger("RuntimeHash"), profiler), runtimeHashPaths); return new TypeFinder(loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider(entryAssembly), runtimeHash, new TypeFinderConfig(typeFinderSettings)); } private static IRuntime GetCoreRuntime( - Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, + Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator) { @@ -289,10 +290,10 @@ namespace Umbraco.Extensions var isWindows = RuntimeInformation.IsOSPlatform(OSPlatform.Windows); var mainDomLock = appSettingMainDomLock == "SqlMainDomLock" || isWindows == false - ? (IMainDomLock)new SqlMainDomLock(logger, globalSettings, connStrings, dbProviderFactoryCreator, hostingEnvironment) - : new MainDomSemaphoreLock(logger, hostingEnvironment); + ? (IMainDomLock)new SqlMainDomLock(loggerFactory.CreateLogger(), loggerFactory, globalSettings, connStrings, dbProviderFactoryCreator, hostingEnvironment) + : new MainDomSemaphoreLock(loggerFactory.CreateLogger(), hostingEnvironment); - var mainDom = new MainDom(logger, mainDomLock); + var mainDom = new MainDom(loggerFactory.CreateLogger(), mainDomLock); var coreRuntime = new CoreRuntime( configs, @@ -317,7 +318,7 @@ namespace Umbraco.Extensions Configs configs, IWebHostEnvironment webHostEnvironment, ILoggingConfiguration loggingConfiguration, - out Core.Logging.ILogger logger, + out ILogger logger, out IIOHelper ioHelper, out Core.Hosting.IHostingEnvironment hostingEnvironment, out IBackOfficeInfo backOfficeInfo, @@ -343,32 +344,37 @@ namespace Umbraco.Extensions /// Create and configure the logger /// /// - private static Core.Logging.ILogger AddLogger(IServiceCollection services, Core.Hosting.IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) + private static ILogger AddLogger(IServiceCollection services, Core.Hosting.IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) { - // Create a serilog logger - var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); + // // Create a serilog logger + // var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration); + // + // // Wire up all the bits that serilog needs. We need to use our own code since the Serilog ext methods don't cater to our needs since + // // we don't want to use the global serilog `Log` object and we don't have our own ILogger implementation before the HostBuilder runs which + // // is the only other option that these ext methods allow. + // // I have created a PR to make this nicer https://github.com/serilog/serilog-extensions-hosting/pull/19 but we'll need to wait for that. + // // Also see : https://github.com/serilog/serilog-extensions-hosting/blob/dev/src/Serilog.Extensions.Hosting/SerilogHostBuilderExtensions.cs + // + // services.AddSingleton(services => new SerilogLoggerFactory(logger.SerilogLog, false)); - // Wire up all the bits that serilog needs. We need to use our own code since the Serilog ext methods don't cater to our needs since - // we don't want to use the global serilog `Log` object and we don't have our own ILogger implementation before the HostBuilder runs which - // is the only other option that these ext methods allow. - // I have created a PR to make this nicer https://github.com/serilog/serilog-extensions-hosting/pull/19 but we'll need to wait for that. - // Also see : https://github.com/serilog/serilog-extensions-hosting/blob/dev/src/Serilog.Extensions.Hosting/SerilogHostBuilderExtensions.cs + var factory = LoggerFactory.Create(builder => + { + builder.AddSerilog(); + }); - services.AddSingleton(services => new SerilogLoggerFactory(logger.SerilogLog, false)); + // // This won't (and shouldn't) take ownership of the logger. + // services.AddSingleton(logger.SerilogLog); + // + // // Registered to provide two services... + // var diagnosticContext = new DiagnosticContext(logger.SerilogLog); + // + // // Consumed by e.g. middleware + // services.AddSingleton(diagnosticContext); + // + // // Consumed by user code + // services.AddSingleton(diagnosticContext); - // This won't (and shouldn't) take ownership of the logger. - services.AddSingleton(logger.SerilogLog); - - // Registered to provide two services... - var diagnosticContext = new DiagnosticContext(logger.SerilogLog); - - // Consumed by e.g. middleware - services.AddSingleton(diagnosticContext); - - // Consumed by user code - services.AddSingleton(diagnosticContext); - - return logger; + return factory.CreateLogger("FakeSiriLogger"); } private static IProfiler GetWebProfiler(Umbraco.Core.Hosting.IHostingEnvironment hostingEnvironment) diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 711d534d8e..1136f6bdd1 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -119,7 +119,7 @@ namespace Umbraco.Web runtimeHashPaths.AddFile(new FileInfo(hostingEnvironment.MapPathContentRoot("~/App_Code"))); // global.asax (the app domain also monitors this, if it changes will do a full restart) runtimeHashPaths.AddFile(new FileInfo(hostingEnvironment.MapPathContentRoot("~/global.asax"))); - var runtimeHash = new RuntimeHash(new ProfilingLogger(logger, profiler), runtimeHashPaths); + var runtimeHash = new RuntimeHash(new ProfilingLogger(_loggerFactory.CreateLogger("RuntimeHash"), profiler), runtimeHashPaths); return new TypeFinder(_loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider( // GetEntryAssembly was actually an exposed API by request of the aspnetcore team which works in aspnet core because a website // in that case is essentially an exe. However in netframework there is no entry assembly, things don't really work that way since From 87774b789cd9a856970e1ceba21f978f0e4b2c99 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Wed, 16 Sep 2020 15:17:42 +0200 Subject: [PATCH 25/85] Add LoggerFactory to TestHelper and fix a bunch of tests --- src/Umbraco.Tests.Integration/ContainerTests.cs | 6 +++--- .../Implementations/TestHelper.cs | 8 ++++++-- src/Umbraco.Tests.Integration/RuntimeTests.cs | 2 +- src/Umbraco.Tests/Components/ComponentTests.cs | 9 +++++---- src/Umbraco.Tests/Composing/ComposingTestBase.cs | 1 + src/Umbraco.Tests/Composing/CompositionTests.cs | 2 ++ src/Umbraco.Tests/Composing/TypeLoaderTests.cs | 2 ++ .../Migrations/AlterMigrationTests.cs | 2 +- .../Persistence/DatabaseContextTests.cs | 11 +++++++---- .../FaultHandling/ConnectionRetryTest.cs | 6 +++--- .../Published/NestedContentTests.cs | 7 ++++--- .../Routing/RenderRouteHandlerTests.cs | 2 +- src/Umbraco.Tests/Routing/UmbracoModuleTests.cs | 2 +- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 16 ++++++++-------- src/Umbraco.Tests/Services/PerformanceTests.cs | 1 + .../TestHelpers/BaseUsingSqlCeSyntax.cs | 2 +- src/Umbraco.Tests/TestHelpers/BaseWebTest.cs | 2 +- .../TestHelpers/TestWithDatabaseBase.cs | 2 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 7 +++++-- 19 files changed, 54 insertions(+), 36 deletions(-) diff --git a/src/Umbraco.Tests.Integration/ContainerTests.cs b/src/Umbraco.Tests.Integration/ContainerTests.cs index 699c523b0c..20e26c09d9 100644 --- a/src/Umbraco.Tests.Integration/ContainerTests.cs +++ b/src/Umbraco.Tests.Integration/ContainerTests.cs @@ -36,16 +36,16 @@ namespace Umbraco.Tests.Integration serviceProviderFactory.CreateBuilder(services); // called during Host Builder, needed to capture services // Dependencies needed for creating composition/register essentials - var testHelper = new TestHelper(); + var testHelper = new TestHelper(); var runtimeState = Mock.Of(); var umbracoDatabaseFactory = Mock.Of(); - var dbProviderFactoryCreator = Mock.Of(); + var dbProviderFactoryCreator = Mock.Of(); var typeLoader = testHelper.GetMockedTypeLoader(); // Register in the container var composition = new Composition(umbracoContainer, typeLoader, testHelper.ProfilingLogger, runtimeState, testHelper.GetConfigs(), testHelper.IOHelper, testHelper.AppCaches); - composition.RegisterEssentials(testHelper.Logger, testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, + composition.RegisterEssentials(testHelper.ConsoleLoggerFactory.CreateLogger("RegisterEssentials"), testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(), testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo()); diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index 7853ae9111..9facef8568 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -20,6 +20,8 @@ using Umbraco.Tests.Common; using Umbraco.Web.Common.AspNetCore; using IHostingEnvironment = Umbraco.Core.Hosting.IHostingEnvironment; using Microsoft.Extensions.FileProviders; +using Microsoft.Extensions.Logging; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration.Implementations { @@ -43,7 +45,7 @@ namespace Umbraco.Tests.Integration.Implementations var contentRoot = Assembly.GetExecutingAssembly().GetRootDirectorySafe(); var hostEnvironment = new Mock(); // this must be the assembly name for the WebApplicationFactory to work - hostEnvironment.Setup(x => x.ApplicationName).Returns(GetType().Assembly.GetName().Name); + hostEnvironment.Setup(x => x.ApplicationName).Returns(GetType().Assembly.GetName().Name); hostEnvironment.Setup(x => x.ContentRootPath).Returns(() => contentRoot); hostEnvironment.Setup(x => x.ContentRootFileProvider).Returns(() => new PhysicalFileProvider(contentRoot)); hostEnvironment.Setup(x => x.WebRootPath).Returns(() => WorkingDirectory); @@ -54,8 +56,9 @@ namespace Umbraco.Tests.Integration.Implementations _hostEnvironment = hostEnvironment.Object; _hostingLifetime = new AspNetCoreApplicationShutdownRegistry(Mock.Of()); + ConsoleLoggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); Logger = new ConsoleLogger(new MessageTemplates()); - ProfilingLogger = new ProfilingLogger(new ConsoleLogger(new MessageTemplates()), Profiler); + ProfilingLogger = new ProfilingLogger(ConsoleLoggerFactory.CreateLogger("ProfilingLogger"), Profiler); } @@ -92,6 +95,7 @@ namespace Umbraco.Tests.Integration.Implementations new IsolatedCaches(type => NoAppCache.Instance)); public ILogger Logger { get; private set; } + public ILoggerFactory ConsoleLoggerFactory { get; private set; } public IProfilingLogger ProfilingLogger { get; private set; } public IProfiler Profiler { get; } = new VoidProfiler(); diff --git a/src/Umbraco.Tests.Integration/RuntimeTests.cs b/src/Umbraco.Tests.Integration/RuntimeTests.cs index a20c0cd1c0..294a4cde3c 100644 --- a/src/Umbraco.Tests.Integration/RuntimeTests.cs +++ b/src/Umbraco.Tests.Integration/RuntimeTests.cs @@ -57,7 +57,7 @@ namespace Umbraco.Tests.Integration // Create the core runtime var coreRuntime = new CoreRuntime(testHelper.GetConfigs(), testHelper.GetUmbracoVersion(), - testHelper.IOHelper, testHelper.Logger, Mock.Of(), testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, + testHelper.IOHelper, testHelper.ConsoleLoggerFactory.CreateLogger("CoreRunTime"), testHelper.ConsoleLoggerFactory, testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo(), testHelper.DbProviderFactoryCreator, testHelper.MainDom, testHelper.GetTypeFinder(), AppCaches.NoCache); diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index c8e3adf5a0..5dc8dd801d 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -35,14 +36,14 @@ namespace Umbraco.Tests.Components var logger = Mock.Of(); var umbLogger = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); - var f = new UmbracoDatabaseFactory(umbLogger, SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); + var f = new UmbracoDatabaseFactory(Mock.Of>(), Mock.Of(), SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); var fs = new FileSystems(mock.Object, umbLogger, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = Mock.Of(); var mediaFileSystem = Mock.Of(); var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, umbLogger, typeFinder, NoAppCache.Instance); mock.Setup(x => x.GetInstance(typeof (ILogger))).Returns(logger); - mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); + mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); mock.Setup(x => x.GetInstance(typeof (IUmbracoDatabaseFactory))).Returns(f); mock.Setup(x => x.GetInstance(typeof (IScopeProvider))).Returns(p); @@ -92,7 +93,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer1)) return new Composer1(); if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); - if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); throw new NotSupportedException(type.FullName); }); }); @@ -215,7 +216,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5a)) return new Composer5a(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(Component5a)) return new Component5a(); - if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); throw new NotSupportedException(type.FullName); }); }); diff --git a/src/Umbraco.Tests/Composing/ComposingTestBase.cs b/src/Umbraco.Tests/Composing/ComposingTestBase.cs index dd605e1c6f..22d808bb2a 100644 --- a/src/Umbraco.Tests/Composing/ComposingTestBase.cs +++ b/src/Umbraco.Tests/Composing/ComposingTestBase.cs @@ -8,6 +8,7 @@ using Umbraco.Core.Composing; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; using Current = Umbraco.Web.Composing.Current; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { diff --git a/src/Umbraco.Tests/Composing/CompositionTests.cs b/src/Umbraco.Tests/Composing/CompositionTests.cs index b018f7c63e..56a94bf3ee 100644 --- a/src/Umbraco.Tests/Composing/CompositionTests.cs +++ b/src/Umbraco.Tests/Composing/CompositionTests.cs @@ -1,5 +1,6 @@ using System; using System.IO; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -8,6 +9,7 @@ using Umbraco.Core.Composing; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { diff --git a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs index 7894ee9fe8..5653887af3 100644 --- a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs +++ b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Reflection; using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -15,6 +16,7 @@ using Umbraco.Core.PropertyEditors; using Umbraco.Tests.TestHelpers; using Umbraco.Web; using Umbraco.Web.PropertyEditors; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { diff --git a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs index 8cbd5c5764..a012e78388 100644 --- a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs @@ -32,7 +32,7 @@ namespace Umbraco.Tests.Migrations var dbProviderFactory = DbProviderFactories.GetFactory(Constants.DbProviderNames.SqlServer); var sqlContext = new SqlContext(_sqlSyntax, DatabaseType.SqlServer2008, Mock.Of()); - _database = new UmbracoDatabase("cstr", sqlContext, dbProviderFactory, _logger, TestHelper.BulkSqlInsertProvider); + _database = new UmbracoDatabase("cstr", sqlContext, dbProviderFactory, Mock.Of>(), TestHelper.BulkSqlInsertProvider); } [Test] diff --git a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs index ba9bd19db5..5f78be7701 100644 --- a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs +++ b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs @@ -3,6 +3,7 @@ using System.Configuration; using System.Data.SqlServerCe; using System.IO; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using NUnit.Framework; @@ -25,7 +26,8 @@ namespace Umbraco.Tests.Persistence public class DatabaseContextTests { private IUmbracoDatabaseFactory _databaseFactory; - private ILogger _logger; + private Microsoft.Extensions.Logging.ILogger _logger; + private ILoggerFactory _loggerFactory; private SqlCeSyntaxProvider _sqlCeSyntaxProvider; private ISqlSyntaxProvider[] _sqlSyntaxProviders; private IUmbracoVersion _umbracoVersion; @@ -36,11 +38,12 @@ namespace Umbraco.Tests.Persistence // create the database factory and database context _sqlCeSyntaxProvider = new SqlCeSyntaxProvider(); _sqlSyntaxProviders = new[] { (ISqlSyntaxProvider) _sqlCeSyntaxProvider }; - _logger = Mock.Of(); + _logger = Mock.Of>(); + _loggerFactory = Mock.Of(); _umbracoVersion = TestHelper.GetUmbracoVersion(); var globalSettings = TestHelper.GetConfigs().Global(); var connectionStrings = TestHelper.GetConfigs().ConnectionStrings(); - _databaseFactory = new UmbracoDatabaseFactory(_logger, globalSettings, connectionStrings, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + _databaseFactory = new UmbracoDatabaseFactory(_logger, _loggerFactory, globalSettings, connectionStrings, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); } [TearDown] @@ -94,7 +97,7 @@ namespace Umbraco.Tests.Persistence using (var database = _databaseFactory.CreateDatabase()) using (var transaction = database.GetTransaction()) { - schemaHelper = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); + schemaHelper = new DatabaseSchemaCreator(database, Mock.Of(), _umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); schemaHelper.InitializeDatabaseSchema(); transaction.Complete(); } diff --git a/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs b/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs index bab0617ec6..d6a458996f 100644 --- a/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs +++ b/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs @@ -1,9 +1,9 @@ using System; using System.Data.SqlClient; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; using Umbraco.Core.Persistence.SqlSyntax; @@ -20,7 +20,7 @@ namespace Umbraco.Tests.Persistence.FaultHandling { const string connectionString = @"server=.\SQLEXPRESS;database=EmptyForTest;user id=x;password=umbraco"; const string providerName = Constants.DbProviderNames.SqlServer; - var factory = new UmbracoDatabaseFactory(Mock.Of(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(Mock.Of>(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); using (var database = factory.CreateDatabase()) { @@ -34,7 +34,7 @@ namespace Umbraco.Tests.Persistence.FaultHandling { const string connectionString = @"server=.\SQLEXPRESS;database=EmptyForTest;user id=umbraco;password=umbraco"; const string providerName = Constants.DbProviderNames.SqlServer; - var factory = new UmbracoDatabaseFactory(Mock.Of(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(Mock.Of>(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); using (var database = factory.CreateDatabase()) { diff --git a/src/Umbraco.Tests/Published/NestedContentTests.cs b/src/Umbraco.Tests/Published/NestedContentTests.cs index b4b941733c..b4e53e3d11 100644 --- a/src/Umbraco.Tests/Published/NestedContentTests.cs +++ b/src/Umbraco.Tests/Published/NestedContentTests.cs @@ -26,13 +26,14 @@ namespace Umbraco.Tests.Published { private (IPublishedContentType, IPublishedContentType) CreateContentTypes() { - var logger = Mock.Of(); + var logger = Mock.Of(); + var coreLogger = Mock.Of(); var profiler = Mock.Of(); var proflog = new ProfilingLogger(logger, profiler); var localizationService = Mock.Of(); PropertyEditorCollection editors = null; - var editor = new NestedContentPropertyEditor(logger, new Lazy(() => editors), Mock.Of(),localizationService, Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of()); + var editor = new NestedContentPropertyEditor(coreLogger, new Lazy(() => editors), Mock.Of(),localizationService, Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of()); editors = new PropertyEditorCollection(new DataEditorCollection(new DataEditor[] { editor })); var dataType1 = new DataType(editor) @@ -63,7 +64,7 @@ namespace Umbraco.Tests.Published } }; - var dataType3 = new DataType(new TextboxPropertyEditor(logger, Mock.Of(), localizationService, TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())) + var dataType3 = new DataType(new TextboxPropertyEditor(coreLogger, Mock.Of(), localizationService, TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())) { Id = 3 }; diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index 9b58317f8b..3692e1a0cc 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -51,7 +51,7 @@ namespace Umbraco.Tests.Routing public class TestRuntime : CoreRuntime { public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - : base(configs, umbracoVersion, ioHelper, Mock.Of(), Mock.Of(), Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + : base(configs, umbracoVersion, ioHelper, Mock.Of(), Mock.Of(), Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } diff --git a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs index e86c5702e3..4e28949ca7 100644 --- a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs +++ b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs @@ -30,7 +30,7 @@ namespace Umbraco.Tests.Routing // FIXME: be able to get the UmbracoModule from the container. any reason settings were from testobjects? //create the module - var logger = Mock.Of(); + var logger = Mock.Of(); var globalSettings = TestObjects.GetGlobalSettings(); var runtime = Umbraco.Core.RuntimeState.Booting(); diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index b2088f00d7..057a751aaf 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -63,19 +63,19 @@ namespace Umbraco.Tests.Runtimes // create the very basic and essential things we need var logger = new ConsoleLogger(new MessageTemplates()); var profiler = new LogProfiler(logger); - var profilingLogger = new ProfilingLogger(logger, profiler); + var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; var globalSettings = TestHelper.GetConfigs().Global(); var connectionStrings = TestHelper.GetConfigs().ConnectionStrings(); var typeFinder = TestHelper.GetTypeFinder(); - var databaseFactory = new UmbracoDatabaseFactory(logger,globalSettings, connectionStrings, new Lazy(() => factory.GetInstance()), TestHelper.DbProviderFactoryCreator); + var databaseFactory = new UmbracoDatabaseFactory(loggerFactory.CreateLogger(), loggerFactory, globalSettings, connectionStrings, new Lazy(() => factory.GetInstance()), TestHelper.DbProviderFactoryCreator); var ioHelper = TestHelper.IOHelper; var hostingEnvironment = Mock.Of(); var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger("TypeLoader"), profilingLogger); var mainDom = new SimpleMainDom(); var umbracoVersion = TestHelper.GetUmbracoVersion(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); - var runtimeState = new RuntimeState(globalSettings, umbracoVersion, databaseFactory, logger); + var runtimeState = new RuntimeState(globalSettings, umbracoVersion, databaseFactory, loggerFactory.CreateLogger()); var configs = TestHelper.GetConfigs(); var variationContextAccessor = TestHelper.VariationContextAccessor; @@ -83,10 +83,10 @@ namespace Umbraco.Tests.Runtimes // create the register and the composition var register = TestHelper.GetRegister(); var composition = new Composition(register, typeLoader, profilingLogger, runtimeState, configs, ioHelper, appCaches); - composition.RegisterEssentials(logger, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); + composition.RegisterEssentials(loggerFactory.CreateLogger("Essentials"), profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself - var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, loggerFactory.CreateLogger("CoreRunTime"), loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // determine actual runtime level runtimeState.DetermineRuntimeLevel(); @@ -260,7 +260,7 @@ namespace Umbraco.Tests.Runtimes var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); var logger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); - var profilingLogger = new ProfilingLogger(logger, profiler); + var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; var databaseFactory = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); @@ -278,10 +278,10 @@ namespace Umbraco.Tests.Runtimes var register = TestHelper.GetRegister(); var composition = new Composition(register, typeLoader, profilingLogger, runtimeState, configs, ioHelper, appCaches); var umbracoVersion = TestHelper.GetUmbracoVersion(); - composition.RegisterEssentials(logger, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); + composition.RegisterEssentials(loggerFactory.CreateLogger("RegisterEssentials"), profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself - var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(configs, umbracoVersion, ioHelper, loggerFactory.CreateLogger("CoreRuntime"), loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // get the components // all of them? diff --git a/src/Umbraco.Tests/Services/PerformanceTests.cs b/src/Umbraco.Tests/Services/PerformanceTests.cs index 87818fd270..cdd543fd47 100644 --- a/src/Umbraco.Tests/Services/PerformanceTests.cs +++ b/src/Umbraco.Tests/Services/PerformanceTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using NPoco; using NUnit.Framework; using Umbraco.Core; diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index 46495d6bc5..e8db0c934f 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -38,7 +38,7 @@ namespace Umbraco.Tests.TestHelpers var container = TestHelper.GetRegister(); var ioHelper = TestHelper.IOHelper; - var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); + var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); var typeFinder = TestHelper.GetTypeFinder(); var typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), diff --git a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs index ce305a409c..568f617f7b 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs @@ -101,7 +101,7 @@ namespace Umbraco.Tests.TestHelpers contentFinders ?? new ContentFinderCollection(Enumerable.Empty()), new TestLastChanceFinder(), new TestVariationContextAccessor(), - new ProfilingLogger(Mock.Of(), Mock.Of()), + new ProfilingLogger(Mock.Of(), Mock.Of()), Mock.Of>(), Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index e9315a1435..c548ead2a5 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -91,7 +91,7 @@ namespace Umbraco.Tests.TestHelpers return TestObjects.GetDatabaseFactoryMock(); var lazyMappers = new Lazy(f.GetInstance); - var factory = new UmbracoDatabaseFactory(f.GetInstance(), GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(f.GetInstance>(), GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); factory.ResetForTests(); return factory; }); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 852b0e2210..fc9dd521d0 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -121,6 +121,8 @@ namespace Umbraco.Tests.Testing protected ServiceContext ServiceContext => Factory.GetInstance(); protected ILogger Logger => Factory.GetInstance(); + // TODO: We probably need to do something different with LoggerFactory, but for now this should be ok, and find a better name + protected ILoggerFactory LoggerFactory_ => Factory.GetInstance(); protected IJsonSerializer JsonNetSerializer { get; } = new JsonNetSerializer(); protected IIOHelper IOHelper { get; private set; } @@ -172,7 +174,7 @@ namespace Umbraco.Tests.Testing var (logger, msLogger, profiler) = GetLoggers(Options.Logger); var loggerFactoy = GetLoggerFactory(Options.Logger); - var proflogger = new ProfilingLogger(logger, profiler); + var proflogger = new ProfilingLogger(loggerFactoy.CreateLogger("ProfilingLogger"), profiler); IOHelper = TestHelper.IOHelper; TypeFinder = new TypeFinder(loggerFactoy.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); @@ -493,7 +495,8 @@ namespace Umbraco.Tests.Testing var globalSettings = TestHelper.GetConfigs().Global(); var connectionStrings = TestHelper.GetConfigs().ConnectionStrings(); - Composition.RegisterUnique(f => new UmbracoDatabaseFactory(Logger, + Composition.RegisterUnique(f => new UmbracoDatabaseFactory(LoggerFactory_.CreateLogger(), + LoggerFactory_, globalSettings, connectionStrings, Constants.System.UmbracoConnectionName, From 9511c99ee7fe88ed38841aa5e2d1fe9fd1fc86c7 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 08:28:49 +0200 Subject: [PATCH 26/85] Use loggerfactory with debug instead of DebugDiagnosticsLogger --- .../Umbraco.Core/Composing/TypeFinderTests.cs | 2 +- src/Umbraco.Tests/Models/ContentTests.cs | 4 +++- src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 11 +++++++---- .../Services/ContentServicePerformanceTest.cs | 2 +- src/Umbraco.Tests/Services/PerformanceTests.cs | 3 ++- 5 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index 88fffd349d..fe9ece6da4 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -62,7 +62,7 @@ namespace Umbraco.Tests.Composing private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Models/ContentTests.cs b/src/Umbraco.Tests/Models/ContentTests.cs index 951daad18c..dec3c2944c 100644 --- a/src/Umbraco.Tests/Models/ContentTests.cs +++ b/src/Umbraco.Tests/Models/ContentTests.cs @@ -4,6 +4,7 @@ using System.Diagnostics; using System.Globalization; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using Newtonsoft.Json; using Umbraco.Core; @@ -23,6 +24,7 @@ using Umbraco.Tests.TestHelpers.Stubs; using Umbraco.Tests.Testing; using Umbraco.Web.PropertyEditors; using Umbraco.Tests.TestHelpers; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Models { @@ -237,7 +239,7 @@ namespace Umbraco.Tests.Models private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index b49421c708..65aa625f8e 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -86,11 +86,14 @@ namespace Umbraco.Tests.Runtimes // test application public class TestUmbracoApplication : UmbracoApplicationBase { - public TestUmbracoApplication() : base(_logger, _configs, _ioHelper, _profiler, new AspNetHostingEnvironment(_hostingSettings), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, _logger, _settings)) + public TestUmbracoApplication() : base(_logger, _configs, _ioHelper, _profiler, new AspNetHostingEnvironment(_hostingSettings), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, _loggerFactory.CreateLogger(), _settings)) { + _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + _logger = _loggerFactory.CreateLogger(); } - private static readonly DebugDiagnosticsLogger _logger = new DebugDiagnosticsLogger(new MessageTemplates()); + private static ILoggerFactory _loggerFactory; + private static Microsoft.Extensions.Logging.ILogger _logger; private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; private static readonly IProfiler _profiler = new TestProfiler(); private static readonly Configs _configs = GetConfigs(); @@ -110,7 +113,7 @@ namespace Umbraco.Tests.Runtimes public IRuntime Runtime { get; private set; } - protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected override IRuntime GetRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Microsoft.Extensions.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { return Runtime = new TestRuntime(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, hostingEnvironment, backOfficeInfo); } @@ -119,7 +122,7 @@ namespace Umbraco.Tests.Runtimes // test runtime public class TestRuntime : CoreRuntime { - public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Microsoft.Extensions.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) :base(configs, umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index 0a14a0bf68..95c76aaf07 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -66,7 +66,7 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Services/PerformanceTests.cs b/src/Umbraco.Tests/Services/PerformanceTests.cs index cdd543fd47..9accbb4387 100644 --- a/src/Umbraco.Tests/Services/PerformanceTests.cs +++ b/src/Umbraco.Tests/Services/PerformanceTests.cs @@ -59,7 +59,8 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); + var factory = LoggerFactory.Create(builder => builder.AddDebug()); + var logger = factory.CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } From 001df5f5a1201f3658e379ff2d99433c51437f9b Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 09:42:55 +0200 Subject: [PATCH 27/85] Use Microsoft ILogger in Repositories --- .../Persistence/Factories/DataTypeFactory.cs | 4 ++-- .../Implement/AuditEntryRepository.cs | 4 ++-- .../Repositories/Implement/AuditRepository.cs | 4 ++-- .../Implement/ConsentRepository.cs | 4 ++-- .../Implement/ContentRepositoryBase.cs | 6 ++--- .../Implement/ContentTypeRepository.cs | 4 ++-- .../Implement/ContentTypeRepositoryBase.cs | 4 ++-- .../Implement/DataTypeContainerRepository.cs | 6 ++--- .../Implement/DataTypeRepository.cs | 10 +++++---- .../Implement/DictionaryRepository.cs | 22 +++++++++++-------- .../Implement/DocumentBlueprintRepository.cs | 7 +++--- .../Implement/DocumentRepository.cs | 14 +++++++----- .../DocumentTypeContainerRepository.cs | 6 ++--- .../Implement/DomainRepository.cs | 4 ++-- .../Implement/EntityContainerRepository.cs | 4 ++-- .../Implement/ExternalLoginRepository.cs | 4 ++-- .../Implement/KeyValueRepository.cs | 8 +++---- .../Implement/LanguageRepository.cs | 4 ++-- .../Repositories/Implement/MacroRepository.cs | 4 ++-- .../Repositories/Implement/MediaRepository.cs | 9 ++++---- .../Implement/MediaTypeContainerRepository.cs | 6 ++--- .../Implement/MediaTypeRepository.cs | 4 ++-- .../Implement/MemberGroupRepository.cs | 4 ++-- .../Implement/MemberRepository.cs | 4 ++-- .../Implement/MemberTypeRepository.cs | 4 ++-- .../Implement/NPocoRepositoryBase.cs | 4 ++-- .../Implement/PermissionRepository.cs | 4 ++-- .../Implement/PublicAccessRepository.cs | 12 +++++----- .../Implement/RedirectUrlRepository.cs | 4 ++-- .../Implement/RelationRepository.cs | 4 ++-- .../Implement/RelationTypeRepository.cs | 8 +++---- .../Implement/RepositoryBaseOfTIdTEntity.cs | 6 ++--- .../Implement/ServerRegistrationRepository.cs | 6 ++--- .../Implement/SimpleGetRepository.cs | 4 ++-- .../Repositories/Implement/TagRepository.cs | 4 ++-- .../Implement/TemplateRepository.cs | 4 ++-- .../Implement/UserGroupRepository.cs | 10 ++++----- .../Repositories/Implement/UserRepository.cs | 4 ++-- .../Repositories/AuditRepositoryTest.cs | 19 ++++++++-------- 39 files changed, 130 insertions(+), 117 deletions(-) diff --git a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs index e447233493..77d8199775 100644 --- a/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs @@ -1,5 +1,5 @@ using System; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.PropertyEditors; @@ -8,7 +8,7 @@ namespace Umbraco.Core.Persistence.Factories { internal static class DataTypeFactory { - public static IDataType BuildEntity(DataTypeDto dto, PropertyEditorCollection editors, ILogger logger) + public static IDataType BuildEntity(DataTypeDto dto, PropertyEditorCollection editors, ILogger logger) { // Check we have an editor for the data type. if (!editors.TryGet(dto.EditorAlias, out var editor)) diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditEntryRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditEntryRepository.cs index c3d34cc3e9..4031047970 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditEntryRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditEntryRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -21,7 +21,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// /// Initializes a new instance of the class. /// - public AuditEntryRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public AuditEntryRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditRepository.cs index 4cb533e86f..a42019e59f 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditRepository.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.Linq; using NPoco; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.DatabaseModelDefinitions; using Umbraco.Core.Persistence.Dtos; @@ -14,7 +14,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class AuditRepository : NPocoRepositoryBase, IAuditRepository { - public AuditRepository(IScopeAccessor scopeAccessor, ILogger logger) + public AuditRepository(IScopeAccessor scopeAccessor, ILogger logger) : base(scopeAccessor, AppCaches.NoCache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ConsentRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ConsentRepository.cs index 57d5dfa864..47ebddf698 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ConsentRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ConsentRepository.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Querying; @@ -20,7 +20,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// /// Initializes a new instance of the class. /// - public ConsentRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public ConsentRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs index fa443808c5..b8edbd051a 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs @@ -2,12 +2,12 @@ using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.Models.Entities; @@ -49,8 +49,8 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// protected ContentRepositoryBase( IScopeAccessor scopeAccessor, - AppCaches cache - , ILogger logger, + AppCaches cache, + ILogger> logger, ILanguageRepository languageRepository, IRelationRepository relationRepository, IRelationTypeRepository relationTypeRepository, diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs index 2e165b5600..d5243f5019 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -20,7 +20,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// internal class ContentTypeRepository : ContentTypeRepositoryBase, IContentTypeRepository { - public ContentTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) + public ContentTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger, commonRepository, languageRepository, shortStringHelper) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs index c25fb30c4c..26596410bf 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs @@ -3,12 +3,12 @@ using System.Collections.Generic; using System.Data; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using System.Threading.Tasks; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Factories; @@ -29,7 +29,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly IShortStringHelper _shortStringHelper; - protected ContentTypeRepositoryBase(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) + protected ContentTypeRepositoryBase(IScopeAccessor scopeAccessor, AppCaches cache, ILogger> logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger) { _shortStringHelper = shortStringHelper; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeContainerRepository.cs index f36b60484a..7ac72b0cb3 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeContainerRepository.cs @@ -1,12 +1,12 @@ -using Umbraco.Core.Cache; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Cache; using Umbraco.Core.Scoping; namespace Umbraco.Core.Persistence.Repositories.Implement { internal class DataTypeContainerRepository : EntityContainerRepository, IDataTypeContainerRepository { - public DataTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public DataTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger, Constants.ObjectTypes.DataTypeContainer) { } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeRepository.cs index 42a89384d7..853e0da181 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeRepository.cs @@ -3,11 +3,11 @@ using System.Collections.Generic; using System.Data; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -26,11 +26,13 @@ namespace Umbraco.Core.Persistence.Repositories.Implement internal class DataTypeRepository : NPocoRepositoryBase, IDataTypeRepository { private readonly Lazy _editors; + private readonly ILogger _dataTypeLogger; - public DataTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, Lazy editors, ILogger logger) + public DataTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, Lazy editors, ILogger logger, ILoggerFactory loggerFactory) : base(scopeAccessor, cache, logger) { _editors = editors; + _dataTypeLogger = loggerFactory.CreateLogger(); } #region Overrides of RepositoryBase @@ -54,7 +56,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement } var dtos = Database.Fetch(dataTypeSql); - return dtos.Select(x => DataTypeFactory.BuildEntity(x, _editors.Value, Logger)).ToArray(); + return dtos.Select(x => DataTypeFactory.BuildEntity(x, _editors.Value, _dataTypeLogger)).ToArray(); } protected override IEnumerable PerformGetByQuery(IQuery query) @@ -65,7 +67,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement var dtos = Database.Fetch(sql); - return dtos.Select(x => DataTypeFactory.BuildEntity(x, _editors.Value, Logger)).ToArray(); + return dtos.Select(x => DataTypeFactory.BuildEntity(x, _editors.Value, _dataTypeLogger)).ToArray(); } #endregion diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DictionaryRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DictionaryRepository.cs index 0b58663952..0c58d26a2a 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DictionaryRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DictionaryRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -18,9 +18,13 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// internal class DictionaryRepository : NPocoRepositoryBase, IDictionaryRepository { - public DictionaryRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + private readonly ILoggerFactory _loggerFactory; + + public DictionaryRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, ILoggerFactory loggerFactory) : base(scopeAccessor, cache, logger) - { } + { + _loggerFactory = loggerFactory; + } protected override IRepositoryCachePolicy CreateCachePolicy() { @@ -130,7 +134,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement foreach (var translation in dictionaryItem.Translations) translation.Value = translation.Value.ToValidXmlString(); - + var dto = DictionaryItemFactory.BuildDto(dictionaryItem); var id = Convert.ToInt32(Database.Insert(dto)); @@ -152,7 +156,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement foreach (var translation in entity.Translations) translation.Value = translation.Value.ToValidXmlString(); - + var dto = DictionaryItemFactory.BuildDto(entity); Database.Update(dto); @@ -224,13 +228,13 @@ namespace Umbraco.Core.Persistence.Repositories.Implement public IDictionaryItem Get(Guid uniqueId) { - var uniqueIdRepo = new DictionaryByUniqueIdRepository(this, ScopeAccessor, AppCaches, Logger); + var uniqueIdRepo = new DictionaryByUniqueIdRepository(this, ScopeAccessor, AppCaches, _loggerFactory.CreateLogger()); return uniqueIdRepo.Get(uniqueId); } public IDictionaryItem Get(string key) { - var keyRepo = new DictionaryByKeyRepository(this, ScopeAccessor, AppCaches, Logger); + var keyRepo = new DictionaryByKeyRepository(this, ScopeAccessor, AppCaches, _loggerFactory.CreateLogger()); return keyRepo.Get(key); } @@ -290,7 +294,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly DictionaryRepository _dictionaryRepository; - public DictionaryByUniqueIdRepository(DictionaryRepository dictionaryRepository, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public DictionaryByUniqueIdRepository(DictionaryRepository dictionaryRepository, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { _dictionaryRepository = dictionaryRepository; @@ -343,7 +347,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly DictionaryRepository _dictionaryRepository; - public DictionaryByKeyRepository(DictionaryRepository dictionaryRepository, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public DictionaryByKeyRepository(DictionaryRepository dictionaryRepository, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { _dictionaryRepository = dictionaryRepository; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentBlueprintRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentBlueprintRepository.cs index 7e3592ac09..32553a8fd4 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentBlueprintRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentBlueprintRepository.cs @@ -1,7 +1,7 @@ using System; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Configuration.UmbracoSettings; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Scoping; using Umbraco.Core.Services; @@ -22,7 +22,8 @@ namespace Umbraco.Core.Persistence.Repositories.Implement public DocumentBlueprintRepository( IScopeAccessor scopeAccessor, AppCaches appCaches, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IContentTypeRepository contentTypeRepository, ITemplateRepository templateRepository, ITagRepository tagRepository, @@ -32,7 +33,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement Lazy propertyEditorCollection, IDataTypeService dataTypeService, DataValueReferenceFactoryCollection dataValueReferenceFactories) - : base(scopeAccessor, appCaches, logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditorCollection, dataValueReferenceFactories, dataTypeService) + : base(scopeAccessor, appCaches, logger, loggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditorCollection, dataValueReferenceFactories, dataTypeService) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs index 97d3dbcd50..27606fa5dd 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; @@ -26,6 +26,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly ITemplateRepository _templateRepository; private readonly ITagRepository _tagRepository; private readonly AppCaches _appCaches; + private readonly ILoggerFactory _loggerFactory; private PermissionRepository _permissionRepository; private readonly ContentByGuidReadRepository _contentByGuidReadRepository; private readonly IScopeAccessor _scopeAccessor; @@ -36,6 +37,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// /// /// + /// /// /// /// @@ -46,7 +48,8 @@ namespace Umbraco.Core.Persistence.Repositories.Implement public DocumentRepository( IScopeAccessor scopeAccessor, AppCaches appCaches, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IContentTypeRepository contentTypeRepository, ITemplateRepository templateRepository, ITagRepository tagRepository, @@ -62,8 +65,9 @@ namespace Umbraco.Core.Persistence.Repositories.Implement _templateRepository = templateRepository ?? throw new ArgumentNullException(nameof(templateRepository)); _tagRepository = tagRepository ?? throw new ArgumentNullException(nameof(tagRepository)); _appCaches = appCaches; + _loggerFactory = loggerFactory; _scopeAccessor = scopeAccessor; - _contentByGuidReadRepository = new ContentByGuidReadRepository(this, scopeAccessor, appCaches, logger); + _contentByGuidReadRepository = new ContentByGuidReadRepository(this, scopeAccessor, appCaches, loggerFactory.CreateLogger()); } protected override DocumentRepository This => this; @@ -75,7 +79,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement // note: is ok to 'new' the repo here as it's a sub-repo really private PermissionRepository PermissionRepository => _permissionRepository - ?? (_permissionRepository = new PermissionRepository(_scopeAccessor, _appCaches, Logger)); + ?? (_permissionRepository = new PermissionRepository(_scopeAccessor, _appCaches, _loggerFactory.CreateLogger>())); #region Repository Base @@ -953,7 +957,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly DocumentRepository _outerRepo; - public ContentByGuidReadRepository(DocumentRepository outerRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public ContentByGuidReadRepository(DocumentRepository outerRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { _outerRepo = outerRepo; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentTypeContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentTypeContainerRepository.cs index 4b5fe8817b..a79247d17d 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentTypeContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentTypeContainerRepository.cs @@ -1,12 +1,12 @@ -using Umbraco.Core.Cache; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Cache; using Umbraco.Core.Scoping; namespace Umbraco.Core.Persistence.Repositories.Implement { internal class DocumentTypeContainerRepository : EntityContainerRepository, IDocumentTypeContainerRepository { - public DocumentTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public DocumentTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger, Constants.ObjectTypes.DocumentTypeContainer) { } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DomainRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DomainRepository.cs index 9aa28fb18a..f0315f747c 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DomainRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DomainRepository.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.Data; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -17,7 +17,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement internal class DomainRepository : NPocoRepositoryBase, IDomainRepository { - public DomainRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public DomainRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs index 505cbfc816..36213b089f 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Querying; @@ -18,7 +18,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly Guid _containerObjectType; - public EntityContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, Guid containerObjectType) + public EntityContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, Guid containerObjectType) : base(scopeAccessor, cache, logger) { var allowedContainers = new[] { Constants.ObjectTypes.DocumentTypeContainer, Constants.ObjectTypes.MediaTypeContainer, Constants.ObjectTypes.DataTypeContainer }; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ExternalLoginRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ExternalLoginRepository.cs index 6d6a654d4e..b984085bdb 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ExternalLoginRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ExternalLoginRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Identity; using Umbraco.Core.Persistence.Dtos; @@ -15,7 +15,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class ExternalLoginRepository : NPocoRepositoryBase, IExternalLoginRepository { - public ExternalLoginRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public ExternalLoginRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/KeyValueRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/KeyValueRepository.cs index 3c2da4d5b7..eb55b476c7 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/KeyValueRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/KeyValueRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; @@ -14,7 +14,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class KeyValueRepository : NPocoRepositoryBase, IKeyValueRepository { - public KeyValueRepository(IScopeAccessor scopeAccessor, ILogger logger) + public KeyValueRepository(IScopeAccessor scopeAccessor, ILogger logger) : base(scopeAccessor, AppCaches.NoCache, logger) { } @@ -111,8 +111,8 @@ namespace Umbraco.Core.Persistence.Repositories.Implement Value = dto.Value, UpdateDate = dto.UpdateDate, }; - } + } - #endregion + #endregion } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs index ce2a04fd9f..9b6df8d825 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -23,7 +23,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly Dictionary _codeIdMap = new Dictionary(StringComparer.OrdinalIgnoreCase); private readonly Dictionary _idCodeMap = new Dictionary(); - public LanguageRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IGlobalSettings globalSettings) + public LanguageRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IGlobalSettings globalSettings) : base(scopeAccessor, cache, logger) { _globalSettings = globalSettings; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MacroRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MacroRepository.cs index ef5a41b21d..61dad47378 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MacroRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MacroRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -18,7 +18,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly IShortStringHelper _shortStringHelper; - public MacroRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IShortStringHelper shortStringHelper) + public MacroRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger) { _shortStringHelper = shortStringHelper; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs index 83088de9bd..9f47fd2f6b 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -31,7 +31,8 @@ namespace Umbraco.Core.Persistence.Repositories.Implement public MediaRepository( IScopeAccessor scopeAccessor, AppCaches cache, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IMediaTypeRepository mediaTypeRepository, ITagRepository tagRepository, ILanguageRepository languageRepository, @@ -46,7 +47,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement _mediaTypeRepository = mediaTypeRepository ?? throw new ArgumentNullException(nameof(mediaTypeRepository)); _tagRepository = tagRepository ?? throw new ArgumentNullException(nameof(tagRepository)); _mediaUrlGenerators = mediaUrlGenerators; - _mediaByGuidReadRepository = new MediaByGuidReadRepository(this, scopeAccessor, cache, logger); + _mediaByGuidReadRepository = new MediaByGuidReadRepository(this, scopeAccessor, cache, loggerFactory.CreateLogger()); } protected override MediaRepository This => this; @@ -417,7 +418,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly MediaRepository _outerRepo; - public MediaByGuidReadRepository(MediaRepository outerRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public MediaByGuidReadRepository(MediaRepository outerRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { _outerRepo = outerRepo; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeContainerRepository.cs index 68b33e989d..d660ebb0b0 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeContainerRepository.cs @@ -1,12 +1,12 @@ -using Umbraco.Core.Cache; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Cache; using Umbraco.Core.Scoping; namespace Umbraco.Core.Persistence.Repositories.Implement { class MediaTypeContainerRepository : EntityContainerRepository, IMediaTypeContainerRepository { - public MediaTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public MediaTypeContainerRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger, Constants.ObjectTypes.MediaTypeContainer) { } } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeRepository.cs index 818b5c9f21..fdb4817aeb 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -19,7 +19,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// internal class MediaTypeRepository : ContentTypeRepositoryBase, IMediaTypeRepository { - public MediaTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) + public MediaTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger, commonRepository, languageRepository, shortStringHelper) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberGroupRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberGroupRepository.cs index edd6dc0ebb..482a0e627f 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberGroupRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberGroupRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -16,7 +16,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class MemberGroupRepository : NPocoRepositoryBase, IMemberGroupRepository { - public MemberGroupRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public MemberGroupRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs index 64266f9df8..4e6415ab72 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -27,7 +27,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly IPasswordHasher _passwordHasher; private readonly IMemberGroupRepository _memberGroupRepository; - public MemberRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, + public MemberRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IMemberTypeRepository memberTypeRepository, IMemberGroupRepository memberGroupRepository, ITagRepository tagRepository, ILanguageRepository languageRepository, IRelationRepository relationRepository, IRelationTypeRepository relationTypeRepository, IPasswordHasher passwordHasher, Lazy propertyEditors, diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeRepository.cs index 059035a9bc..28b364129d 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -22,7 +22,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly IShortStringHelper _shortStringHelper; - public MemberTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) + public MemberTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IContentTypeCommonRepository commonRepository, ILanguageRepository languageRepository, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger, commonRepository, languageRepository, shortStringHelper) { _shortStringHelper = shortStringHelper; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/NPocoRepositoryBase.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/NPocoRepositoryBase.cs index d72eb9de9b..392e7bdf1f 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/NPocoRepositoryBase.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/NPocoRepositoryBase.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using NPoco; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Persistence.SqlSyntax; @@ -21,7 +21,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// /// Initializes a new instance of the class. /// - protected NPocoRepositoryBase(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + protected NPocoRepositoryBase(IScopeAccessor scopeAccessor, AppCaches cache, ILogger> logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PermissionRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PermissionRepository.cs index 259f0b89c0..279a7075ea 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PermissionRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PermissionRepository.cs @@ -5,12 +5,12 @@ using System.Linq; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Scoping; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Persistence.Repositories.Implement { @@ -25,7 +25,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement internal class PermissionRepository : NPocoRepositoryBase where TEntity : class, IEntity { - public PermissionRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public PermissionRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger> logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PublicAccessRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PublicAccessRepository.cs index 1dc7aa478d..6d2f95bb4d 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PublicAccessRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PublicAccessRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -15,7 +15,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class PublicAccessRepository : NPocoRepositoryBase, IPublicAccessRepository { - public PublicAccessRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public PublicAccessRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } @@ -40,7 +40,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement } sql.OrderBy(x => x.NodeId); - + var dtos = Database.FetchOneToMany(x => x.Rules, sql); return dtos.Select(PublicAccessEntryFactory.BuildEntity); } @@ -50,7 +50,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement var sqlClause = GetBaseQuery(false); var translator = new SqlTranslator(sqlClause, query); var sql = translator.Translate(); - + var dtos = Database.FetchOneToMany(x => x.Rules, sql); return dtos.Select(PublicAccessEntryFactory.BuildEntity); } @@ -86,7 +86,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement entity.AddingEntity(); foreach (var rule in entity.Rules) rule.AddingEntity(); - + var dto = PublicAccessEntryFactory.BuildDto(entity); Database.Insert(dto); @@ -116,7 +116,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement else rule.AddingEntity(); } - + var dto = PublicAccessEntryFactory.BuildDto(entity); Database.Update(dto); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs index acf6bb7df2..5df508e5ef 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Querying; @@ -14,7 +14,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class RedirectUrlRepository : NPocoRepositoryBase, IRedirectUrlRepository { - public RedirectUrlRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public RedirectUrlRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationRepository.cs index 667e997953..3767fa354c 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -24,7 +24,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly IRelationTypeRepository _relationTypeRepository; private readonly IEntityRepository _entityRepository; - public RelationRepository(IScopeAccessor scopeAccessor, ILogger logger, IRelationTypeRepository relationTypeRepository, IEntityRepository entityRepository) + public RelationRepository(IScopeAccessor scopeAccessor, ILogger logger, IRelationTypeRepository relationTypeRepository, IEntityRepository entityRepository) : base(scopeAccessor, AppCaches.NoCache, logger) { _relationTypeRepository = relationTypeRepository; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationTypeRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationTypeRepository.cs index 623b55b6f8..bbaebbc9a9 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationTypeRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationTypeRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -18,7 +18,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// internal class RelationTypeRepository : NPocoRepositoryBase, IRelationTypeRepository { - public RelationTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public RelationTypeRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } @@ -55,7 +55,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement throw new NotImplementedException(); var dtos = Database.Fetch(sql); - + return dtos.Select(x => DtoToEntity(x)); } @@ -75,7 +75,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement var sql = translator.Translate(); var dtos = Database.Fetch(sql); - + return dtos.Select(x => DtoToEntity(x)); } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RepositoryBaseOfTIdTEntity.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RepositoryBaseOfTIdTEntity.cs index 6985bf78da..a9e8f4bb16 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RepositoryBaseOfTIdTEntity.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RepositoryBaseOfTIdTEntity.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Scoping; @@ -19,14 +19,14 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private IRepositoryCachePolicy _cachePolicy; - protected RepositoryBase(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger logger) + protected RepositoryBase(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger> logger) { ScopeAccessor = scopeAccessor ?? throw new ArgumentNullException(nameof(scopeAccessor)); Logger = logger ?? throw new ArgumentNullException(nameof(logger)); AppCaches = appCaches ?? throw new ArgumentNullException(nameof(appCaches)); } - protected ILogger Logger { get; } + protected ILogger> Logger { get; } protected AppCaches AppCaches { get; } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ServerRegistrationRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ServerRegistrationRepository.cs index 1497c2857c..f215a8997b 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ServerRegistrationRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ServerRegistrationRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -15,7 +15,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class ServerRegistrationRepository : NPocoRepositoryBase, IServerRegistrationRepository { - public ServerRegistrationRepository(IScopeAccessor scopeAccessor, ILogger logger) + public ServerRegistrationRepository(IScopeAccessor scopeAccessor, ILogger logger) : base(scopeAccessor, AppCaches.NoCache, logger) { } @@ -110,7 +110,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement protected override void PersistUpdatedItem(IServerRegistration entity) { entity.UpdatingEntity(); - + var dto = ServerRegistrationFactory.BuildDto(entity); Database.Update(dto); diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimpleGetRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimpleGetRepository.cs index f7e59820c3..bfbe213fde 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimpleGetRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimpleGetRepository.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Scoping; @@ -18,7 +18,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement where TEntity : class, IEntity where TDto: class { - protected SimpleGetRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + protected SimpleGetRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger> logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TagRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TagRepository.cs index 87564b9ac9..dcd9464ae0 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TagRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TagRepository.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -17,7 +17,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { internal class TagRepository : NPocoRepositoryBase, ITagRepository { - public TagRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public TagRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { } diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TemplateRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TemplateRepository.cs index c02329aac4..b36474d688 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TemplateRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TemplateRepository.cs @@ -3,10 +3,10 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -27,7 +27,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly IFileSystem _viewsFileSystem; private readonly ViewHelper _viewHelper; - public TemplateRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IFileSystems fileSystems, IIOHelper ioHelper, IShortStringHelper shortStringHelper) + public TemplateRepository(IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger, IFileSystems fileSystems, IIOHelper ioHelper, IShortStringHelper shortStringHelper) : base(scopeAccessor, cache, logger) { _ioHelper = ioHelper; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs index 863f3dc455..30b9b29416 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; @@ -24,12 +24,12 @@ namespace Umbraco.Core.Persistence.Repositories.Implement private readonly UserGroupWithUsersRepository _userGroupWithUsersRepository; private readonly PermissionRepository _permissionRepository; - public UserGroupRepository(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger logger, IShortStringHelper shortStringHelper) + public UserGroupRepository(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger logger, ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper) : base(scopeAccessor, appCaches, logger) { _shortStringHelper = shortStringHelper; - _userGroupWithUsersRepository = new UserGroupWithUsersRepository(this, scopeAccessor, appCaches, logger); - _permissionRepository = new PermissionRepository(scopeAccessor, appCaches, logger); + _userGroupWithUsersRepository = new UserGroupWithUsersRepository(this, scopeAccessor, appCaches, loggerFactory.CreateLogger()); + _permissionRepository = new PermissionRepository(scopeAccessor, appCaches, loggerFactory.CreateLogger>()); } @@ -362,7 +362,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement { private readonly UserGroupRepository _userGroupRepo; - public UserGroupWithUsersRepository(UserGroupRepository userGroupRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) + public UserGroupWithUsersRepository(UserGroupRepository userGroupRepo, IScopeAccessor scopeAccessor, AppCaches cache, ILogger logger) : base(scopeAccessor, cache, logger) { _userGroupRepo = userGroupRepo; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserRepository.cs index 5ba32a4d2f..1a8cde3ff6 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserRepository.cs @@ -3,10 +3,10 @@ using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Dtos; @@ -40,7 +40,7 @@ namespace Umbraco.Core.Persistence.Repositories.Implement /// A dictionary specifying the configuration for user passwords. If this is null then no password configuration will be persisted or read. /// /// - public UserRepository(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger logger, IMapperCollection mapperCollection, IGlobalSettings globalSettings, IUserPasswordConfiguration passwordConfiguration, IJsonSerializer jsonSerializer) + public UserRepository(IScopeAccessor scopeAccessor, AppCaches appCaches, ILogger logger, IMapperCollection mapperCollection, IGlobalSettings globalSettings, IUserPasswordConfiguration passwordConfiguration, IJsonSerializer jsonSerializer) : base(scopeAccessor, appCaches, logger) { _mapperCollection = mapperCollection ?? throw new ArgumentNullException(nameof(mapperCollection)); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs index e92653fb98..0966dd09d9 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs @@ -8,6 +8,7 @@ using Umbraco.Core.Persistence.Repositories.Implement; using Umbraco.Core.Scoping; using Umbraco.Tests.Integration.Testing; using Umbraco.Tests.Testing; +using Microsoft.Extensions.Logging; namespace Umbraco.Tests.Integration.Persistence.Repositories { @@ -22,7 +23,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = ScopeProvider.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); repo.Save(new AuditItem(-1, AuditType.System, -1, UmbracoObjectTypes.Document.GetName(), "This is a System audit trail")); var dtos = scope.Database.Fetch("WHERE id > -1"); @@ -38,7 +39,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); for (var i = 0; i < 100; i++) { @@ -51,7 +52,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 10, out var total, Direction.Descending, null, null); @@ -66,7 +67,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); for (var i = 0; i < 100; i++) { @@ -79,7 +80,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); var query = sp.SqlContext.Query().Where(x => x.UserId == -1); @@ -109,7 +110,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); for (var i = 0; i < 100; i++) { @@ -122,7 +123,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 9, out var total, Direction.Descending, new[] { AuditType.Publish }, null) @@ -140,7 +141,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); for (var i = 0; i < 100; i++) { @@ -153,7 +154,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, Logger); + var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 8, out var total, Direction.Descending, null, sp.SqlContext.Query().Where(item => item.Comment == "Content created")) From ecb4831855c10404d32c6ceed7845a2c5390a0e8 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 10:35:11 +0200 Subject: [PATCH 28/85] Apply repository related fixes to tests --- .../Repositories/KeyValueRepositoryTests.cs | 5 ++- .../Repositories/LanguageRepositoryTest.cs | 3 +- .../Repositories/MacroRepositoryTest.cs | 37 +++++++++--------- .../RedirectUrlRepositoryTests.cs | 3 +- .../RelationTypeRepositoryTest.cs | 5 ++- .../ServerRegistrationRepositoryTest.cs | 5 ++- .../Repositories/TemplateRepositoryTest.cs | 17 +++++---- .../Repositories/UserGroupRepositoryTest.cs | 5 ++- .../Repositories/UserRepositoryTest.cs | 7 ++-- .../Testing/UmbracoIntegrationTest.cs | 16 +++++--- .../Repositories/ContentTypeRepositoryTest.cs | 33 ++++++++-------- .../DataTypeDefinitionRepositoryTest.cs | 3 +- .../Repositories/DocumentRepositoryTest.cs | 17 +++++---- .../Repositories/DomainRepositoryTest.cs | 17 +++++---- .../Repositories/MediaRepositoryTest.cs | 15 ++++---- .../Repositories/MediaTypeRepositoryTest.cs | 9 +++-- .../Repositories/MemberRepositoryTest.cs | 15 ++++---- .../Repositories/MemberTypeRepositoryTest.cs | 6 +-- .../PublicAccessRepositoryTest.cs | 29 +++++++------- .../Repositories/RelationRepositoryTest.cs | 14 +++---- .../Repositories/TagRepositoryTest.cs | 31 +++++++-------- .../Repositories/UserRepositoryTest.cs | 38 +++++++++---------- .../Services/ContentServicePerformanceTest.cs | 14 +++---- .../Services/ContentServiceTests.cs | 15 ++++---- .../Services/MacroServiceTests.cs | 4 +- 25 files changed, 194 insertions(+), 169 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs index c756b6273b..086edce803 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs @@ -1,5 +1,6 @@ using System; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Persistence.Repositories.Implement; @@ -66,7 +67,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private IKeyValueRepository CreateRepository(IScopeProvider provider) { - return new KeyValueRepository((IScopeAccessor) provider, Logger); - } + return new KeyValueRepository((IScopeAccessor) provider, ConsoleLoggerFactory.CreateLogger()); + } } } diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs index e127a58cee..55c75c307a 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs @@ -1,6 +1,7 @@ using System; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Cache; using Umbraco.Core.Models; @@ -26,7 +27,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private LanguageRepository CreateRepository(IScopeProvider provider) { - return new LanguageRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, GlobalSettings); + return new LanguageRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), GlobalSettings); } [Test] diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs index 624fd9c566..6275a5aca3 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs @@ -1,5 +1,6 @@ using System.Data.SqlClient; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Cache; using Umbraco.Core.Models; @@ -28,7 +29,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = new Macro(ShortStringHelper, "test1", "Test", "~/views/macropartials/test.cshtml"); @@ -43,7 +44,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = repository.Get(1); macro.Alias = "test2"; @@ -59,7 +60,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Assert Assert.That(repository, Is.Not.Null); @@ -73,7 +74,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var macro = repository.Get(1); @@ -99,7 +100,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var macros = repository.GetMany(); @@ -116,7 +117,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var query = scope.SqlContext.Query().Where(x => x.Alias.ToUpper() == "TEST1"); @@ -134,7 +135,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var query = scope.SqlContext.Query().Where(x => x.Name.StartsWith("Test")); @@ -152,7 +153,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var macro = new Macro(ShortStringHelper, "test", "Test", "~/views/macropartials/test.cshtml"); @@ -173,7 +174,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var macro = repository.Get(2); @@ -208,7 +209,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var macro = repository.Get(3); @@ -229,7 +230,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); // Act var exists = repository.Exists(3); @@ -248,7 +249,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -274,7 +275,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); macro.Properties.Add(new MacroProperty("blah1", "New1", 4, "test.editor")); @@ -299,7 +300,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); macro.Properties.Add(new MacroProperty("blah1", "New1", 4, "test.editor")); @@ -323,7 +324,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); var prop1 = new MacroProperty("blah1", "New1", 4, "test.editor"); @@ -354,7 +355,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -381,7 +382,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -403,7 +404,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); repository.Save(new Macro(ShortStringHelper, "test1", "Test1", "~/views/macropartials/test1.cshtml")); repository.Save(new Macro(ShortStringHelper, "test2", "Test2", "~/views/macropartials/test2.cshtml")); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs index 18cbb01c0e..46011cf1be 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; @@ -187,7 +188,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private IRedirectUrlRepository CreateRepository(IScopeProvider provider) { - return new RedirectUrlRepository((IScopeAccessor) provider, AppCaches, Logger); + return new RedirectUrlRepository((IScopeAccessor) provider, AppCaches, ConsoleLoggerFactory.CreateLogger()); } private IContent _textpage, _subpage, _otherpage, _trashed; diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs index 9a08c3f9c8..5e4a58cab8 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs @@ -1,4 +1,5 @@ using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; @@ -22,7 +23,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private RelationTypeRepository CreateRepository(IScopeProvider provider) { - return new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger); + return new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); } [Test] @@ -221,7 +222,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger); + var repository = new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); repository.Save(relateContent);//Id 2 repository.Save(relateContentType);//Id 3 diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs index 0ac8b3a829..63aec686b6 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs @@ -1,6 +1,7 @@ using System; using System.Data.SqlClient; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Cache; using Umbraco.Core.Models; @@ -26,7 +27,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private ServerRegistrationRepository CreateRepository(IScopeProvider provider) { - return new ServerRegistrationRepository((IScopeAccessor) provider, Logger); + return new ServerRegistrationRepository((IScopeAccessor) provider, ConsoleLoggerFactory.CreateLogger()); } [Test] @@ -55,7 +56,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var server = repository.Get(1); server.ServerIdentity = "COMPUTER2"; - + Assert.Throws(() => repository.Save(server)); } } diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs index 056d1f424a..3e11bbb72f 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -29,13 +30,13 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private ITemplateRepository CreateRepository(IScopeProvider provider) { - return new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, _fileSystems, IOHelper, ShortStringHelper); + return new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), _fileSystems, IOHelper, ShortStringHelper); } [SetUp] public void SetUp() { - var testHelper = new TestHelper(); + var testHelper = new TestHelper(); _fileSystems = Mock.Of(); var viewsFileSystem = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), Logger, Constants.SystemDirectories.MvcViews); Mock.Get(_fileSystems).Setup(x => x.MvcViewsFileSystem).Returns(viewsFileSystem); @@ -260,16 +261,16 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { var templateRepository = CreateRepository(provider); - var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, Logger); + var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger, GlobalSettings); - var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), GlobalSettings); + var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, ConsoleLoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var contentRepo = new DocumentRepository(scopeAccessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, dataTypeService); + var contentRepo = new DocumentRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, dataTypeService); var contentType = MockedContentTypes.CreateSimpleContentType("umbTextpage2", "Textpage"); fileService.SaveTemplate(contentType.DefaultTemplate); // else, FK violation on contentType! diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs index b18d1a95c2..3de8a2e5d5 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs @@ -1,4 +1,5 @@ using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Repositories; @@ -16,7 +17,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { private UserGroupRepository CreateRepository(IScopeProvider provider) { - return new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, Logger, ShortStringHelper); + return new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); } [Test] @@ -127,7 +128,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var id = userGroup.Id; - var repository2 = new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, Logger, ShortStringHelper); + var repository2 = new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); repository2.Delete(userGroup); scope.Complete(); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs index dddcff4331..fceb8da37d 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -25,14 +26,14 @@ namespace Umbraco.Tests.Persistence.Repositories private UserRepository CreateRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - var repository = new UserRepository(accessor, AppCaches.Disabled, Logger, Mappers, GlobalSettings, Mock.Of(), new JsonNetSerializer()); + var repository = new UserRepository(accessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Mappers, GlobalSettings, Mock.Of(), new JsonNetSerializer()); return repository; } private UserGroupRepository CreateUserGroupRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - return new UserGroupRepository(accessor, AppCaches.Disabled, Logger, ShortStringHelper); + return new UserGroupRepository(accessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); } [Test] @@ -117,7 +118,7 @@ namespace Umbraco.Tests.Persistence.Repositories var id = user.Id; - var repository2 = new UserRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, Mock.Of(),GlobalSettings, Mock.Of(), new JsonNetSerializer()); + var repository2 = new UserRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Mock.Of(),GlobalSettings, Mock.Of(), new JsonNetSerializer()); repository2.Delete(user); diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 510d2ae6cf..0ee9823add 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -20,7 +20,6 @@ using Umbraco.Tests.Integration.Implementations; using Umbraco.Extensions; using Umbraco.Tests.Testing; using Umbraco.Web; -using ILogger = Umbraco.Core.Logging.ILogger; using Umbraco.Core.Runtime; using Umbraco.Core; using Moq; @@ -30,6 +29,7 @@ using System.Data.SqlClient; using System.Data.Common; using System.IO; using Microsoft.Extensions.Logging; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Integration.Testing { @@ -82,7 +82,7 @@ namespace Umbraco.Tests.Integration.Testing { var hostBuilder = CreateHostBuilder(); var host = await hostBuilder.StartAsync(); - Services = host.Services; + Services = host.Services; var app = new ApplicationBuilder(host.Services); Configure(app); } @@ -144,7 +144,7 @@ namespace Umbraco.Tests.Integration.Testing loggerFactory, profiler, hostingEnvironment, - backOfficeInfo, + backOfficeInfo, typeFinder, appCaches, dbProviderFactoryCreator, @@ -186,7 +186,7 @@ namespace Umbraco.Tests.Integration.Testing profiler, Mock.Of(), hostingEnvironment, - backOfficeInfo, + backOfficeInfo, dbProviderFactoryCreator, mainDom, typeFinder, @@ -225,7 +225,8 @@ namespace Umbraco.Tests.Integration.Testing services.AddMvc(); - services.AddSingleton(new ConsoleLogger(new MessageTemplates())); + services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger("ConsoleLogger")); + services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole())); CustomTestSetup(services); } @@ -413,6 +414,11 @@ namespace Umbraco.Tests.Integration.Testing /// protected ILogger Logger => Services.GetRequiredService(); + /// + /// Returns the + /// + protected ILoggerFactory ConsoleLoggerFactory => Services.GetRequiredService(); + protected AppCaches AppCaches => Services.GetRequiredService(); protected IIOHelper IOHelper => Services.GetRequiredService(); protected IShortStringHelper ShortStringHelper => Services.GetRequiredService(); diff --git a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs index 53a632132d..7dd1de5450 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; @@ -30,42 +31,42 @@ namespace Umbraco.Tests.Persistence.Repositories private DocumentRepository CreateRepository(IScopeAccessor scopeAccessor, out ContentTypeRepository contentTypeRepository) { - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger,TestObjects.GetGlobalSettings()); - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, Logger); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(),TestObjects.GetGlobalSettings()); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository, langRepository, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, Logger); + contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); + var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(scopeAccessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } private ContentTypeRepository CreateRepository(IScopeAccessor scopeAccessor) { - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository, langRepository, ShortStringHelper); + var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); return contentTypeRepository; } private MediaTypeRepository CreateMediaTypeRepository(IScopeAccessor scopeAccessor) { - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - var contentTypeRepository = new MediaTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository, langRepository, ShortStringHelper); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + var contentTypeRepository = new MediaTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); return contentTypeRepository; } private EntityContainerRepository CreateContainerRepository(IScopeAccessor scopeAccessor, Guid containerEntityType) { - return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, Logger, containerEntityType); + return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), containerEntityType); } // TODO: Add test to verify SetDefaultTemplates updates both AllowedTemplates and DefaultTemplate(id). @@ -77,7 +78,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var templateRepo = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepo = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var repository = CreateRepository((IScopeAccessor) provider); var templates = new[] { diff --git a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs index e1c79b9d26..b12229be42 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs @@ -1,4 +1,5 @@ using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; @@ -25,7 +26,7 @@ namespace Umbraco.Tests.Persistence.Repositories private EntityContainerRepository CreateContainerRepository(IScopeAccessor scopeAccessor) { - return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, Logger, Constants.ObjectTypes.DataTypeContainer); + return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Constants.ObjectTypes.DataTypeContainer); } [Test] diff --git a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs index fe59e431ec..758a6fa1b4 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -50,7 +51,7 @@ namespace Umbraco.Tests.Persistence.Repositories TemplateRepository tr; var ctRepository = CreateRepository(scopeAccessor, out contentTypeRepository, out tr); var editors = new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty())); - dtdRepository = new DataTypeRepository(scopeAccessor, appCaches, new Lazy(() => editors), Logger); + dtdRepository = new DataTypeRepository(scopeAccessor, appCaches, new Lazy(() => editors), LoggerFactory_.CreateLogger(), LoggerFactory_); return ctRepository; } @@ -64,17 +65,17 @@ namespace Umbraco.Tests.Persistence.Repositories { appCaches = appCaches ?? AppCaches; - templateRepository = new TemplateRepository(scopeAccessor, appCaches, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, appCaches, Logger); + templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, appCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, appCaches, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(scopeAccessor, appCaches, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(scopeAccessor, appCaches, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, + var repository = new DocumentRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs index 91d129aeeb..0f16928d1f 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Configuration.UmbracoSettings; @@ -22,18 +23,18 @@ namespace Umbraco.Tests.Persistence.Repositories private DomainRepository CreateRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository, out DocumentRepository documentRepository, out LanguageRepository languageRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, Core.Cache.AppCaches.Disabled, Logger); + var templateRepository = new TemplateRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - languageRepository = new LanguageRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, Core.Cache.AppCaches.Disabled, Logger); + languageRepository = new LanguageRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - documentRepository = new DocumentRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); - var domainRepository = new DomainRepository(accessor, Core.Cache.AppCaches.Disabled, Logger); + documentRepository = new DocumentRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var domainRepository = new DomainRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); return domainRepository; } diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs index 83572180af..0b3b37e453 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Cache; @@ -35,18 +36,18 @@ namespace Umbraco.Tests.Persistence.Repositories appCaches = appCaches ?? AppCaches; var scopeAccessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(scopeAccessor, appCaches, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, appCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, appCaches, Logger, TestObjects.GetGlobalSettings()); - mediaTypeRepository = new MediaTypeRepository(scopeAccessor, appCaches, Logger, commonRepository, languageRepository, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, appCaches, Logger); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + mediaTypeRepository = new MediaTypeRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger()); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(scopeAccessor, appCaches, Logger, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs index 6ffbdaca10..f1b4eb2c85 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; @@ -21,15 +22,15 @@ namespace Umbraco.Tests.Persistence.Repositories private MediaTypeRepository CreateRepository(IScopeProvider provider) { var cacheHelper = AppCaches.Disabled; - var templateRepository = new TemplateRepository((IScopeAccessor)provider, cacheHelper, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository((IScopeAccessor)provider, cacheHelper, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository((IScopeAccessor)provider, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches, Logger, TestObjects.GetGlobalSettings()); - return new MediaTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); + var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + return new MediaTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); } private EntityContainerRepository CreateContainerRepository(IScopeProvider provider) { - return new EntityContainerRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, Constants.ObjectTypes.MediaTypeContainer); + return new EntityContainerRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Constants.ObjectTypes.MediaTypeContainer); } diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs index b8c823f59e..c97aa04567 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs @@ -2,6 +2,7 @@ using System.Diagnostics; using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using NUnit.Framework; @@ -32,16 +33,16 @@ namespace Umbraco.Tests.Persistence.Repositories var accessor = (IScopeAccessor) provider; var templateRepository = Mock.Of(); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - memberTypeRepository = new MemberTypeRepository(accessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - memberGroupRepository = new MemberGroupRepository(accessor, AppCaches.Disabled, Logger); - var tagRepo = new TagRepository(accessor, AppCaches.Disabled, Logger); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + memberTypeRepository = new MemberTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + memberGroupRepository = new MemberGroupRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MemberRepository(accessor, AppCaches.Disabled, Logger, memberTypeRepository, memberGroupRepository, tagRepo, Mock.Of(), relationRepository, relationTypeRepository, PasswordHasher, propertyEditors, dataValueReferences, DataTypeService); + var repository = new MemberRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), memberTypeRepository, memberGroupRepository, tagRepo, Mock.Of(), relationRepository, relationTypeRepository, PasswordHasher, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs index b8c60f97fe..0450dbccaa 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs @@ -1,10 +1,10 @@ using System; using System.Linq; using Moq; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Repositories; @@ -24,8 +24,8 @@ namespace Umbraco.Tests.Persistence.Repositories { var templateRepository = Mock.Of(); var commonRepository = new ContentTypeCommonRepository((IScopeAccessor)provider, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches.Disabled, Mock.Of(), TestObjects.GetGlobalSettings()); - return new MemberTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of(), commonRepository, languageRepository, ShortStringHelper); + var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches.Disabled, Mock.Of>(), TestObjects.GetGlobalSettings()); + return new MemberTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of>(), commonRepository, languageRepository, ShortStringHelper); } [Test] diff --git a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs index 4ba2c3eab6..bdd62b47c7 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Configuration.UmbracoSettings; @@ -28,7 +29,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -58,7 +59,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -98,7 +99,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -143,7 +144,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -181,7 +182,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -209,7 +210,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var allEntries = new List(); for (int i = 0; i < 10; i++) @@ -273,7 +274,7 @@ namespace Umbraco.Tests.Persistence.Repositories var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, Logger); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); var entry1 = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -306,17 +307,17 @@ namespace Umbraco.Tests.Persistence.Repositories private DocumentRepository CreateRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches, Logger); + var templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs index 209d5de4b3..804102eff1 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs @@ -1,11 +1,11 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -32,9 +32,9 @@ namespace Umbraco.Tests.Persistence.Repositories private RelationRepository CreateRepository(IScopeProvider provider, out RelationTypeRepository relationTypeRepository) { var accessor = (IScopeAccessor) provider; - relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Mock.Of()); + relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Mock.Of>()); var entityRepository = new EntityRepository(accessor); - var repository = new RelationRepository(accessor, Mock.Of(), relationTypeRepository, entityRepository); + var repository = new RelationRepository(accessor, Mock.Of>(), relationTypeRepository, entityRepository); return repository; } @@ -214,7 +214,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Get_Paged_Parent_Child_Entities_With_Same_Entity_Relation() { - //Create a media item and create a relationship between itself (parent -> child) + //Create a media item and create a relationship between itself (parent -> child) var imageType = MockedContentTypes.CreateImageMediaType("myImage"); ServiceContext.MediaTypeService.Save(imageType); var media = MockedMedia.CreateMediaImage(imageType, -1); @@ -414,7 +414,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void CreateTestData() { var relateContent = new RelationType( - "Relate Content on Copy", "relateContentOnCopy", true, + "Relate Content on Copy", "relateContentOnCopy", true, Constants.ObjectTypes.Document, new Guid("C66BA18E-EAF3-4CFF-8A22-41B16D66A972")); @@ -428,9 +428,9 @@ namespace Umbraco.Tests.Persistence.Repositories using (var scope = provider.CreateScope()) { var accessor = (IScopeAccessor)provider; - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Mock.Of()); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Mock.Of>()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Mock.Of(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, Mock.Of>(), relationTypeRepository, entityRepository); relationTypeRepository.Save(relateContent); relationTypeRepository.Save(relateContentType); diff --git a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs index d4341cd128..d468d21010 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Cache; @@ -949,41 +950,41 @@ namespace Umbraco.Tests.Persistence.Repositories private TagRepository CreateRepository(IScopeProvider provider) { - return new TagRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger); + return new TagRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger()); } private DocumentRepository CreateDocumentRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, Logger); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } private MediaRepository CreateMediaRepository(IScopeProvider provider, out MediaTypeRepository mediaTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, Logger); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(accessor, AppCaches.Disabled, Logger, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } } diff --git a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs index fc7f4f4555..ac80352618 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs @@ -1,9 +1,10 @@ -using System.Linq; +using System; +using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Persistence.Repositories.Implement; @@ -12,7 +13,6 @@ using Umbraco.Tests.TestHelpers; using Umbraco.Tests.TestHelpers.Entities; using Umbraco.Tests.Testing; using Umbraco.Core.PropertyEditors; -using System; using Umbraco.Core.Configuration; using Umbraco.Core.Serialization; using MockedUser = Umbraco.Tests.TestHelpers.Entities.MockedUser; @@ -28,18 +28,18 @@ namespace Umbraco.Tests.Persistence.Repositories private MediaRepository CreateMediaRepository(IScopeProvider provider, out IMediaTypeRepository mediaTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, Logger, TestObjects.GetGlobalSettings()); - mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches, Mock.Of(), commonRepository, languageRepository, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches, Mock.Of()); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches, Mock.Of>(), commonRepository, languageRepository, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches, Mock.Of>()); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(accessor, AppCaches, Mock.Of(), mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(accessor, AppCaches, Mock.Of>(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } @@ -52,31 +52,31 @@ namespace Umbraco.Tests.Persistence.Repositories private DocumentRepository CreateContentRepository(IScopeProvider provider, out IContentTypeRepository contentTypeRepository, out ITemplateRepository templateRepository) { var accessor = (IScopeAccessor) provider; - templateRepository = new TemplateRepository(accessor, AppCaches, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches, Logger); + templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } private UserRepository CreateRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - var repository = new UserRepository(accessor, AppCaches.Disabled, Logger, Mappers, TestObjects.GetGlobalSettings(), Mock.Of(), new JsonNetSerializer()); + var repository = new UserRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Mappers, TestObjects.GetGlobalSettings(), Mock.Of(), new JsonNetSerializer()); return repository; } private UserGroupRepository CreateUserGroupRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - return new UserGroupRepository(accessor, AppCaches.Disabled, Logger, ShortStringHelper); + return new UserGroupRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, ShortStringHelper); } [Test] diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index 95c76aaf07..c5c054248f 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -44,17 +44,17 @@ namespace Umbraco.Tests.Services private DocumentRepository CreateDocumentRepository(IScopeProvider provider) { var accessor = (IScopeAccessor)provider; - var tRepository = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepo = new TagRepository(accessor, AppCaches.Disabled, Logger); + var tRepository = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, tRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - var ctRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + var ctRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, Logger, ctRepository, tRepository, tagRepo, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, ctRepository, tRepository, tagRepo, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Services/ContentServiceTests.cs b/src/Umbraco.Tests/Services/ContentServiceTests.cs index 81f8a5bcad..b6427a2bc9 100644 --- a/src/Umbraco.Tests/Services/ContentServiceTests.cs +++ b/src/Umbraco.Tests/Services/ContentServiceTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -3244,17 +3245,17 @@ namespace Umbraco.Tests.Services private DocumentRepository CreateRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, Logger); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetGlobalSettings()); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, Logger, commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, Logger); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetGlobalSettings()); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, Logger, relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Services/MacroServiceTests.cs b/src/Umbraco.Tests/Services/MacroServiceTests.cs index ceecb72156..d09e43cf44 100644 --- a/src/Umbraco.Tests/Services/MacroServiceTests.cs +++ b/src/Umbraco.Tests/Services/MacroServiceTests.cs @@ -1,10 +1,10 @@ using System; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; @@ -26,7 +26,7 @@ namespace Umbraco.Tests.Services var provider = TestObjects.GetScopeProvider(Logger); using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of>(), ShortStringHelper); repository.Save(new Macro(ShortStringHelper, "test1", "Test1", "~/views/macropartials/test1.cshtml")); repository.Save(new Macro(ShortStringHelper, "test2", "Test2", "~/views/macropartials/test2.cshtml")); From ccf63bac5b5c3a39fe444dde4ff44999999dc431 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 10:57:03 +0200 Subject: [PATCH 29/85] Use ILoggerFactory in GetScopeProvider in TestObjects --- .../NPocoTests/NPocoBulkInsertTests.cs | 5 +- .../Repositories/ContentTypeRepositoryTest.cs | 60 +++++++++---------- .../DataTypeDefinitionRepositoryTest.cs | 32 +++++----- .../Repositories/DocumentRepositoryTest.cs | 56 ++++++++--------- .../Repositories/DomainRepositoryTest.cs | 26 ++++---- .../Repositories/MediaRepositoryTest.cs | 42 ++++++------- .../Repositories/MediaTypeRepositoryTest.cs | 32 +++++----- .../Repositories/MemberRepositoryTest.cs | 26 ++++---- .../Repositories/MemberTypeRepositoryTest.cs | 28 ++++----- .../PartialViewRepositoryTests.cs | 2 +- .../PublicAccessRepositoryTest.cs | 16 ++--- .../Repositories/RelationRepositoryTest.cs | 28 ++++----- .../Repositories/ScriptRepositoryTest.cs | 20 +++---- .../Repositories/TagRepositoryTest.cs | 42 ++++++------- .../Repositories/UserRepositoryTest.cs | 2 +- .../Persistence/UnitOfWorkTests.cs | 8 +-- .../Scoping/ScopeEventDispatcherTests.cs | 19 +++--- .../Services/ContentServicePerformanceTest.cs | 8 +-- .../Services/MacroServiceTests.cs | 2 +- .../TestHelpers/TestObjects-Mocks.cs | 3 +- src/Umbraco.Tests/TestHelpers/TestObjects.cs | 17 +++--- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 2 +- .../Web/Mvc/UmbracoViewPageTests.cs | 3 +- 23 files changed, 241 insertions(+), 238 deletions(-) diff --git a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs index 2781737f21..b1fa926643 100644 --- a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs +++ b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; using System.Text.RegularExpressions; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core.Logging; using Umbraco.Core.Persistence; @@ -18,7 +19,7 @@ namespace Umbraco.Tests.Persistence.NPocoTests [UmbracoTest(Database = UmbracoTestOptions.Database.NewSchemaPerTest)] public class NPocoBulkInsertTests : TestWithDatabaseBase { - + [NUnit.Framework.Ignore("Ignored because you need to configure your own SQL Server to test thsi with")] [Test] @@ -27,7 +28,7 @@ namespace Umbraco.Tests.Persistence.NPocoTests // create the db // prob not what we want, this is not a real database, but hey, the test is ignored anyways // we'll fix this when we have proper testing infrastructure - var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(new DebugDiagnosticsLogger(new MessageTemplates())); + var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger()); //drop the table dbSqlServer.Execute("DROP TABLE [umbracoServer]"); diff --git a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs index 7dd1de5450..4dbfafff11 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs @@ -75,7 +75,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Maps_Templates_Correctly() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var templateRepo = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); @@ -110,7 +110,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -156,7 +156,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -175,7 +175,7 @@ namespace Umbraco.Tests.Persistence.Repositories { EntityContainer container1, container2, container3; - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -205,7 +205,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -225,7 +225,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.MediaTypeContainer); @@ -246,7 +246,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.MediaTypeContainer); @@ -277,7 +277,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -312,7 +312,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ContentTypeRepository_After_Model_Mapping() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -364,7 +364,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -440,7 +440,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ContentTypeRepository_After_Model_Mapping() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -503,7 +503,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -527,7 +527,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_With_Heirarchy_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -559,7 +559,7 @@ namespace Umbraco.Tests.Persistence.Repositories IContentType contentType; // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -594,7 +594,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -612,7 +612,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -634,7 +634,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Missing_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -650,7 +650,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -672,7 +672,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_By_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -695,7 +695,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -712,7 +712,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Update_ContentType_With_PropertyType_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -736,7 +736,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_SimpleTextpage() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -754,7 +754,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_Textpage() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -772,7 +772,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyType_With_No_Group() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -813,7 +813,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_AllowedChildContentTypes_On_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -847,7 +847,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Removal_Of_Used_PropertyType_From_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -874,7 +874,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Addition_Of_PropertyType_After_ContentType_Is_Used() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -902,7 +902,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Usage_Of_New_PropertyType_On_Content() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -936,7 +936,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_That_A_Combination_Of_Adding_And_Deleting_PropertyTypes_Doesnt_Cause_Issues_For_Content_And_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -976,7 +976,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Content_Type_Has_Content_Nodes() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; diff --git a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs index b12229be42..468d4cf7c9 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs @@ -32,7 +32,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Find_Usages() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -94,7 +94,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -137,7 +137,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -156,7 +156,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -176,7 +176,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Data_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -196,7 +196,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Data_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -224,7 +224,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -249,7 +249,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Get_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -267,7 +267,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetAll_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -287,7 +287,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetAll_With_Params_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -307,7 +307,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetByQuery_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { @@ -327,7 +327,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Count_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { @@ -345,7 +345,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Add_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -383,7 +383,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Update_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -414,7 +414,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Delete_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { @@ -444,7 +444,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Exists_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { diff --git a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs index 758a6fa1b4..e318123c83 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs @@ -88,7 +88,7 @@ namespace Umbraco.Tests.Persistence.Repositories new DictionaryAppCache(), new IsolatedCaches(t => new ObjectCacheAppCache())); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, appCaches: realCache); @@ -129,7 +129,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void CreateVersions() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository _); @@ -303,7 +303,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void PropertyDataAssignedCorrectly() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository _); @@ -355,7 +355,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void PropertyValuesWithSpecialTypes() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository dataTypeDefinitionRepository); @@ -402,7 +402,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -423,7 +423,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContentWithDefaultTemplate() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out TemplateRepository templateRepository); @@ -458,7 +458,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveContentWithAtSignInName() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -491,7 +491,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContentMultiple() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -520,7 +520,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetContentIsNotDirty() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -535,7 +535,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void UpdateContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -564,7 +564,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void UpdateContentWithNullTemplate() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -583,7 +583,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void DeleteContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -607,7 +607,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -628,7 +628,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -645,7 +645,7 @@ namespace Umbraco.Tests.Persistence.Repositories { IContent[] result; - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -758,7 +758,7 @@ namespace Umbraco.Tests.Persistence.Repositories Assert.IsTrue(child1.Name.StartsWith("VAR")); Assert.IsTrue(child1.GetCultureName("en-US").StartsWith("VAR")); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -805,7 +805,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_CustomPropertySort() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -837,7 +837,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FirstPage() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -866,7 +866,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_SecondPage() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -883,7 +883,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_SinglePage() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -900,7 +900,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_DescendingOrder() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -917,7 +917,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FilterMatchingSome() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -936,7 +936,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FilterMatchingAll() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -955,7 +955,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllContentByIds() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -972,7 +972,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -998,7 +998,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void ExistContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -1012,7 +1012,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void CountContent() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -1027,7 +1027,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryContentByUniqueId() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); diff --git a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs index 0f16928d1f..e92a02519a 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs @@ -40,7 +40,7 @@ namespace Umbraco.Tests.Persistence.Repositories private int CreateTestData(string isoName, out ContentType ct) { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -67,7 +67,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -101,7 +101,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -133,7 +133,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -160,7 +160,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -191,7 +191,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId1 = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -238,7 +238,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -268,7 +268,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -298,7 +298,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -328,7 +328,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -360,7 +360,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -394,7 +394,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -443,7 +443,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs index 0b3b37e453..90640adb76 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs @@ -61,7 +61,7 @@ namespace Umbraco.Tests.Persistence.Repositories new DictionaryAppCache(), new IsolatedCaches(t => new ObjectCacheAppCache())); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out mediaTypeRepository, appCaches: realCache); @@ -103,7 +103,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -130,7 +130,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveMediaMultiple() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -159,7 +159,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetMediaIsNotDirty() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -178,7 +178,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void UpdateMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -201,7 +201,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void DeleteMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -224,7 +224,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -251,7 +251,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void QueryMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -271,7 +271,7 @@ namespace Umbraco.Tests.Persistence.Repositories { // Arrange var folderMediaType = ServiceContext.MediaTypeService.Get(1031); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -302,7 +302,7 @@ namespace Umbraco.Tests.Persistence.Repositories // Arrange var folderMediaType = ServiceContext.MediaTypeService.Get(1031); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -328,7 +328,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FirstPage() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -349,7 +349,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_SecondPage() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -371,7 +371,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_SinglePage() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -393,7 +393,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_DescendingOrder() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -415,7 +415,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_AlternateOrder() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -436,7 +436,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FilterMatchingSome() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -459,7 +459,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FilterMatchingAll() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out _); @@ -481,7 +481,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetAllMediaByIds() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -501,7 +501,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetAllMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -531,7 +531,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void ExistMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -553,7 +553,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void CountMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs index f1b4eb2c85..a62202657d 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs @@ -37,7 +37,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -84,7 +84,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -102,7 +102,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -124,7 +124,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -146,7 +146,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -178,7 +178,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -206,7 +206,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -244,7 +244,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -269,7 +269,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -288,7 +288,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Guid_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -309,7 +309,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -331,7 +331,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_By_Guid_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -357,7 +357,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -374,7 +374,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Update_MediaType_With_PropertyType_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -402,7 +402,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_Video_MediaType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -424,7 +424,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_File_MediaType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs index c97aa04567..0532ee463d 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs @@ -49,7 +49,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetMember() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -68,7 +68,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetMembers() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -91,7 +91,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllMembers() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -117,7 +117,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void QueryMember() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -140,7 +140,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveMember() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -165,7 +165,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void MemberHasBuiltinProperties() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -197,7 +197,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SavingPreservesPassword() { IMember sut; - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -227,7 +227,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SavingUpdatesNameAndEmail() { IMember sut; - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -257,7 +257,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryMember_WithSubQuery() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var query = provider.SqlContext.Query().Where(x => ((Member) x).LongStringPropertyValue.Contains("1095") && @@ -277,7 +277,7 @@ namespace Umbraco.Tests.Persistence.Repositories private IMember CreateTestMember(IMemberType memberType = null, string name = null, string email = null, string password = null, string username = null, Guid? key = null) { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -301,7 +301,7 @@ namespace Umbraco.Tests.Persistence.Repositories private IMemberType CreateTestMemberType(string alias = null) { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -317,7 +317,7 @@ namespace Umbraco.Tests.Persistence.Repositories private Sql GetBaseQuery(bool isCount) { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); if (isCount) { var sqlCount = provider.SqlContext.Sql() @@ -357,7 +357,7 @@ namespace Umbraco.Tests.Persistence.Repositories private Sql GetSubquery() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); var sql = provider.SqlContext.Sql(); sql.Select("umbracoNode.id") .From() diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs index 0450dbccaa..7be125527d 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs @@ -31,7 +31,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Persist_Member_Type() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -57,7 +57,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Persist_Member_Type_Same_Property_Keys() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -83,7 +83,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Cannot_Persist_Member_Type_Without_Alias() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -99,7 +99,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Member_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -124,7 +124,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Member_Types_By_Guid_Ids() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -149,7 +149,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Types_By_Guid_Id() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -176,7 +176,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Members_When_No_Properties_Assigned() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -203,7 +203,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Type_By_Id() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -219,7 +219,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Type_By_Guid_Id() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -238,7 +238,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -283,7 +283,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -314,7 +314,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -348,7 +348,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Built_In_Member_Type_Properties_Are_Not_Reused_For_Different_Member_Types() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -370,7 +370,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Delete_MemberType() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs index f7744303e3..618723fdf7 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs @@ -41,7 +41,7 @@ namespace Umbraco.Tests.Persistence.Repositories var fileSystems = Mock.Of(); Mock.Get(fileSystems).Setup(x => x.PartialViewsFileSystem).Returns(_fileSystem); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = new PartialViewRepository(fileSystems, IOHelper); diff --git a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs index bdd62b47c7..43569099c7 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs @@ -26,7 +26,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; @@ -95,7 +95,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; @@ -141,7 +141,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); @@ -179,7 +179,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); @@ -207,7 +207,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(30).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); @@ -271,7 +271,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); @@ -323,7 +323,7 @@ namespace Umbraco.Tests.Persistence.Repositories private IEnumerable CreateTestData(int count) { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { ContentTypeRepository ctRepo; diff --git a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs index 804102eff1..fc44169a83 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -64,7 +64,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -89,7 +89,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -111,7 +111,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -133,7 +133,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -154,7 +154,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_With_Params_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -176,7 +176,7 @@ namespace Umbraco.Tests.Persistence.Repositories { CreateTestDataForPagingTests(out var createdContent, out var createdMembers, out var createdMedia); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -222,7 +222,7 @@ namespace Umbraco.Tests.Persistence.Repositories var relType = ServiceContext.RelationService.GetRelationTypeByAlias(Constants.Conventions.RelationTypes.RelatedMediaAlias); ServiceContext.RelationService.Relate(media.Id, media.Id, relType); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -244,7 +244,7 @@ namespace Umbraco.Tests.Persistence.Repositories { CreateTestDataForPagingTests(out var createdContent, out var createdMembers, out var createdMedia); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -325,7 +325,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -345,7 +345,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Count_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -364,7 +364,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetByQuery_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -386,7 +386,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Delete_Content_And_Verify_Relation_Is_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -424,7 +424,7 @@ namespace Umbraco.Tests.Persistence.Repositories Constants.ObjectTypes.DocumentType, new Guid("A2CB7800-F571-4787-9638-BC48539A0EFB")); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var accessor = (IScopeAccessor)provider; diff --git a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs index 7922af99b0..0a33c0af0b 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs @@ -54,7 +54,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Instantiate_Repository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { // Act @@ -69,7 +69,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -88,7 +88,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -114,7 +114,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -134,7 +134,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -153,7 +153,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -181,7 +181,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_With_Params_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -209,7 +209,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -228,7 +228,7 @@ namespace Umbraco.Tests.Persistence.Repositories const string content = "/// "; // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -261,7 +261,7 @@ namespace Umbraco.Tests.Persistence.Repositories { // unless noted otherwise, no changes / 7.2.8 - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); diff --git a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs index d468d21010..f85da11da7 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Add_On_Repository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var repository = CreateRepository(provider); @@ -44,7 +44,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Multiple_Adds_On_Repository() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var repository = CreateRepository(provider); @@ -74,7 +74,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -104,7 +104,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Append_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -143,7 +143,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Replace_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -185,7 +185,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Merge_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -225,7 +225,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Clear_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -261,7 +261,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Remove_Specific_Tags_From_Property() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -305,7 +305,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_By_Id() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -349,7 +349,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_By_Key() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -394,7 +394,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -429,7 +429,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_With_Ids() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -469,7 +469,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_For_Group() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -513,7 +513,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_By_Id() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -557,7 +557,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_By_Key() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -601,7 +601,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_For_Group() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -646,7 +646,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Entity_Type() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -703,7 +703,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Entity_Type_For_Group() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -755,7 +755,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Cascade_Deletes_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -791,7 +791,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tagged_Entities_For_Tag_Group() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -871,7 +871,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tagged_Entities_For_Tag() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); diff --git a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs index ac80352618..133266969e 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs @@ -86,7 +86,7 @@ namespace Umbraco.Tests.Persistence.Repositories var mt = MockedContentTypes.CreateSimpleMediaType("testmedia", "TestMedia"); // Arrange - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var userRepository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs b/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs index 02ad6b3971..5e2cf0b82a 100644 --- a/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs +++ b/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs @@ -13,7 +13,7 @@ namespace Umbraco.Tests.Persistence [Test] public void ReadLockNonExisting() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); Assert.Throws(() => { using (var scope = provider.CreateScope()) @@ -27,7 +27,7 @@ namespace Umbraco.Tests.Persistence [Test] public void ReadLockExisting() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { scope.ReadLock(Constants.Locks.Servers); @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Persistence [Test] public void WriteLockNonExisting() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); Assert.Throws(() => { using (var scope = provider.CreateScope()) @@ -52,7 +52,7 @@ namespace Umbraco.Tests.Persistence [Test] public void WriteLockExisting() { - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { scope.WriteLock(Constants.Locks.Servers); diff --git a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs index be609f9a83..aff55de4df 100644 --- a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -74,7 +75,7 @@ namespace Umbraco.Tests.Scoping DoThing1 += (sender, args) => { counter1++; if (cancel) args.Cancel = true; }; DoThing2 += (sender, args) => { counter2++; }; - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: passive ? new PassiveEventDispatcher() : null)) { var cancelled = scope.Events.DispatchCancelable(DoThing1, this, new SaveEventArgs("test")); @@ -103,7 +104,7 @@ namespace Umbraco.Tests.Scoping DoThing2 += OnDoThingFail; DoThing3 += OnDoThingFail; - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoThing1, this, new SaveEventArgs("test")); @@ -145,7 +146,7 @@ namespace Umbraco.Tests.Scoping var content3 = MockedContent.CreateBasicContent(contentType); content3.Id = 789; - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { @@ -184,7 +185,7 @@ namespace Umbraco.Tests.Scoping var contentService = Mock.Of(); var content = Mock.Of(); - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(Test_Unpublished, contentService, new PublishEventArgs(new [] { content }), "Unpublished"); @@ -218,7 +219,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content3.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -258,7 +259,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content1.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -291,7 +292,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content3.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -315,7 +316,7 @@ namespace Umbraco.Tests.Scoping DoThing2 += OnDoThingFail; DoThing3 += OnDoThingFail; - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoThing1, this, new SaveEventArgs("test")); @@ -341,7 +342,7 @@ namespace Umbraco.Tests.Scoping IScopeContext ambientContext = null; Guid value = Guid.Empty; - var scopeProvider = _testObjects.GetScopeProvider(Mock.Of()) as ScopeProvider; + var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()) as ScopeProvider; DoThing1 += (sender, args) => { counter++; }; DoThing2 += (sender, args) => { counter++; }; diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index c5c054248f..6e69c8b18e 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -179,7 +179,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 100); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -208,7 +208,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 1000); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -235,7 +235,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 100); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -265,7 +265,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 1000); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); diff --git a/src/Umbraco.Tests/Services/MacroServiceTests.cs b/src/Umbraco.Tests/Services/MacroServiceTests.cs index d09e43cf44..0b1527fe74 100644 --- a/src/Umbraco.Tests/Services/MacroServiceTests.cs +++ b/src/Umbraco.Tests/Services/MacroServiceTests.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Services { base.CreateTestData(); - var provider = TestObjects.GetScopeProvider(Logger); + var provider = TestObjects.GetScopeProvider(LoggerFactory_); using (var scope = provider.CreateScope()) { var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of>(), ShortStringHelper); diff --git a/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs b/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs index 1b63bcc98d..30c6296eff 100644 --- a/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs +++ b/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs @@ -9,7 +9,6 @@ using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.SqlSyntax; @@ -46,7 +45,7 @@ namespace Umbraco.Tests.TestHelpers // can create a database - but don't try to use it! if (configured && canConnect) - databaseFactoryMock.Setup(x => x.CreateDatabase()).Returns(GetUmbracoSqlCeDatabase(Mock.Of())); + databaseFactoryMock.Setup(x => x.CreateDatabase()).Returns(GetUmbracoSqlCeDatabase(Mock.Of>())); return databaseFactoryMock.Object; } diff --git a/src/Umbraco.Tests/TestHelpers/TestObjects.cs b/src/Umbraco.Tests/TestHelpers/TestObjects.cs index c4e1cf4274..58c80671f5 100644 --- a/src/Umbraco.Tests/TestHelpers/TestObjects.cs +++ b/src/Umbraco.Tests/TestHelpers/TestObjects.cs @@ -1,4 +1,5 @@ using System; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using Umbraco.Core; @@ -6,7 +7,6 @@ using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; using Umbraco.Core.Persistence.SqlSyntax; @@ -35,7 +35,7 @@ namespace Umbraco.Tests.TestHelpers /// An UmbracoDatabase. /// This is just a void database that has no actual database but pretends to have an open connection /// that can begin a transaction. - public UmbracoDatabase GetUmbracoSqlCeDatabase(ILogger logger) + public UmbracoDatabase GetUmbracoSqlCeDatabase(ILogger logger) { var syntax = new SqlCeSyntaxProvider(); var connection = GetDbConnection(); @@ -50,7 +50,7 @@ namespace Umbraco.Tests.TestHelpers /// An UmbracoDatabase. /// This is just a void database that has no actual database but pretends to have an open connection /// that can begin a transaction. - public UmbracoDatabase GetUmbracoSqlServerDatabase(ILogger logger) + public UmbracoDatabase GetUmbracoSqlServerDatabase(ILogger logger) { var syntax = new SqlServerSyntaxProvider(); // do NOT try to get the server's version! var connection = GetDbConnection(); @@ -70,7 +70,7 @@ namespace Umbraco.Tests.TestHelpers return container?.TryGetInstance() ?? Mock.Of(); } - public IScopeProvider GetScopeProvider(ILogger logger, ITypeFinder typeFinder = null, FileSystems fileSystems = null, IUmbracoDatabaseFactory databaseFactory = null) + public IScopeProvider GetScopeProvider(ILoggerFactory loggerFactory, ITypeFinder typeFinder = null, FileSystems fileSystems = null, IUmbracoDatabaseFactory databaseFactory = null) { if (databaseFactory == null) { @@ -78,7 +78,8 @@ namespace Umbraco.Tests.TestHelpers // mappersBuilder.AddCore(); // var mappers = mappersBuilder.CreateCollection(); var mappers = Current.Factory.GetInstance(); - databaseFactory = new UmbracoDatabaseFactory(logger, + databaseFactory = new UmbracoDatabaseFactory(loggerFactory.CreateLogger(), + loggerFactory, SettingsForTests.DefaultGlobalSettings, new ConnectionStrings(), Constants.System.UmbracoConnectionName, @@ -86,11 +87,11 @@ namespace Umbraco.Tests.TestHelpers TestHelper.DbProviderFactoryCreator); } - typeFinder ??= new TypeFinder(logger, new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); - fileSystems ??= new FileSystems(Current.Factory, logger, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); + typeFinder ??= new TypeFinder(loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + fileSystems ??= new FileSystems(Current.Factory, loggerFactory.CreateLogger(), TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = TestHelper.CoreDebugSettings; var mediaFileSystem = Mock.Of(); - var scopeProvider = new ScopeProvider(databaseFactory, fileSystems, coreDebug, mediaFileSystem, logger, typeFinder, NoAppCache.Instance); + var scopeProvider = new ScopeProvider(databaseFactory, fileSystems, coreDebug, mediaFileSystem, loggerFactory.CreateLogger(), typeFinder, NoAppCache.Instance); return scopeProvider; } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index fc9dd521d0..e862f5f83b 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -508,7 +508,7 @@ namespace Umbraco.Tests.Testing Composition.WithCollectionBuilder(); // empty Composition.RegisterUnique(factory - => TestObjects.GetScopeProvider(factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance())); + => TestObjects.GetScopeProvider(factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance())); Composition.RegisterUnique(factory => (IScopeAccessor) factory.GetInstance()); Composition.ComposeServices(); diff --git a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs index 711676f8c1..c13c9abc2d 100644 --- a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs @@ -3,6 +3,7 @@ using System.Globalization; using System.Linq; using System.Web.Mvc; using System.Web.Routing; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -414,7 +415,7 @@ namespace Umbraco.Tests.Web.Mvc var cache = NoAppCache.Instance; //var provider = new ScopeUnitOfWorkProvider(databaseFactory, new RepositoryFactory(Mock.Of())); - var scopeProvider = TestObjects.GetScopeProvider(Mock.Of()); + var scopeProvider = TestObjects.GetScopeProvider(NullLoggerFactory.Instance); var factory = Mock.Of(); var umbracoContextAccessor = Mock.Of(); _service = new XmlPublishedSnapshotService(svcCtx, factory, scopeProvider, cache, From 4b254a02a844706a101e50c82618d29d595ab4f9 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 11:35:29 +0200 Subject: [PATCH 30/85] Use MS Ilogger for FileSystem --- src/Umbraco.Core/IO/FileSystems.cs | 30 +++++----- src/Umbraco.Core/IO/PhysicalFileSystem.cs | 8 +-- src/Umbraco.Core/IO/ShadowWrapper.cs | 10 ++-- .../CompositionExtensions/FileSystems.cs | 6 +- src/Umbraco.Infrastructure/Scoping/Scope.cs | 10 ++-- .../Scoping/ScopeProvider.cs | 16 +++--- .../Repositories/TemplateRepositoryTest.cs | 4 +- .../Components/ComponentTests.cs | 6 +- .../IO/PhysicalFileSystemTests.cs | 4 +- src/Umbraco.Tests/IO/ShadowFileSystemTests.cs | 55 ++++++++++--------- .../PartialViewRepositoryTests.cs | 3 +- .../Repositories/ScriptRepositoryTest.cs | 3 +- .../Repositories/StylesheetRepositoryTest.cs | 3 +- .../Scoping/ScopeEventDispatcherTests.cs | 3 +- .../Scoping/ScopeFileSystemsTests.cs | 6 +- src/Umbraco.Tests/TestHelpers/TestObjects.cs | 4 +- .../Controllers/BackOfficeAssetsController.cs | 6 +- .../Runtime/BackOfficeComposer.cs | 4 +- 18 files changed, 95 insertions(+), 86 deletions(-) diff --git a/src/Umbraco.Core/IO/FileSystems.cs b/src/Umbraco.Core/IO/FileSystems.cs index acb0f2c895..0e5d0695dd 100644 --- a/src/Umbraco.Core/IO/FileSystems.cs +++ b/src/Umbraco.Core/IO/FileSystems.cs @@ -2,7 +2,7 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Threading; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; @@ -12,7 +12,8 @@ namespace Umbraco.Core.IO public class FileSystems : IFileSystems { private readonly IFactory _container; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IIOHelper _ioHelper; private readonly ConcurrentDictionary> _filesystems = new ConcurrentDictionary>(); @@ -36,10 +37,11 @@ namespace Umbraco.Core.IO #region Constructor // DI wants a public ctor - public FileSystems(IFactory container, ILogger logger, IIOHelper ioHelper, IGlobalSettings globalSettings, IHostingEnvironment hostingEnvironment) + public FileSystems(IFactory container, ILogger logger, ILoggerFactory loggerFactory, IIOHelper ioHelper, IGlobalSettings globalSettings, IHostingEnvironment hostingEnvironment) { _container = container; _logger = logger; + _loggerFactory = loggerFactory; _ioHelper = ioHelper; _globalSettings = globalSettings; _hostingEnvironment = hostingEnvironment; @@ -126,17 +128,17 @@ namespace Umbraco.Core.IO // but it does not really matter what we return - here, null private object CreateWellKnownFileSystems() { - var macroPartialFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, Constants.SystemDirectories.MacroPartials); - var partialViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, Constants.SystemDirectories.PartialViews); - var stylesheetsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, _globalSettings.UmbracoCssPath); - var scriptsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, _globalSettings.UmbracoScriptsPath); - var mvcViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, Constants.SystemDirectories.MvcViews); + var macroPartialFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.MacroPartials); + var partialViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.PartialViews); + var stylesheetsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), _globalSettings.UmbracoCssPath); + var scriptsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), _globalSettings.UmbracoScriptsPath); + var mvcViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); - _macroPartialFileSystem = new ShadowWrapper(macroPartialFileSystem, _ioHelper, _hostingEnvironment, _logger,"macro-partials", IsScoped); - _partialViewsFileSystem = new ShadowWrapper(partialViewsFileSystem, _ioHelper, _hostingEnvironment, _logger,"partials", IsScoped); - _stylesheetsFileSystem = new ShadowWrapper(stylesheetsFileSystem, _ioHelper, _hostingEnvironment,_logger,"css", IsScoped); - _scriptsFileSystem = new ShadowWrapper(scriptsFileSystem, _ioHelper, _hostingEnvironment,_logger,"scripts", IsScoped); - _mvcViewsFileSystem = new ShadowWrapper(mvcViewsFileSystem, _ioHelper, _hostingEnvironment,_logger,"views", IsScoped); + _macroPartialFileSystem = new ShadowWrapper(macroPartialFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"macro-partials", IsScoped); + _partialViewsFileSystem = new ShadowWrapper(partialViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"partials", IsScoped); + _stylesheetsFileSystem = new ShadowWrapper(stylesheetsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"css", IsScoped); + _scriptsFileSystem = new ShadowWrapper(scriptsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"scripts", IsScoped); + _mvcViewsFileSystem = new ShadowWrapper(mvcViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"views", IsScoped); // TODO: do we need a lock here? _shadowWrappers.Add(_macroPartialFileSystem); @@ -277,7 +279,7 @@ namespace Umbraco.Core.IO { lock (_shadowLocker) { - var wrapper = new ShadowWrapper(filesystem, _ioHelper, _hostingEnvironment, _logger, shadowPath, IsScoped); + var wrapper = new ShadowWrapper(filesystem, _ioHelper, _hostingEnvironment, _loggerFactory, shadowPath, IsScoped); if (_shadowCurrentId != null) wrapper.Shadow(_shadowCurrentId); _shadowWrappers.Add(wrapper); diff --git a/src/Umbraco.Core/IO/PhysicalFileSystem.cs b/src/Umbraco.Core/IO/PhysicalFileSystem.cs index 105ddf056c..04e3df6ab3 100644 --- a/src/Umbraco.Core/IO/PhysicalFileSystem.cs +++ b/src/Umbraco.Core/IO/PhysicalFileSystem.cs @@ -2,18 +2,18 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Exceptions; using Umbraco.Core.Composing; using System.Threading; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; namespace Umbraco.Core.IO { public class PhysicalFileSystem : IFileSystem { private readonly IIOHelper _ioHelper; - private readonly ILogger _logger; + private readonly ILogger _logger; // the rooted, filesystem path, using directory separator chars, NOT ending with a separator // eg "c:" or "c:\path\to\site" or "\\server\path" @@ -30,7 +30,7 @@ namespace Umbraco.Core.IO // virtualRoot should be "~/path/to/root" eg "~/Views" // the "~/" is mandatory. - public PhysicalFileSystem(IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILogger logger, string virtualRoot) + public PhysicalFileSystem(IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILogger logger, string virtualRoot) { _ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper)); if (hostingEnvironment == null) throw new ArgumentNullException(nameof(hostingEnvironment)); @@ -45,7 +45,7 @@ namespace Umbraco.Core.IO _rootUrl = EnsureUrlSeparatorChar(hostingEnvironment.ToAbsolute(virtualRoot)).TrimEnd('/'); } - public PhysicalFileSystem(IIOHelper ioHelper,IHostingEnvironment hostingEnvironment, ILogger logger, string rootPath, string rootUrl) + public PhysicalFileSystem(IIOHelper ioHelper,IHostingEnvironment hostingEnvironment, ILogger logger, string rootPath, string rootUrl) { _ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Core/IO/ShadowWrapper.cs b/src/Umbraco.Core/IO/ShadowWrapper.cs index 7ddd6a48b7..83fe5aafe7 100644 --- a/src/Umbraco.Core/IO/ShadowWrapper.cs +++ b/src/Umbraco.Core/IO/ShadowWrapper.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; namespace Umbraco.Core.IO { @@ -19,14 +19,14 @@ namespace Umbraco.Core.IO private string _shadowDir; private readonly IIOHelper _ioHelper; private readonly IHostingEnvironment _hostingEnvironment; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; - public ShadowWrapper(IFileSystem innerFileSystem, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILogger logger, string shadowPath, Func isScoped = null) + public ShadowWrapper(IFileSystem innerFileSystem, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory, string shadowPath, Func isScoped = null) { _innerFileSystem = innerFileSystem; _ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper)); _hostingEnvironment = hostingEnvironment ?? throw new ArgumentNullException(nameof(hostingEnvironment)); - _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory; _shadowPath = shadowPath; _isScoped = isScoped; } @@ -66,7 +66,7 @@ namespace Umbraco.Core.IO var virt = ShadowFsPath + "/" + id + "/" + _shadowPath; _shadowDir = _ioHelper.MapPath(virt); Directory.CreateDirectory(_shadowDir); - var tempfs = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _logger, virt); + var tempfs = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), virt); _shadowFileSystem = new ShadowFileSystem(_innerFileSystem, tempfs); } diff --git a/src/Umbraco.Infrastructure/Composing/CompositionExtensions/FileSystems.cs b/src/Umbraco.Infrastructure/Composing/CompositionExtensions/FileSystems.cs index 9dc130fcba..98dd585981 100644 --- a/src/Umbraco.Infrastructure/Composing/CompositionExtensions/FileSystems.cs +++ b/src/Umbraco.Infrastructure/Composing/CompositionExtensions/FileSystems.cs @@ -1,8 +1,8 @@ -using Umbraco.Core.Configuration; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.IO.MediaPathSchemes; -using Umbraco.Core.Logging; namespace Umbraco.Core.Composing.CompositionExtensions { @@ -96,7 +96,7 @@ namespace Umbraco.Core.Composing.CompositionExtensions { var ioHelper = factory.GetInstance(); var hostingEnvironment = factory.GetInstance(); - var logger = factory.GetInstance(); + var logger = factory.GetInstance>(); var globalSettings = factory.GetInstance(); var rootPath = hostingEnvironment.MapPathWebRoot(globalSettings.UmbracoMediaPath); diff --git a/src/Umbraco.Infrastructure/Scoping/Scope.cs b/src/Umbraco.Infrastructure/Scoping/Scope.cs index d1f60666b9..d22e6b0de8 100644 --- a/src/Umbraco.Infrastructure/Scoping/Scope.cs +++ b/src/Umbraco.Infrastructure/Scoping/Scope.cs @@ -1,11 +1,11 @@ using System; using System.Data; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Events; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; namespace Umbraco.Core.Scoping @@ -19,7 +19,7 @@ namespace Umbraco.Core.Scoping private readonly ScopeProvider _scopeProvider; private readonly ICoreDebugSettings _coreDebugSettings; private readonly IMediaFileSystem _mediaFileSystem; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ITypeFinder _typeFinder; private readonly IsolationLevel _isolationLevel; @@ -41,7 +41,7 @@ namespace Umbraco.Core.Scoping private Scope(ScopeProvider scopeProvider, ICoreDebugSettings coreDebugSettings, IMediaFileSystem mediaFileSystem, - ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, Scope parent, IScopeContext scopeContext, bool detachable, + ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, Scope parent, IScopeContext scopeContext, bool detachable, IsolationLevel isolationLevel = IsolationLevel.Unspecified, RepositoryCacheMode repositoryCacheMode = RepositoryCacheMode.Unspecified, IEventDispatcher eventDispatcher = null, @@ -120,7 +120,7 @@ namespace Umbraco.Core.Scoping public Scope(ScopeProvider scopeProvider, ICoreDebugSettings coreDebugSettings, IMediaFileSystem mediaFileSystem, - ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, bool detachable, IScopeContext scopeContext, + ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, bool detachable, IScopeContext scopeContext, IsolationLevel isolationLevel = IsolationLevel.Unspecified, RepositoryCacheMode repositoryCacheMode = RepositoryCacheMode.Unspecified, IEventDispatcher eventDispatcher = null, @@ -134,7 +134,7 @@ namespace Umbraco.Core.Scoping public Scope(ScopeProvider scopeProvider, ICoreDebugSettings coreDebugSettings, IMediaFileSystem mediaFileSystem, - ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, Scope parent, + ILogger logger, ITypeFinder typeFinder, FileSystems fileSystems, Scope parent, IsolationLevel isolationLevel = IsolationLevel.Unspecified, RepositoryCacheMode repositoryCacheMode = RepositoryCacheMode.Unspecified, IEventDispatcher eventDispatcher = null, diff --git a/src/Umbraco.Infrastructure/Scoping/ScopeProvider.cs b/src/Umbraco.Infrastructure/Scoping/ScopeProvider.cs index 610f308b96..f11ec145e0 100644 --- a/src/Umbraco.Infrastructure/Scoping/ScopeProvider.cs +++ b/src/Umbraco.Infrastructure/Scoping/ScopeProvider.cs @@ -1,12 +1,12 @@ using System; using System.Collections.Generic; using System.Data; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Events; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Current = Umbraco.Composing.Current; @@ -22,20 +22,22 @@ namespace Umbraco.Core.Scoping /// internal class ScopeProvider : IScopeProvider, IScopeAccessor { - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly ITypeFinder _typeFinder; private readonly IRequestCache _requestCache; private readonly FileSystems _fileSystems; private readonly ICoreDebugSettings _coreDebugSettings; private readonly IMediaFileSystem _mediaFileSystem; - public ScopeProvider(IUmbracoDatabaseFactory databaseFactory, FileSystems fileSystems, ICoreDebugSettings coreDebugSettings, IMediaFileSystem mediaFileSystem, ILogger logger, ITypeFinder typeFinder, IRequestCache requestCache) + public ScopeProvider(IUmbracoDatabaseFactory databaseFactory, FileSystems fileSystems, ICoreDebugSettings coreDebugSettings, IMediaFileSystem mediaFileSystem, ILogger logger, ILoggerFactory loggerFactory, ITypeFinder typeFinder, IRequestCache requestCache) { DatabaseFactory = databaseFactory; _fileSystems = fileSystems; _coreDebugSettings = coreDebugSettings; _mediaFileSystem = mediaFileSystem; _logger = logger; + _loggerFactory = loggerFactory; _typeFinder = typeFinder; _requestCache = requestCache; // take control of the FileSystems @@ -93,7 +95,7 @@ namespace Umbraco.Core.Scoping { // first, null-register the existing value var ambientScope = CallContext.GetData(ScopeItemKey); - + if (ambientScope != null) RegisterContext(ambientScope, null); // then register the new value var scope = value as IScope; @@ -255,7 +257,7 @@ namespace Umbraco.Core.Scoping IEventDispatcher eventDispatcher = null, bool? scopeFileSystems = null) { - return new Scope(this, _coreDebugSettings, _mediaFileSystem, _logger, _typeFinder, _fileSystems, true, null, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems); + return new Scope(this, _coreDebugSettings, _mediaFileSystem, _loggerFactory.CreateLogger(), _typeFinder, _fileSystems, true, null, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems); } /// @@ -311,13 +313,13 @@ namespace Umbraco.Core.Scoping { var ambientContext = AmbientContext; var newContext = ambientContext == null ? new ScopeContext() : null; - var scope = new Scope(this, _coreDebugSettings, _mediaFileSystem, _logger, _typeFinder, _fileSystems, false, newContext, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems, callContext, autoComplete); + var scope = new Scope(this, _coreDebugSettings, _mediaFileSystem, _loggerFactory.CreateLogger(), _typeFinder, _fileSystems, false, newContext, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems, callContext, autoComplete); // assign only if scope creation did not throw! SetAmbient(scope, newContext ?? ambientContext); return scope; } - var nested = new Scope(this, _coreDebugSettings, _mediaFileSystem, _logger, _typeFinder, _fileSystems, ambientScope, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems, callContext, autoComplete); + var nested = new Scope(this, _coreDebugSettings, _mediaFileSystem, _loggerFactory.CreateLogger(), _typeFinder, _fileSystems, ambientScope, isolationLevel, repositoryCacheMode, eventDispatcher, scopeFileSystems, callContext, autoComplete); SetAmbient(nested, AmbientContext); return nested; } diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs index 3e11bbb72f..67ea60788c 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { var testHelper = new TestHelper(); _fileSystems = Mock.Of(); - var viewsFileSystem = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), Logger, Constants.SystemDirectories.MvcViews); + var viewsFileSystem = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), ConsoleLoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); Mock.Get(_fileSystems).Setup(x => x.MvcViewsFileSystem).Returns(viewsFileSystem); } @@ -570,7 +570,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories _fileSystems = null; //Delete all files - var fsViews = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), Logger, Constants.SystemDirectories.MvcViews); + var fsViews = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), ConsoleLoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); var views = fsViews.GetFiles("", "*.cshtml"); foreach (var file in views) fsViews.DeleteFile(file); diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index 5dc8dd801d..5772657f11 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -34,13 +35,12 @@ namespace Umbraco.Tests.Components var mock = new Mock(); var logger = Mock.Of(); - var umbLogger = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); var f = new UmbracoDatabaseFactory(Mock.Of>(), Mock.Of(), SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); - var fs = new FileSystems(mock.Object, umbLogger, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); + var fs = new FileSystems(mock.Object, Mock.Of>(), NullLoggerFactory.Instance, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = Mock.Of(); var mediaFileSystem = Mock.Of(); - var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, umbLogger, typeFinder, NoAppCache.Instance); + var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, Mock.Of>(), Mock.Of(), typeFinder, NoAppCache.Instance); mock.Setup(x => x.GetInstance(typeof (ILogger))).Returns(logger); mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); diff --git a/src/Umbraco.Tests/IO/PhysicalFileSystemTests.cs b/src/Umbraco.Tests/IO/PhysicalFileSystemTests.cs index f1e705c9cb..bd26bbcc66 100644 --- a/src/Umbraco.Tests/IO/PhysicalFileSystemTests.cs +++ b/src/Umbraco.Tests/IO/PhysicalFileSystemTests.cs @@ -2,10 +2,10 @@ using System.IO; using System.Text; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; @@ -16,7 +16,7 @@ namespace Umbraco.Tests.IO public class PhysicalFileSystemTests : AbstractFileSystemTests { public PhysicalFileSystemTests() - : base(new PhysicalFileSystem(TestHelper.IOHelper, TestHelper.GetHostingEnvironment(), Mock.Of(), Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "FileSysTests"), "/Media/")) + : base(new PhysicalFileSystem(TestHelper.IOHelper, TestHelper.GetHostingEnvironment(), Mock.Of>(), Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "FileSysTests"), "/Media/")) { } [SetUp] diff --git a/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs b/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs index 07a04479a4..e9f2a307f8 100644 --- a/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs +++ b/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs @@ -3,12 +3,13 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Scoping; using Umbraco.Tests.TestHelpers; @@ -53,7 +54,7 @@ namespace Umbraco.Tests.IO public void ShadowDeleteDirectory() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -91,7 +92,7 @@ namespace Umbraco.Tests.IO public void ShadowDeleteDirectoryInDir() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -144,7 +145,7 @@ namespace Umbraco.Tests.IO public void ShadowDeleteFile() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -187,7 +188,7 @@ namespace Umbraco.Tests.IO public void ShadowDeleteFileInDir() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -247,7 +248,7 @@ namespace Umbraco.Tests.IO public void ShadowCantCreateFile() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -270,7 +271,7 @@ namespace Umbraco.Tests.IO public void ShadowCreateFile() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -313,7 +314,7 @@ namespace Umbraco.Tests.IO public void ShadowCreateFileInDir() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -357,7 +358,7 @@ namespace Umbraco.Tests.IO public void ShadowAbort() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -383,7 +384,7 @@ namespace Umbraco.Tests.IO public void ShadowComplete() { var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -422,7 +423,7 @@ namespace Umbraco.Tests.IO [Test] public void ShadowScopeComplete() { - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var ioHelper = TestHelper.IOHelper; var hostingEnvironment = TestHelper.GetHostingEnvironment(); @@ -433,10 +434,10 @@ namespace Umbraco.Tests.IO var scopedFileSystems = false; - var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, logger, path, "ignore"); + var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, loggerFactory.CreateLogger(), path, "ignore"); var container = Mock.Of(); - var fileSystems = new FileSystems(container, logger, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; + var fileSystems = new FileSystems(container, loggerFactory.CreateLogger(), loggerFactory, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; var fs = fileSystems.GetFileSystem(phy); var sw = (ShadowWrapper) fs.InnerFileSystem; @@ -519,7 +520,7 @@ namespace Umbraco.Tests.IO [Test] public void ShadowScopeCompleteWithFileConflict() { - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var ioHelper = TestHelper.IOHelper; var hostingEnvironment = TestHelper.GetHostingEnvironment(); @@ -529,10 +530,10 @@ namespace Umbraco.Tests.IO var scopedFileSystems = false; - var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, logger, path, "ignore"); + var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, loggerFactory.CreateLogger(), path, "ignore"); var container = Mock.Of(); - var fileSystems = new FileSystems(container, logger, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; + var fileSystems = new FileSystems(container, loggerFactory.CreateLogger(), loggerFactory, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; var fs = fileSystems.GetFileSystem( phy); var sw = (ShadowWrapper) fs.InnerFileSystem; @@ -574,7 +575,7 @@ namespace Umbraco.Tests.IO [Test] public void ShadowScopeCompleteWithDirectoryConflict() { - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var ioHelper = TestHelper.IOHelper; var hostingEnvironment = TestHelper.GetHostingEnvironment(); @@ -584,10 +585,10 @@ namespace Umbraco.Tests.IO var scopedFileSystems = false; - var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, logger, path, "ignore"); + var phy = new PhysicalFileSystem(ioHelper, hostingEnvironment, loggerFactory.CreateLogger(), path, "ignore"); var container = Mock.Of(); - var fileSystems = new FileSystems(container, logger, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; + var fileSystems = new FileSystems(container, loggerFactory.CreateLogger(), loggerFactory, ioHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()) { IsScoped = () => scopedFileSystems }; var fs = fileSystems.GetFileSystem( phy); var sw = (ShadowWrapper)fs.InnerFileSystem; @@ -694,7 +695,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -730,7 +731,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -769,7 +770,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -805,7 +806,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -844,7 +845,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -895,7 +896,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -933,7 +934,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); @@ -976,7 +977,7 @@ namespace Umbraco.Tests.IO { // Arrange var ioHelper = TestHelper.IOHelper; - var logger = Mock.Of(); + var logger = Mock.Of>(); var hostingEnvironment = TestHelper.GetHostingEnvironment(); var path = ioHelper.MapPath("FileSysTests"); diff --git a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs index 618723fdf7..e50de3190b 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs @@ -1,4 +1,5 @@ using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -23,7 +24,7 @@ namespace Umbraco.Tests.Persistence.Repositories { base.SetUp(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Logger, Constants.SystemDirectories.MvcViews + "/Partials/"); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), Constants.SystemDirectories.MvcViews + "/Partials/"); } protected override void Compose() diff --git a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs index 0a33c0af0b..8a060a4ba2 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs @@ -2,6 +2,7 @@ using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -30,7 +31,7 @@ namespace Umbraco.Tests.Persistence.Repositories base.SetUp(); _fileSystems = Mock.Of(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Logger, SettingsForTests.GenerateMockGlobalSettings().UmbracoScriptsPath); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), SettingsForTests.GenerateMockGlobalSettings().UmbracoScriptsPath); Mock.Get(_fileSystems).Setup(x => x.ScriptsFileSystem).Returns(_fileSystem); using (var stream = CreateStream("Umbraco.Sys.registerNamespace(\"Umbraco.Utils\");")) { diff --git a/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs index f4558dca2d..298f3eb278 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs @@ -3,6 +3,7 @@ using System.Data; using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -29,7 +30,7 @@ namespace Umbraco.Tests.Persistence.Repositories base.SetUp(); _fileSystems = Mock.Of(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Logger, SettingsForTests.GenerateMockGlobalSettings().UmbracoCssPath); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), SettingsForTests.GenerateMockGlobalSettings().UmbracoCssPath); Mock.Get(_fileSystems).Setup(x => x.StylesheetsFileSystem).Returns(_fileSystem); var stream = CreateStream("body {background:#EE7600; color:#FFF;}"); _fileSystem.AddFile("styles.css", stream); diff --git a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs index aff55de4df..f31158b319 100644 --- a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using Microsoft.Extensions.Logging.Abstractions; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -39,7 +40,7 @@ namespace Umbraco.Tests.Scoping _testObjects = new TestObjects(register); - composition.RegisterUnique(factory => new FileSystems(factory, factory.TryGetInstance(), TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment())); + composition.RegisterUnique(factory => new FileSystems(factory, factory.TryGetInstance>(), factory.TryGetInstance(), TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment())); composition.WithCollectionBuilder(); composition.Configs.Add(() => SettingsForTests.DefaultGlobalSettings); diff --git a/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs b/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs index 2e2ebf392c..8c98bc99ff 100644 --- a/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs @@ -1,6 +1,7 @@ using System; using System.IO; using System.Text; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -9,7 +10,6 @@ using Umbraco.Core.IO; using Umbraco.Tests.TestHelpers; using Umbraco.Tests.Testing; using Umbraco.Core.Composing.CompositionExtensions; -using Umbraco.Core.Logging; using FileSystems = Umbraco.Core.IO.FileSystems; namespace Umbraco.Tests.Scoping @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void CreateMediaTest(bool complete) { - var physMediaFileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Mock.Of(), IOHelper.MapPath("media"), "ignore"); + var physMediaFileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Mock.Of>(), IOHelper.MapPath("media"), "ignore"); var mediaFileSystem = Current.MediaFileSystem; Assert.IsFalse(physMediaFileSystem.FileExists("f1.txt")); @@ -88,7 +88,7 @@ namespace Umbraco.Tests.Scoping [Test] public void MultiThread() { - var physMediaFileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Mock.Of(),IOHelper.MapPath("media"), "ignore"); + var physMediaFileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, Mock.Of>(),IOHelper.MapPath("media"), "ignore"); var mediaFileSystem = Current.MediaFileSystem; var scopeProvider = ScopeProvider; diff --git a/src/Umbraco.Tests/TestHelpers/TestObjects.cs b/src/Umbraco.Tests/TestHelpers/TestObjects.cs index 58c80671f5..ac2c59e2b8 100644 --- a/src/Umbraco.Tests/TestHelpers/TestObjects.cs +++ b/src/Umbraco.Tests/TestHelpers/TestObjects.cs @@ -88,10 +88,10 @@ namespace Umbraco.Tests.TestHelpers } typeFinder ??= new TypeFinder(loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); - fileSystems ??= new FileSystems(Current.Factory, loggerFactory.CreateLogger(), TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); + fileSystems ??= new FileSystems(Current.Factory, loggerFactory.CreateLogger(), loggerFactory, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = TestHelper.CoreDebugSettings; var mediaFileSystem = Mock.Of(); - var scopeProvider = new ScopeProvider(databaseFactory, fileSystems, coreDebug, mediaFileSystem, loggerFactory.CreateLogger(), typeFinder, NoAppCache.Instance); + var scopeProvider = new ScopeProvider(databaseFactory, fileSystems, coreDebug, mediaFileSystem, loggerFactory.CreateLogger(), loggerFactory, typeFinder, NoAppCache.Instance); return scopeProvider; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeAssetsController.cs b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeAssetsController.cs index 7cbeb8e86e..7d336f29d7 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeAssetsController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeAssetsController.cs @@ -2,12 +2,12 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Microsoft.AspNetCore.Mvc; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Web.Common.Attributes; namespace Umbraco.Web.BackOffice.Controllers @@ -17,9 +17,9 @@ namespace Umbraco.Web.BackOffice.Controllers { private readonly IFileSystem _jsLibFileSystem; - public BackOfficeAssetsController(IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILogger logger, IGlobalSettings globalSettings) + public BackOfficeAssetsController(IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory, IGlobalSettings globalSettings) { - _jsLibFileSystem = new PhysicalFileSystem(ioHelper, hostingEnvironment, logger, globalSettings.UmbracoPath + Path.DirectorySeparatorChar + "lib"); + _jsLibFileSystem = new PhysicalFileSystem(ioHelper, hostingEnvironment, loggerFactory.CreateLogger(), globalSettings.UmbracoPath + Path.DirectorySeparatorChar + "lib"); } [HttpGet] diff --git a/src/Umbraco.Web.BackOffice/Runtime/BackOfficeComposer.cs b/src/Umbraco.Web.BackOffice/Runtime/BackOfficeComposer.cs index 600602f5b5..648fa6b031 100644 --- a/src/Umbraco.Web.BackOffice/Runtime/BackOfficeComposer.cs +++ b/src/Umbraco.Web.BackOffice/Runtime/BackOfficeComposer.cs @@ -1,9 +1,9 @@ using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Extensions; using Umbraco.Web.BackOffice.Controllers; using Umbraco.Web.BackOffice.Routing; @@ -43,7 +43,7 @@ namespace Umbraco.Web.BackOffice.Runtime new PhysicalFileSystem( factory.GetInstance(), factory.GetInstance(), - factory.GetInstance(), + factory.GetInstance>(), "~/")); } } From c89659c59702e538ea36a5d55ca30a1ef3f04dfd Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 12:52:25 +0200 Subject: [PATCH 31/85] Use MS ILogger in database stuff --- src/Umbraco.Core/Composing/TypeLoader.cs | 3 +- .../Migrations/Install/DatabaseBuilder.cs | 13 ++-- .../Migrations/Install/DatabaseDataCreator.cs | 6 +- .../Install/DatabaseSchemaCreator.cs | 12 +-- .../Runtime/CoreRuntime.cs | 13 ++-- .../Testing/LocalDbTestDatabase.cs | 10 +-- .../Testing/UmbracoIntegrationTest.cs | 17 +++-- .../Migrations/AdvancedMigrationTests.cs | 4 +- .../Persistence/DatabaseContextTests.cs | 6 +- .../Persistence/SchemaValidationTest.cs | 4 +- .../Persistence/SqlCeTableByTableTest.cs | 74 ++++++++++--------- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 2 +- .../TestHelpers/TestWithDatabaseBase.cs | 3 +- .../UmbracoExamine/ExamineBaseTest.cs | 5 +- 14 files changed, 93 insertions(+), 79 deletions(-) diff --git a/src/Umbraco.Core/Composing/TypeLoader.cs b/src/Umbraco.Core/Composing/TypeLoader.cs index 70f565c875..3e814a054a 100644 --- a/src/Umbraco.Core/Composing/TypeLoader.cs +++ b/src/Umbraco.Core/Composing/TypeLoader.cs @@ -1,5 +1,4 @@ - -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index d7672f78fd..f48bba9cf7 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -2,10 +2,10 @@ using System.IO; using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; @@ -26,7 +26,8 @@ namespace Umbraco.Core.Migrations.Install private readonly IMigrationBuilder _migrationBuilder; private readonly IKeyValueService _keyValueService; private readonly IHostingEnvironment _hostingEnvironment; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IUmbracoVersion _umbracoVersion; private readonly IDbProviderFactoryCreator _dbProviderFactoryCreator; private readonly IConfigManipulator _configManipulator; @@ -41,7 +42,8 @@ namespace Umbraco.Core.Migrations.Install IGlobalSettings globalSettings, IUmbracoDatabaseFactory databaseFactory, IRuntimeState runtime, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IMigrationBuilder migrationBuilder, IKeyValueService keyValueService, IHostingEnvironment hostingEnvironment, @@ -54,6 +56,7 @@ namespace Umbraco.Core.Migrations.Install _databaseFactory = databaseFactory; _runtime = runtime; _logger = logger; + _loggerFactory = loggerFactory; _migrationBuilder = migrationBuilder; _keyValueService = keyValueService; _hostingEnvironment = hostingEnvironment; @@ -319,7 +322,7 @@ namespace Umbraco.Core.Migrations.Install return _databaseSchemaValidationResult; var database = scope.Database; - var dbSchema = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, _globalSettings); + var dbSchema = new DatabaseSchemaCreator(database, _loggerFactory.CreateLogger(), _loggerFactory, _umbracoVersion, _globalSettings); _databaseSchemaValidationResult = dbSchema.ValidateSchema(); return _databaseSchemaValidationResult; } @@ -367,7 +370,7 @@ namespace Umbraco.Core.Migrations.Install if (_runtime.Level == RuntimeLevel.Run) throw new Exception("Umbraco is already configured!"); - var creator = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, _globalSettings); + var creator = new DatabaseSchemaCreator(database, _loggerFactory.CreateLogger(), _loggerFactory, _umbracoVersion, _globalSettings); creator.InitializeDatabaseSchema(); message = message + "

Installation completed!

"; diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs index b3ce6292d2..825998c8e4 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs @@ -1,7 +1,7 @@ using System; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; @@ -14,11 +14,11 @@ namespace Umbraco.Core.Migrations.Install internal class DatabaseDataCreator { private readonly IDatabase _database; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; private readonly IGlobalSettings _globalSettings; - public DatabaseDataCreator(IDatabase database, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) + public DatabaseDataCreator(IDatabase database, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) { _database = database; _logger = logger; diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs index 195d02fac3..c601e85479 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using NPoco; using Umbraco.Core.Configuration; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.DatabaseModelDefinitions; using Umbraco.Core.Persistence.Dtos; @@ -18,14 +18,16 @@ namespace Umbraco.Core.Migrations.Install public class DatabaseSchemaCreator { private readonly IUmbracoDatabase _database; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IUmbracoVersion _umbracoVersion; private readonly IGlobalSettings _globalSettings; - public DatabaseSchemaCreator(IUmbracoDatabase database, ILogger logger, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) + public DatabaseSchemaCreator(IUmbracoDatabase database, ILogger logger, ILoggerFactory loggerFactory, IUmbracoVersion umbracoVersion, IGlobalSettings globalSettings) { _database = database; _logger = logger; + _loggerFactory = loggerFactory; _umbracoVersion = umbracoVersion; _globalSettings = globalSettings; } @@ -130,7 +132,7 @@ namespace Umbraco.Core.Migrations.Install if (e.Cancel == false) { - var dataCreation = new DatabaseDataCreator(_database, _logger, _umbracoVersion, _globalSettings); + var dataCreation = new DatabaseDataCreator(_database, _loggerFactory.CreateLogger(), _umbracoVersion, _globalSettings); foreach (var table in OrderedTables) CreateTable(false, table, dataCreation); } @@ -400,7 +402,7 @@ namespace Umbraco.Core.Migrations.Install where T : new() { var tableType = typeof(T); - CreateTable(overwrite, tableType, new DatabaseDataCreator(_database, _logger, _umbracoVersion, _globalSettings)); + CreateTable(overwrite, tableType, new DatabaseDataCreator(_database, _loggerFactory.CreateLogger(), _umbracoVersion, _globalSettings)); } /// diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 0cb22c4560..45a6dc6397 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -28,7 +28,6 @@ namespace Umbraco.Core.Runtime private IFactory _factory; // runtime state, this instance will get replaced again once the essential services are available to run the check private RuntimeState _state = RuntimeState.Booting(); - private readonly ILoggerFactory _loggerFactory; private readonly IUmbracoBootPermissionChecker _umbracoBootPermissionChecker; private readonly IGlobalSettings _globalSettings; private readonly IConnectionStrings _connectionStrings; @@ -57,7 +56,7 @@ namespace Umbraco.Core.Runtime BackOfficeInfo = backOfficeInfo; DbProviderFactoryCreator = dbProviderFactoryCreator; - _loggerFactory = loggerFactory; + RuntimeLoggerFactory = loggerFactory; _umbracoBootPermissionChecker = umbracoBootPermissionChecker; Logger = logger; @@ -74,6 +73,8 @@ namespace Umbraco.Core.Runtime /// public ILogger Logger { get; } + public ILoggerFactory RuntimeLoggerFactory { get; } + protected IBackOfficeInfo BackOfficeInfo { get; } public IDbProviderFactoryCreator DbProviderFactoryCreator { get; } @@ -170,10 +171,10 @@ namespace Umbraco.Core.Runtime var databaseFactory = CreateDatabaseFactory(); // type finder/loader - var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), _loggerFactory.CreateLogger("TypeLoader"), ProfilingLogger); + var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), RuntimeLoggerFactory.CreateLogger("TypeLoader"), ProfilingLogger); // re-create the state object with the essential services - _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, _loggerFactory.CreateLogger()); + _state = new RuntimeState(Configs.Global(), UmbracoVersion, databaseFactory, RuntimeLoggerFactory.CreateLogger()); // create the composition composition = new Composition(register, typeLoader, ProfilingLogger, _state, Configs, IOHelper, AppCaches); @@ -290,7 +291,7 @@ namespace Umbraco.Core.Runtime enableDisableAttributes = typeLoader.GetAssemblyAttributes(typeof(EnableComposerAttribute), typeof(DisableComposerAttribute)); } - var composers = new Composers(composition, composerTypes, enableDisableAttributes, _loggerFactory.CreateLogger("Composers"), ProfilingLogger); + var composers = new Composers(composition, composerTypes, enableDisableAttributes, RuntimeLoggerFactory.CreateLogger("Composers"), ProfilingLogger); composers.Compose(); } @@ -384,7 +385,7 @@ namespace Umbraco.Core.Runtime /// /// This is strictly internal, for tests only. protected internal virtual IUmbracoDatabaseFactory CreateDatabaseFactory() - => new UmbracoDatabaseFactory(_loggerFactory.CreateLogger(), _loggerFactory, _globalSettings, _connectionStrings, new Lazy(() => _factory.GetInstance()), DbProviderFactoryCreator); + => new UmbracoDatabaseFactory(RuntimeLoggerFactory.CreateLogger(), RuntimeLoggerFactory, _globalSettings, _connectionStrings, new Lazy(() => _factory.GetInstance()), DbProviderFactoryCreator); #endregion diff --git a/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs b/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs index 9988362d3b..3d106e2135 100644 --- a/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs +++ b/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs @@ -8,9 +8,9 @@ using System.Diagnostics; using System.IO; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Persistence; @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Integration.Testing public const string InstanceName = "UmbracoTests"; public const string DatabaseName = "UmbracoTests"; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IGlobalSettings _globalSettings; private readonly LocalDb _localDb; private readonly IUmbracoVersion _umbracoVersion; @@ -38,10 +38,10 @@ namespace Umbraco.Tests.Integration.Testing private DatabasePool _currentPool; //It's internal because `Umbraco.Core.Persistence.LocalDb` is internal - internal LocalDbTestDatabase(ILogger logger, IGlobalSettings globalSettings, LocalDb localDb, string filesPath, IUmbracoDatabaseFactory dbFactory) + internal LocalDbTestDatabase(ILoggerFactory loggerFactory, IGlobalSettings globalSettings, LocalDb localDb, string filesPath, IUmbracoDatabaseFactory dbFactory) { _umbracoVersion = new UmbracoVersion(); - _logger = logger; + _loggerFactory = loggerFactory; _globalSettings = globalSettings; _localDb = localDb; _filesPath = filesPath; @@ -130,7 +130,7 @@ namespace Umbraco.Tests.Integration.Testing using var trans = database.GetTransaction(); - var creator = new DatabaseSchemaCreator(database, _logger, _umbracoVersion, _globalSettings); + var creator = new DatabaseSchemaCreator(database, _loggerFactory.CreateLogger(), _loggerFactory, _umbracoVersion, _globalSettings); creator.InitializeDatabaseSchema(); trans.Complete(); // commit it diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 0ee9823add..7ea5d284dc 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -262,7 +262,7 @@ namespace Umbraco.Tests.Integration.Testing OnTestTearDown(() => runtime.Terminate()); // This will create a db, install the schema and ensure the app is configured to run - InstallTestLocalDb(args.DatabaseFactory, runtime.Logger, runtime.Configs.Global(), runtime.State, TestHelper.WorkingDirectory, out var connectionString); + InstallTestLocalDb(args.DatabaseFactory, runtime.RuntimeLoggerFactory, runtime.Configs.Global(), runtime.State, TestHelper.WorkingDirectory, out var connectionString); TestDBConnectionString = connectionString; InMemoryConfiguration["ConnectionStrings:" + Constants.System.UmbracoConnectionName] = TestDBConnectionString; } @@ -272,13 +272,14 @@ namespace Umbraco.Tests.Integration.Testing /// /// /// + /// /// /// /// /// /// There must only be ONE instance shared between all tests in a session /// - private static LocalDbTestDatabase GetOrCreateDatabase(string filesPath, ILogger logger, IGlobalSettings globalSettings, IUmbracoDatabaseFactory dbFactory) + private static LocalDbTestDatabase GetOrCreateDatabase(string filesPath, ILoggerFactory loggerFactory, IGlobalSettings globalSettings, IUmbracoDatabaseFactory dbFactory) { lock (_dbLocker) { @@ -287,7 +288,7 @@ namespace Umbraco.Tests.Integration.Testing var localDb = new LocalDb(); if (localDb.IsAvailable == false) throw new InvalidOperationException("LocalDB is not available."); - _dbInstance = new LocalDbTestDatabase(logger, globalSettings, localDb, filesPath, dbFactory); + _dbInstance = new LocalDbTestDatabase(loggerFactory, globalSettings, localDb, filesPath, dbFactory); return _dbInstance; } } @@ -295,13 +296,15 @@ namespace Umbraco.Tests.Integration.Testing /// /// Creates a LocalDb instance to use for the test /// - /// + /// /// - /// /// + /// + /// + /// /// private void InstallTestLocalDb( - IUmbracoDatabaseFactory databaseFactory, ILogger logger, IGlobalSettings globalSettings, + IUmbracoDatabaseFactory databaseFactory, ILoggerFactory loggerFactory, IGlobalSettings globalSettings, IRuntimeState runtimeState, string workingDirectory, out string connectionString) { connectionString = null; @@ -319,7 +322,7 @@ namespace Umbraco.Tests.Integration.Testing if (!Directory.Exists(dbFilePath)) Directory.CreateDirectory(dbFilePath); - var db = GetOrCreateDatabase(dbFilePath, logger, globalSettings, databaseFactory); + var db = GetOrCreateDatabase(dbFilePath, loggerFactory, globalSettings, databaseFactory); switch (testOptions.Database) { diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 9b55362c67..3682264dfb 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -1,5 +1,7 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core.Logging; @@ -42,7 +44,7 @@ namespace Umbraco.Tests.Migrations upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); - var helper = new DatabaseSchemaCreator(scope.Database, logger, UmbracoVersion, TestObjects.GetGlobalSettings()); + var helper = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion, TestObjects.GetGlobalSettings()); var exists = helper.TableExists("umbracoUser"); Assert.IsTrue(exists); diff --git a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs index 5f78be7701..13d0fc3cc8 100644 --- a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs +++ b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs @@ -4,12 +4,12 @@ using System.Data.SqlServerCe; using System.IO; using System.Threading; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NPoco; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; @@ -39,7 +39,7 @@ namespace Umbraco.Tests.Persistence _sqlCeSyntaxProvider = new SqlCeSyntaxProvider(); _sqlSyntaxProviders = new[] { (ISqlSyntaxProvider) _sqlCeSyntaxProvider }; _logger = Mock.Of>(); - _loggerFactory = Mock.Of(); + _loggerFactory = NullLoggerFactory.Instance; _umbracoVersion = TestHelper.GetUmbracoVersion(); var globalSettings = TestHelper.GetConfigs().Global(); var connectionStrings = TestHelper.GetConfigs().ConnectionStrings(); @@ -97,7 +97,7 @@ namespace Umbraco.Tests.Persistence using (var database = _databaseFactory.CreateDatabase()) using (var transaction = database.GetTransaction()) { - schemaHelper = new DatabaseSchemaCreator(database, Mock.Of(), _umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); + schemaHelper = new DatabaseSchemaCreator(database, _loggerFactory.CreateLogger(), _loggerFactory, _umbracoVersion, SettingsForTests.GenerateMockGlobalSettings()); schemaHelper.InitializeDatabaseSchema(); transaction.Complete(); } diff --git a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs index 0648e3bc21..2fa60bc54a 100644 --- a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs +++ b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs @@ -1,8 +1,8 @@ using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Persistence.SqlSyntax; using Umbraco.Tests.LegacyXmlPublishedCache; @@ -22,7 +22,7 @@ namespace Umbraco.Tests.Persistence using (var scope = ScopeProvider.CreateScope()) { - var schema = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion, TestObjects.GetGlobalSettings()); + var schema = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion, TestObjects.GetGlobalSettings()); result = schema.ValidateSchema( //TODO: When we remove the xml cache from tests we can remove this too DatabaseSchemaCreator.OrderedTables.Concat(new []{typeof(ContentXmlDto), typeof(PreviewXmlDto)})); diff --git a/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs b/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs index 207e595598..a13f70b70c 100644 --- a/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs +++ b/src/Umbraco.Tests/Persistence/SqlCeTableByTableTest.cs @@ -1,8 +1,9 @@ -using Moq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; +using Moq; using NPoco; using NUnit.Framework; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; @@ -17,13 +18,14 @@ namespace Umbraco.Tests.Persistence public class SqlCeTableByTableTest : TestWithDatabaseBase { public IGlobalSettings GlobalSettings => SettingsForTests.GenerateMockGlobalSettings(); + private static ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; [Test] public void Can_Create_umbracoNode_Table() { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -36,7 +38,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -50,7 +52,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -65,7 +67,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -79,7 +81,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -94,7 +96,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -108,7 +110,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -124,7 +126,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -140,7 +142,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -154,7 +156,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -167,7 +169,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -182,7 +184,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -196,7 +198,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -213,7 +215,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -229,7 +231,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -243,7 +245,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -256,7 +258,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -269,7 +271,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -282,7 +284,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -298,7 +300,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -315,7 +317,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -330,7 +332,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -347,7 +349,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -365,7 +367,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -382,7 +384,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -397,7 +399,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -412,7 +414,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -425,7 +427,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -438,7 +440,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -459,7 +461,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); @@ -472,7 +474,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -486,7 +488,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -500,7 +502,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); @@ -515,7 +517,7 @@ namespace Umbraco.Tests.Persistence { using (var scope = ScopeProvider.CreateScope()) { - var helper = new DatabaseSchemaCreator(scope.Database, Mock.Of(), UmbracoVersion, GlobalSettings); + var helper = new DatabaseSchemaCreator(scope.Database, _loggerFactory.CreateLogger(), _loggerFactory, UmbracoVersion, GlobalSettings); helper.CreateTable(); helper.CreateTable(); diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 057a751aaf..a3b5de755f 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -165,7 +165,7 @@ namespace Umbraco.Tests.Runtimes var scopeProvider = factory.GetInstance(); using (var scope = scopeProvider.CreateScope()) { - var creator = new DatabaseSchemaCreator(scope.Database, logger, umbracoVersion, TestHelpers.SettingsForTests.DefaultGlobalSettings); + var creator = new DatabaseSchemaCreator(scope.Database, loggerFactory.CreateLogger(), loggerFactory, umbracoVersion, TestHelpers.SettingsForTests.DefaultGlobalSettings); creator.InitializeDatabaseSchema(); scope.Complete(); } diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index c548ead2a5..738055426f 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -6,6 +6,7 @@ using System.Linq; using System.Threading; using System.Web.Routing; using System.Xml; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -301,7 +302,7 @@ namespace Umbraco.Tests.TestHelpers { using (var scope = ScopeProvider.CreateScope()) { - var schemaHelper = new DatabaseSchemaCreator(scope.Database, Logger, UmbracoVersion, TestObjects.GetGlobalSettings()); + var schemaHelper = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion, TestObjects.GetGlobalSettings()); //Create the umbraco database and its base data schemaHelper.InitializeDatabaseSchema(); diff --git a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs index b9f5f935c8..c97e2ce84b 100644 --- a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs +++ b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs @@ -8,6 +8,7 @@ using Umbraco.Core.Logging.Serilog; using Umbraco.Core.Strings; using Umbraco.Tests.Components; using Umbraco.Tests.TestHelpers; +using NullLogger = Microsoft.Extensions.Logging.Abstractions.NullLogger; namespace Umbraco.Tests.UmbracoExamine { @@ -17,9 +18,9 @@ namespace Umbraco.Tests.UmbracoExamine [OneTimeSetUp] public void InitializeFixture() { - + var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - _profilingLogger = new ProfilingLogger(logger, new LogProfiler(logger)); + _profilingLogger = new ProfilingLogger(NullLogger.Instance, new LogProfiler(logger)); } private IProfilingLogger _profilingLogger; From 140cf69027a839b49823d46cc5c08247f9c24d05 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 13:14:02 +0200 Subject: [PATCH 32/85] Use MS ILogger for XmlStore and BackgroundTask --- ...aseServerRegistrarAndMessengerComponent.cs | 13 ++-- .../Scheduling/BackgroundTaskRunner.cs | 12 +-- .../Scheduling/SchedulerComponent.cs | 12 +-- .../Search/BackgroundIndexRebuilder.cs | 11 ++- .../Testing/IntegrationTestComposer.cs | 6 +- .../LegacyXmlPublishedCache/XmlStore.cs | 6 +- .../XmlStoreFilePersister.cs | 8 +- .../Scheduling/BackgroundTaskRunnerTests.cs | 74 ++++++++++--------- .../Scheduling/BackgroundTaskRunnerTests2.cs | 9 +-- 9 files changed, 82 insertions(+), 69 deletions(-) diff --git a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs index 6aba70530d..096c5d5686 100644 --- a/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/DatabaseServerRegistrarAndMessengerComponent.cs @@ -1,9 +1,9 @@ using System; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Services.Changes; using Umbraco.Core.Sync; @@ -83,7 +83,8 @@ namespace Umbraco.Web.Compose private object _locker = new object(); private readonly DatabaseServerRegistrar _registrar; private readonly IBatchedDatabaseServerMessenger _messenger; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IServerRegistrationService _registrationService; private readonly BackgroundTaskRunner _touchTaskRunner; private readonly BackgroundTaskRunner _processTaskRunner; @@ -95,11 +96,13 @@ namespace Umbraco.Web.Compose IServerRegistrar serverRegistrar, IServerMessenger serverMessenger, IServerRegistrationService registrationService, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IRequestAccessor requestAccessor) { _logger = logger; + _loggerFactory = loggerFactory; _registrationService = registrationService; _requestAccessor = requestAccessor; @@ -108,7 +111,7 @@ namespace Umbraco.Web.Compose if (_registrar != null) { _touchTaskRunner = new BackgroundTaskRunner("ServerRegistration", - new BackgroundTaskRunnerOptions { AutoStart = true }, logger, hostingEnvironment); + new BackgroundTaskRunnerOptions { AutoStart = true }, _loggerFactory.CreateLogger>(), hostingEnvironment); } // create task runner for BatchedDatabaseServerMessenger @@ -116,7 +119,7 @@ namespace Umbraco.Web.Compose if (_messenger != null) { _processTaskRunner = new BackgroundTaskRunner("ServerInstProcess", - new BackgroundTaskRunnerOptions { AutoStart = true }, logger, hostingEnvironment); + new BackgroundTaskRunnerOptions { AutoStart = true }, _loggerFactory.CreateLogger>(), hostingEnvironment); } } diff --git a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs index 4298c92aa7..fbc68daca3 100644 --- a/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs +++ b/src/Umbraco.Infrastructure/Scheduling/BackgroundTaskRunner.cs @@ -2,10 +2,10 @@ using System.Threading; using System.Threading.Tasks; using System.Threading.Tasks.Dataflow; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Events; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; namespace Umbraco.Web.Scheduling { @@ -80,7 +80,7 @@ namespace Umbraco.Web.Scheduling private readonly string _logPrefix; private readonly BackgroundTaskRunnerOptions _options; - private readonly ILogger _logger; + private readonly ILogger> _logger; private readonly IApplicationShutdownRegistry _applicationShutdownRegistry; private readonly object _locker = new object(); @@ -105,7 +105,7 @@ namespace Umbraco.Web.Scheduling /// A logger. /// The application shutdown registry /// An optional main domain hook. - public BackgroundTaskRunner(ILogger logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) + public BackgroundTaskRunner(ILogger> logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) : this(typeof(T).FullName, new BackgroundTaskRunnerOptions(), logger, applicationShutdownRegistry, hook) { } @@ -116,7 +116,7 @@ namespace Umbraco.Web.Scheduling /// A logger. /// The application shutdown registry /// An optional main domain hook. - public BackgroundTaskRunner(string name, ILogger logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) + public BackgroundTaskRunner(string name, ILogger> logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) : this(name, new BackgroundTaskRunnerOptions(), logger, applicationShutdownRegistry, hook) { } @@ -127,7 +127,7 @@ namespace Umbraco.Web.Scheduling /// A logger. /// The application shutdown registry /// An optional main domain hook. - public BackgroundTaskRunner(BackgroundTaskRunnerOptions options, ILogger logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) + public BackgroundTaskRunner(BackgroundTaskRunnerOptions options, ILogger> logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) : this(typeof(T).FullName, options, logger, applicationShutdownRegistry, hook) { } @@ -139,7 +139,7 @@ namespace Umbraco.Web.Scheduling /// A logger. /// The application shutdown registry /// An optional main domain hook. - public BackgroundTaskRunner(string name, BackgroundTaskRunnerOptions options, ILogger logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) + public BackgroundTaskRunner(string name, BackgroundTaskRunnerOptions options, ILogger> logger, IApplicationShutdownRegistry applicationShutdownRegistry, MainDomHook hook = null) { _options = options ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs index 80666e838b..126f5aa179 100644 --- a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs +++ b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs @@ -90,13 +90,13 @@ namespace Umbraco.Web.Scheduling public void Initialize() { - var backGroundTaskLogger = _loggerFactory.CreateLogger("BackgroundTaskRunner"); + var logger = _loggerFactory.CreateLogger>(); // backgrounds runners are web aware, if the app domain dies, these tasks will wind down correctly - _keepAliveRunner = new BackgroundTaskRunner("KeepAlive", _logger, _applicationShutdownRegistry); - _publishingRunner = new BackgroundTaskRunner("ScheduledPublishing", _logger, _applicationShutdownRegistry); - _scrubberRunner = new BackgroundTaskRunner("LogScrubber", _logger, _applicationShutdownRegistry); - _fileCleanupRunner = new BackgroundTaskRunner("TempFileCleanup", _logger, _applicationShutdownRegistry); - _healthCheckRunner = new BackgroundTaskRunner("HealthCheckNotifier", _logger, _applicationShutdownRegistry); + _keepAliveRunner = new BackgroundTaskRunner("KeepAlive", logger, _applicationShutdownRegistry); + _publishingRunner = new BackgroundTaskRunner("ScheduledPublishing", logger, _applicationShutdownRegistry); + _scrubberRunner = new BackgroundTaskRunner("LogScrubber", logger, _applicationShutdownRegistry); + _fileCleanupRunner = new BackgroundTaskRunner("TempFileCleanup", logger, _applicationShutdownRegistry); + _healthCheckRunner = new BackgroundTaskRunner("HealthCheckNotifier", logger, _applicationShutdownRegistry); // we will start the whole process when a successful request is made _requestAccessor.RouteAttempt += RegisterBackgroundTasksOnce; diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 2fcad84241..2b9c59ad53 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -3,9 +3,11 @@ using System.Threading; using Umbraco.Core.Logging; using Umbraco.Examine; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Hosting; using Umbraco.Web.Scheduling; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Search { @@ -17,16 +19,19 @@ namespace Umbraco.Web.Search private static readonly object RebuildLocker = new object(); private readonly IndexRebuilder _indexRebuilder; private readonly IMainDom _mainDom; + // TODO: Remove unused ProfilingLogger? private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Core.Logging.ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _hostingEnvironment; private static BackgroundTaskRunner _rebuildOnStartupRunner; - public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) { _mainDom = mainDom; _pLogger = pLogger; _logger = logger; + _loggerFactory = loggerFactory; _hostingEnvironment = hostingEnvironment; _indexRebuilder = indexRebuilder; } @@ -54,7 +59,7 @@ namespace Umbraco.Web.Search _rebuildOnStartupRunner = new BackgroundTaskRunner( "RebuildIndexesOnStartup", - _logger as ILogger, _hostingEnvironment); + _loggerFactory.CreateLogger>(), _hostingEnvironment); _rebuildOnStartupRunner.TryAdd(task); } diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index 7be6325b92..7beebdcf83 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -3,6 +3,7 @@ using NUnit.Framework; using System; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -18,6 +19,7 @@ using Umbraco.Web.Compose; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.Scheduling; using Umbraco.Web.Search; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration.Testing { @@ -87,8 +89,8 @@ namespace Umbraco.Tests.Integration.Testing // replace the default so there is no background index rebuilder private class TestBackgroundIndexRebuilder : BackgroundIndexRebuilder { - public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILogger logger, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) - : base(mainDom, pLogger, logger, hostingEnvironment, indexRebuilder) + public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + : base(mainDom, pLogger, logger, loggerFactory, hostingEnvironment, indexRebuilder) { } diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs index c6680aa3e4..41705c7774 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs @@ -138,7 +138,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache { if (SyncToXmlFile == false) return; - var logger = Current.Logger; + var loggerFactory = Current.LoggerFactory; // there's always be one task keeping a ref to the runner // so it's safe to just create it as a local var here @@ -147,10 +147,10 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache LongRunning = true, KeepAlive = true, Hosted = false // main domain will take care of stopping the runner (see below) - }, logger, _hostingLifetime); + }, loggerFactory.CreateLogger>(), _hostingLifetime); // create (and add to runner) - _persisterTask = new XmlStoreFilePersister(runner, this, logger); + _persisterTask = new XmlStoreFilePersister(runner, this, loggerFactory.CreateLogger()); var registered = mainDom.Register( null, diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs index 76d00882e9..52f639f829 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStoreFilePersister.cs @@ -1,7 +1,7 @@ using System; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Web.Scheduling; namespace Umbraco.Tests.LegacyXmlPublishedCache @@ -18,7 +18,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache internal class XmlStoreFilePersister : LatchedBackgroundTaskBase { private readonly IBackgroundTaskRunner _runner; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly XmlStore _store; private readonly object _locko = new object(); private bool _released; @@ -39,12 +39,12 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache public override bool RunsOnShutdown => _timer != null; // initialize the first instance, which is inactive (not touched yet) - public XmlStoreFilePersister(IBackgroundTaskRunner runner, XmlStore store, ILogger logger) + public XmlStoreFilePersister(IBackgroundTaskRunner runner, XmlStore store, ILogger logger) : this(runner, store, logger, false) { } // initialize further instances, which are active (touched) - private XmlStoreFilePersister(IBackgroundTaskRunner runner, XmlStore store, ILogger logger, bool touched) + private XmlStoreFilePersister(IBackgroundTaskRunner runner, XmlStore store, ILogger logger, bool touched) { _runner = runner; _store = store; diff --git a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs index 62ec6746dd..f0a9721b08 100644 --- a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs +++ b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests.cs @@ -4,10 +4,10 @@ using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; using Umbraco.Web.Scheduling; @@ -18,20 +18,24 @@ namespace Umbraco.Tests.Scheduling [Category("Slow")] public class BackgroundTaskRunnerTests { - private ILogger _logger; + private ILoggerFactory _loggerFactory; + private ILogger> _backgroundTaskLogger; + private ILogger> _baseTaskLogger; private IApplicationShutdownRegistry _hostingEnvironment; [OneTimeSetUp] public void InitializeFixture() { - _logger = new ConsoleLogger(new MessageTemplates()); + _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + _backgroundTaskLogger = _loggerFactory.CreateLogger>(); + _baseTaskLogger = _loggerFactory.CreateLogger>(); _hostingEnvironment = TestHelper.GetHostingEnvironmentLifetime(); } [Test] public async Task ShutdownWhenRunningWithWait() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var stopped = false; runner.Stopped += (sender, args) => { stopped = true; }; @@ -54,7 +58,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task ShutdownWhenRunningWithoutWait() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var stopped = false; runner.Stopped += (sender, args) => { stopped = true; }; @@ -81,7 +85,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task ShutdownCompletesTheRunner() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsFalse(runner.IsRunning); // because AutoStart is false @@ -104,7 +108,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task ShutdownFlushesTheQueue() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { MyTask t1, t2, t3; @@ -126,7 +130,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task ShutdownForceTruncatesTheQueue() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { MyTask t1, t2, t3; @@ -153,7 +157,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task ShutdownThenForce() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsFalse(runner.IsRunning); // because AutoStart is false @@ -188,7 +192,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task HostingStopNonImmediate() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { MyTask t; @@ -222,7 +226,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task HostingStopImmediate() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { MyTask t; @@ -257,7 +261,7 @@ namespace Umbraco.Tests.Scheduling [Test] public void Create_IsNotRunning() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsFalse(runner.IsRunning); } @@ -271,7 +275,7 @@ namespace Umbraco.Tests.Scheduling { AutoStart = true, KeepAlive = true // else stops! - }, _logger, _hostingEnvironment)) + }, _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsTrue(runner.IsRunning); // because AutoStart is true await runner.StopInternal(false); // keepalive = must be stopped @@ -281,7 +285,7 @@ namespace Umbraco.Tests.Scheduling [Test] public void Create_AutoStartAndKeepAlive_IsRunning() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { AutoStart = true, KeepAlive = true }, _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { AutoStart = true, KeepAlive = true }, _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsTrue(runner.IsRunning); // because AutoStart is true Thread.Sleep(800); // for long @@ -294,7 +298,7 @@ namespace Umbraco.Tests.Scheduling public async Task Dispose_IsRunning() { BackgroundTaskRunner runner; - using (runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { AutoStart = true, KeepAlive = true }, _logger, _hostingEnvironment)) + using (runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { AutoStart = true, KeepAlive = true }, _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsTrue(runner.IsRunning); // dispose will stop it @@ -318,7 +322,7 @@ namespace Umbraco.Tests.Scheduling [Test] public void Startup_KeepAlive_IsRunning() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true }, _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true }, _backgroundTaskLogger, _hostingEnvironment)) { Assert.IsFalse(runner.IsRunning); runner.StartUp(); @@ -330,7 +334,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task Create_AddTask_IsRunning() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _baseTaskLogger, _hostingEnvironment)) { var waitHandle = new ManualResetEvent(false); runner.TaskCompleted += (sender, args) => @@ -348,7 +352,7 @@ namespace Umbraco.Tests.Scheduling [Test] public void Create_KeepAliveAndAddTask_IsRunning() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true }, _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true }, _baseTaskLogger, _hostingEnvironment)) { var waitHandle = new ManualResetEvent(false); runner.TaskCompleted += (sender, args) => @@ -366,7 +370,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task WaitOnRunner_OneTask() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _baseTaskLogger, _hostingEnvironment)) { var task = new MyTask(); Assert.IsTrue(task.Ended == default(DateTime)); @@ -385,7 +389,7 @@ namespace Umbraco.Tests.Scheduling for (var i = 0; i < 10; i++) tasks.Add(new MyTask()); - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = false, LongRunning = true, PreserveRunningTask = true }, _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = false, LongRunning = true, PreserveRunningTask = true }, _baseTaskLogger, _hostingEnvironment)) { tasks.ForEach(runner.Add); @@ -403,7 +407,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task WaitOnTask() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _baseTaskLogger, _hostingEnvironment)) { var task = new MyTask(); var waitHandle = new ManualResetEvent(false); @@ -423,7 +427,7 @@ namespace Umbraco.Tests.Scheduling for (var i = 0; i < 10; i++) tasks.Add(new MyTask(), new ManualResetEvent(false)); - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _baseTaskLogger, _hostingEnvironment)) { runner.TaskCompleted += (sender, task) => tasks[task.Task].Set(); foreach (var t in tasks) runner.Add(t.Key); @@ -452,7 +456,7 @@ namespace Umbraco.Tests.Scheduling IDictionary tasks = getTasks(); BackgroundTaskRunner tManager; - using (tManager = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { LongRunning = true, KeepAlive = true }, _logger, _hostingEnvironment)) + using (tManager = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { LongRunning = true, KeepAlive = true }, _baseTaskLogger, _hostingEnvironment)) { tManager.TaskCompleted += (sender, task) => tasks[task.Task].Set(); @@ -498,7 +502,7 @@ namespace Umbraco.Tests.Scheduling List tasks = getTasks(); - using (var tManager = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { LongRunning = true, PreserveRunningTask = true }, _logger, _hostingEnvironment)) + using (var tManager = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { LongRunning = true, PreserveRunningTask = true }, _baseTaskLogger, _hostingEnvironment)) { tasks.ForEach(tManager.Add); @@ -540,7 +544,7 @@ namespace Umbraco.Tests.Scheduling { var runCount = 0; var waitHandle = new ManualResetEvent(false); - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { runner.TaskCompleted += (sender, args) => { @@ -571,7 +575,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task LatchedTaskRuns() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var task = new MyLatchedTask(200, false); runner.Add(task); @@ -591,7 +595,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task LatchedTaskStops_Runs_On_Shutdown() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var task = new MyLatchedTask(200, true); runner.Add(task); @@ -611,7 +615,7 @@ namespace Umbraco.Tests.Scheduling { var runCount = 0; var waitHandle = new ManualResetEvent(false); - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { runner.TaskCompleted += (sender, args) => { @@ -638,7 +642,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task FailingTaskSync() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var exceptions = new ConcurrentQueue(); runner.TaskError += (sender, args) => exceptions.Enqueue(args.Exception); @@ -655,7 +659,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task FailingTaskDisposing() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var exceptions = new ConcurrentQueue(); runner.TaskError += (sender, args) => exceptions.Enqueue(args.Exception); @@ -672,7 +676,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task FailingTaskAsync() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var exceptions = new ConcurrentQueue(); runner.TaskError += (sender, args) => exceptions.Enqueue(args.Exception); @@ -688,7 +692,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task FailingTaskDisposingAsync() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var exceptions = new ConcurrentQueue(); runner.TaskError += (sender, args) => exceptions.Enqueue(args.Exception); @@ -705,7 +709,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task CancelAsyncTask() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var task = new MyAsyncTask(4000); runner.Add(task); @@ -721,7 +725,7 @@ namespace Umbraco.Tests.Scheduling [Test] public async Task CancelLatchedTask() { - using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _logger, _hostingEnvironment)) + using (var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions(), _backgroundTaskLogger, _hostingEnvironment)) { var task = new MyLatchedTask(4000, false); runner.Add(task); @@ -934,7 +938,7 @@ namespace Umbraco.Tests.Scheduling [Test] public void SourceTaskTest() { - var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, _logger, TestHelper.GetHostingEnvironmentLifetime()); + var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, _backgroundTaskLogger, TestHelper.GetHostingEnvironmentLifetime()); var task = new SourceTask(); runner.Add(task); diff --git a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs index 5d1cbb4591..c132111e72 100644 --- a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs +++ b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs @@ -2,8 +2,8 @@ using System.Diagnostics; using System.Threading; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using NUnit.Framework; -using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; using Umbraco.Web.Scheduling; @@ -13,6 +13,7 @@ namespace Umbraco.Tests.Scheduling [Timeout(60000)] public class BackgroundTaskRunnerTests2 { + private static ILoggerFactory _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); // this tests was used to debug a background task runner issue that was unearthed by Deploy, // where work items would never complete under certain circumstances, due to threading issues. // (fixed now) @@ -21,8 +22,7 @@ namespace Umbraco.Tests.Scheduling [Timeout(4000)] public async Task ThreadResumeIssue() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, logger, TestHelper.GetHostingEnvironmentLifetime()); + var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, _loggerFactory.CreateLogger>(), TestHelper.GetHostingEnvironmentLifetime()); var work = new ThreadResumeIssueWorkItem(); runner.Add(work); @@ -76,8 +76,7 @@ namespace Umbraco.Tests.Scheduling [Ignore("Only runs in the debugger.")] public async Task DebuggerInterferenceIssue() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, logger, TestHelper.GetHostingEnvironmentLifetime()); + var runner = new BackgroundTaskRunner(new BackgroundTaskRunnerOptions { KeepAlive = true, LongRunning = true }, _loggerFactory.CreateLogger>(), TestHelper.GetHostingEnvironmentLifetime()); var taskCompleted = false; runner.TaskCompleted += (sender, args) => { From 0bb8e238c3f3b0a3007fec4dd30c855fe909b250 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 13:36:26 +0200 Subject: [PATCH 33/85] Use MS ILogger Upgrader --- .../Migrations/IMigrationContext.cs | 4 ++-- .../Migrations/Install/DatabaseBuilder.cs | 2 +- .../Migrations/MigrationBase.cs | 2 +- .../Migrations/MigrationContext.cs | 6 +++--- .../Migrations/MigrationExpressionBase.cs | 2 +- .../Migrations/MigrationPlan.cs | 7 ++++--- .../Migrations/Upgrade/Upgrader.cs | 11 ++++++----- .../V_8_0_0/DropDownPropertyEditorsMigration.cs | 2 +- .../V_8_0_0/MergeDateAndDateTimePropertyEditor.cs | 2 +- .../V_8_0_0/PropertyEditorsMigrationBase.cs | 2 +- .../RadioAndCheckboxPropertyEditorsMigration.cs | 2 +- src/Umbraco.Tests/Migrations/MigrationPlanTests.cs | 7 ++++--- src/Umbraco.Tests/Migrations/MigrationTests.cs | 10 +++++----- src/Umbraco.Tests/Migrations/PostMigrationTests.cs | 14 ++++++-------- .../SyntaxProvider/SqlCeSyntaxProviderTests.cs | 10 +++++----- 15 files changed, 42 insertions(+), 41 deletions(-) diff --git a/src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs b/src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs index c76de8dfb3..b276d5b171 100644 --- a/src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs +++ b/src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Persistence; namespace Umbraco.Core.Migrations @@ -13,7 +13,7 @@ namespace Umbraco.Core.Migrations /// /// Gets the logger. /// - ILogger Logger { get; } + ILogger Logger { get; } /// /// Gets the database instance. diff --git a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs index f48bba9cf7..a3d7ee46d0 100644 --- a/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs +++ b/src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs @@ -419,7 +419,7 @@ namespace Umbraco.Core.Migrations.Install // upgrade var upgrader = new Upgrader(plan); - upgrader.Execute(_scopeProvider, _migrationBuilder, _keyValueService, _logger); + upgrader.Execute(_scopeProvider, _migrationBuilder, _keyValueService, _loggerFactory.CreateLogger(), _loggerFactory); var message = "

Upgrade completed!

"; diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs index 58edcae80a..b24313bebb 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs @@ -1,6 +1,6 @@ using System; using NPoco; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Migrations.Expressions.Alter; using Umbraco.Core.Migrations.Expressions.Create; using Umbraco.Core.Migrations.Expressions.Delete; diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationContext.cs b/src/Umbraco.Infrastructure/Migrations/MigrationContext.cs index 0bb2bc11ae..5c53c3cc46 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationContext.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationContext.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Persistence; namespace Umbraco.Core.Migrations @@ -13,14 +13,14 @@ namespace Umbraco.Core.Migrations /// /// Initializes a new instance of the class. /// - public MigrationContext(IUmbracoDatabase database, ILogger logger) + public MigrationContext(IUmbracoDatabase database, ILogger logger) { Database = database ?? throw new ArgumentNullException(nameof(database)); Logger = logger ?? throw new ArgumentNullException(nameof(logger)); } /// - public ILogger Logger { get; } + public ILogger Logger { get; } /// public IUmbracoDatabase Database { get; } diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs index 199937d02e..56ba221205 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationExpressionBase.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.IO; using System.Text; +using Microsoft.Extensions.Logging; using NPoco; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.SqlSyntax; diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs b/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs index de2770bf47..67e5d0b41a 100644 --- a/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs +++ b/src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Scoping; using Type = System.Type; @@ -285,9 +285,10 @@ namespace Umbraco.Core.Migrations /// The state to start execution at. /// A migration builder. /// A logger. + /// /// The final state. /// The plan executes within the scope, which must then be completed. - public string Execute(IScope scope, string fromState, IMigrationBuilder migrationBuilder, ILogger logger) + public string Execute(IScope scope, string fromState, IMigrationBuilder migrationBuilder, ILogger logger, ILoggerFactory loggerFactory) { Validate(); @@ -303,7 +304,7 @@ namespace Umbraco.Core.Migrations if (!_transitions.TryGetValue(origState, out var transition)) ThrowOnUnknownInitialState(origState); - var context = new MigrationContext(scope.Database, logger); + var context = new MigrationContext(scope.Database, loggerFactory.CreateLogger()); context.PostMigrations.AddRange(_postMigrationTypes); while (transition != null) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs index f6df52bc1e..9096a14146 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs @@ -1,5 +1,5 @@ using System; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Scoping; using Umbraco.Core.Services; @@ -40,7 +40,8 @@ namespace Umbraco.Core.Migrations.Upgrade /// A migration builder. /// A key-value service. /// A logger. - public void Execute(IScopeProvider scopeProvider, IMigrationBuilder migrationBuilder, IKeyValueService keyValueService, ILogger logger) + /// A logger factory + public void Execute(IScopeProvider scopeProvider, IMigrationBuilder migrationBuilder, IKeyValueService keyValueService, ILogger logger, ILoggerFactory loggerFactory) { if (scopeProvider == null) throw new ArgumentNullException(nameof(scopeProvider)); if (migrationBuilder == null) throw new ArgumentNullException(nameof(migrationBuilder)); @@ -64,7 +65,7 @@ namespace Umbraco.Core.Migrations.Upgrade } // execute plan - var state = plan.Execute(scope, currentState, migrationBuilder, logger); + var state = plan.Execute(scope, currentState, migrationBuilder, loggerFactory.CreateLogger(), loggerFactory); if (string.IsNullOrWhiteSpace(state)) throw new Exception("Plan execution returned an invalid null or empty state."); @@ -83,13 +84,13 @@ namespace Umbraco.Core.Migrations.Upgrade /// /// Executes as part of the upgrade scope and before all migrations have executed. /// - public virtual void BeforeMigrations(IScope scope, ILogger logger) + public virtual void BeforeMigrations(IScope scope, ILogger logger) { } /// /// Executes as part of the upgrade scope and after all migrations have executed. /// - public virtual void AfterMigrations(IScope scope, ILogger logger) + public virtual void AfterMigrations(IScope scope, ILogger logger) { } } diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs index 1110cbaa0e..6b1d734bc8 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs @@ -1,11 +1,11 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.IO; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.PropertyEditors; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.PostMigrations; using Umbraco.Core.Models; diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs index 7c2164f58a..00092f3feb 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.PropertyEditors; diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs index 61e69fe234..79bbcece0d 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.PropertyEditors; diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs index 04b7ad8aef..20218dc2c6 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.PostMigrations; using Umbraco.Core.Models; using Umbraco.Core.Persistence; diff --git a/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs b/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs index a9785697f4..f9b8566cfd 100644 --- a/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs +++ b/src/Umbraco.Tests/Migrations/MigrationPlanTests.cs @@ -1,11 +1,12 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NPoco; using NUnit.Framework; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Persistence; @@ -24,7 +25,7 @@ namespace Umbraco.Tests.Migrations [Test] public void CanExecute() { - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var database = new TestDatabase(); var scope = Mock.Of(); @@ -66,7 +67,7 @@ namespace Umbraco.Tests.Migrations var sourceState = kvs.GetValue("Umbraco.Tests.MigrationPlan") ?? string.Empty; // execute plan - state = plan.Execute(s, sourceState, migrationBuilder, logger); + state = plan.Execute(s, sourceState, migrationBuilder, loggerFactory.CreateLogger(), loggerFactory); // save new state kvs.SetValue("Umbraco.Tests.MigrationPlan", sourceState, state); diff --git a/src/Umbraco.Tests/Migrations/MigrationTests.cs b/src/Umbraco.Tests/Migrations/MigrationTests.cs index bfadd45b0d..46d9b04b1b 100644 --- a/src/Umbraco.Tests/Migrations/MigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/MigrationTests.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Data; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Semver; @@ -10,7 +11,6 @@ using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Persistence; using Umbraco.Core.Scoping; using Umbraco.Core.Services; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Migrations { @@ -46,7 +46,7 @@ namespace Umbraco.Tests.Migrations throw new NotImplementedException(); } - + public IScopeContext Context { get; set; } public ISqlContext SqlContext { get; set; } @@ -63,7 +63,7 @@ namespace Umbraco.Tests.Migrations [Test] public void RunGoodMigration() { - var migrationContext = new MigrationContext(Mock.Of(), Mock.Of()); + var migrationContext = new MigrationContext(Mock.Of(), Mock.Of>()); IMigration migration = new GoodMigration(migrationContext); migration.Migrate(); } @@ -71,7 +71,7 @@ namespace Umbraco.Tests.Migrations [Test] public void DetectBadMigration1() { - var migrationContext = new MigrationContext(Mock.Of(), Mock.Of()); + var migrationContext = new MigrationContext(Mock.Of(), Mock.Of>()); IMigration migration = new BadMigration1(migrationContext); Assert.Throws(() => migration.Migrate()); } @@ -79,7 +79,7 @@ namespace Umbraco.Tests.Migrations [Test] public void DetectBadMigration2() { - var migrationContext = new MigrationContext(Mock.Of(), Mock.Of()); + var migrationContext = new MigrationContext(Mock.Of(), Mock.Of>()); IMigration migration = new BadMigration2(migrationContext); Assert.Throws(() => migration.Migrate()); } diff --git a/src/Umbraco.Tests/Migrations/PostMigrationTests.cs b/src/Umbraco.Tests/Migrations/PostMigrationTests.cs index d9dcbc1d34..ba265b3fd2 100644 --- a/src/Umbraco.Tests/Migrations/PostMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/PostMigrationTests.cs @@ -1,8 +1,9 @@ using System; +using Microsoft.Extensions.Logging.Abstractions; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using NUnit.Framework; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Core.Persistence; @@ -17,11 +18,10 @@ namespace Umbraco.Tests.Migrations [TestFixture] public class PostMigrationTests { + private static ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; [Test] public void ExecutesPlanPostMigration() { - var logger = Mock.Of(); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -54,7 +54,7 @@ namespace Umbraco.Tests.Migrations TestPostMigration.MigrateCount = 0; var upgrader = new Upgrader(plan); - upgrader.Execute(scopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(scopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); Assert.AreEqual(1, TestPostMigration.MigrateCount); } @@ -62,8 +62,6 @@ namespace Umbraco.Tests.Migrations [Test] public void MigrationCanAddPostMigration() { - var logger = Mock.Of(); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -97,10 +95,10 @@ namespace Umbraco.Tests.Migrations TestMigration.MigrateCount = 0; TestPostMigration.MigrateCount = 0; - new MigrationContext(database, logger); + new MigrationContext(database, _loggerFactory.CreateLogger()); var upgrader = new Upgrader(plan); - upgrader.Execute(scopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(scopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); Assert.AreEqual(1, TestMigration.MigrateCount); Assert.AreEqual(1, TestPostMigration.MigrateCount); diff --git a/src/Umbraco.Tests/Persistence/SyntaxProvider/SqlCeSyntaxProviderTests.cs b/src/Umbraco.Tests/Persistence/SyntaxProvider/SqlCeSyntaxProviderTests.cs index 1d87bb35e7..a43e912ddf 100644 --- a/src/Umbraco.Tests/Persistence/SyntaxProvider/SqlCeSyntaxProviderTests.cs +++ b/src/Umbraco.Tests/Persistence/SyntaxProvider/SqlCeSyntaxProviderTests.cs @@ -1,10 +1,10 @@ using System; using System.Diagnostics; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using NUnit.Framework; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations; using Umbraco.Core.Migrations.Expressions.Common.Expressions; using Umbraco.Core.Migrations.Expressions.Create.Index; @@ -99,7 +99,7 @@ WHERE (([umbracoNode].[nodeObjectType] = @0))) x)".Replace(Environment.NewLine, [Test] public void CreateIndexBuilder_SqlServer_NonClustered_CreatesNonClusteredIndex() { - var logger = Mock.Of(); + var logger = Mock.Of>(); var sqlSyntax = new SqlServerSyntaxProvider(); var db = new TestDatabase(DatabaseType.SqlServer2005, sqlSyntax); var context = new MigrationContext(db, logger); @@ -120,7 +120,7 @@ WHERE (([umbracoNode].[nodeObjectType] = @0))) x)".Replace(Environment.NewLine, [Test] public void CreateIndexBuilder_SqlServer_Unique_CreatesUniqueNonClusteredIndex() { - var logger = Mock.Of(); + var logger = Mock.Of>(); var sqlSyntax = new SqlServerSyntaxProvider(); var db = new TestDatabase(DatabaseType.SqlServer2005, sqlSyntax); var context = new MigrationContext(db, logger); @@ -141,7 +141,7 @@ WHERE (([umbracoNode].[nodeObjectType] = @0))) x)".Replace(Environment.NewLine, [Test] public void CreateIndexBuilder_SqlServer_Unique_CreatesUniqueNonClusteredIndex_Multi_Columnn() { - var logger = Mock.Of(); + var logger = Mock.Of>(); var sqlSyntax = new SqlServerSyntaxProvider(); var db = new TestDatabase(DatabaseType.SqlServer2005, sqlSyntax); var context = new MigrationContext(db, logger); @@ -162,7 +162,7 @@ WHERE (([umbracoNode].[nodeObjectType] = @0))) x)".Replace(Environment.NewLine, [Test] public void CreateIndexBuilder_SqlServer_Clustered_CreatesClusteredIndex() { - var logger = Mock.Of(); + var logger = Mock.Of>(); var sqlSyntax = new SqlServerSyntaxProvider(); var db = new TestDatabase(DatabaseType.SqlServer2005, sqlSyntax); var context = new MigrationContext(db, logger); From b18f0b2b69f64622b7387f7d884fb5794f9b3ee3 Mon Sep 17 00:00:00 2001 From: Nikolaj Date: Thu, 17 Sep 2020 14:34:04 +0200 Subject: [PATCH 34/85] Add csproj files --- .../Umbraco.Configuration.csproj | 6 ++--- .../Umbraco.Infrastructure.csproj | 4 ++-- .../Umbraco.Tests.Benchmarks.csproj | 3 +++ .../Migrations/AdvancedMigrationTests.cs | 24 +++++++------------ .../Migrations/AlterMigrationTests.cs | 6 ++--- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 17 ++++++------- src/Umbraco.Tests/Umbraco.Tests.csproj | 3 +++ 7 files changed, 29 insertions(+), 34 deletions(-) diff --git a/src/Umbraco.Configuration/Umbraco.Configuration.csproj b/src/Umbraco.Configuration/Umbraco.Configuration.csproj index a4dac22386..21a6dd83af 100644 --- a/src/Umbraco.Configuration/Umbraco.Configuration.csproj +++ b/src/Umbraco.Configuration/Umbraco.Configuration.csproj @@ -26,9 +26,9 @@ - - - + + + diff --git a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj index adb2a95202..5c9da82e77 100644 --- a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj +++ b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj @@ -18,8 +18,8 @@ - - + + diff --git a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj index f0d1dff029..332b93cb0b 100644 --- a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj +++ b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj @@ -100,6 +100,9 @@ 3.1.8 + + 3.1.8 + \ No newline at end of file diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 3682264dfb..9abc624577 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -4,7 +4,7 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Migrations; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Migrations.Upgrade; @@ -20,11 +20,11 @@ namespace Umbraco.Tests.Migrations [UmbracoTest(Database = UmbracoTestOptions.Database.NewEmptyPerTest)] public class AdvancedMigrationTests : TestWithDatabaseBase { + private ILoggerFactory _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + [Test] public void CreateTableOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Migrations .From(string.Empty) .To("done")); - upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); var helper = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion, TestObjects.GetGlobalSettings()); var exists = helper.TableExists("umbracoUser"); @@ -55,8 +55,6 @@ namespace Umbraco.Tests.Migrations [Test] public void DeleteKeysAndIndexesOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -81,7 +79,7 @@ namespace Umbraco.Tests.Migrations .To("a") .To("done")); - upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); scope.Complete(); } } @@ -89,8 +87,6 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateKeysAndIndexesOfTDto() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -118,7 +114,7 @@ namespace Umbraco.Tests.Migrations .To("b") .To("done")); - upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); scope.Complete(); } } @@ -126,8 +122,6 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateKeysAndIndexes() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -155,7 +149,7 @@ namespace Umbraco.Tests.Migrations .To("b") .To("done")); - upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); scope.Complete(); } } @@ -163,8 +157,6 @@ namespace Umbraco.Tests.Migrations [Test] public void CreateColumn() { - var logger = new DebugDiagnosticsLogger(new MessageTemplates()); - var builder = Mock.Of(); Mock.Get(builder) .Setup(x => x.Build(It.IsAny(), It.IsAny())) @@ -189,7 +181,7 @@ namespace Umbraco.Tests.Migrations .To("a") .To("done")); - upgrader.Execute(ScopeProvider, builder, Mock.Of(), logger); + upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); scope.Complete(); } } diff --git a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs index a012e78388..fffdcddd52 100644 --- a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs @@ -2,11 +2,11 @@ using System.Diagnostics; using System.Data.Common; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NPoco; using NUnit.Framework; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.SqlSyntax; @@ -20,14 +20,14 @@ namespace Umbraco.Tests.Migrations [TestFixture] public class AlterMigrationTests { - private ILogger _logger; + private ILogger _logger; private ISqlSyntaxProvider _sqlSyntax; private IUmbracoDatabase _database; [SetUp] public void Setup() { - _logger = Mock.Of(); + _logger = Mock.Of>(); _sqlSyntax = new SqlCeSyntaxProvider(); var dbProviderFactory = DbProviderFactories.GetFactory(Constants.DbProviderNames.SqlServer); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index e862f5f83b..89097a3cba 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -10,6 +10,7 @@ using System.Web.Security; using System.Xml.Linq; using Examine; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Serilog; @@ -172,8 +173,9 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful - var (logger, msLogger, profiler) = GetLoggers(Options.Logger); + var (logger, profiler) = GetLoggers(Options.Logger); var loggerFactoy = GetLoggerFactory(Options.Logger); + var msLogger = loggerFactoy.CreateLogger("msLogger"); var proflogger = new ProfilingLogger(loggerFactoy.CreateLogger("ProfilingLogger"), profiler); IOHelper = TestHelper.IOHelper; @@ -266,8 +268,7 @@ namespace Umbraco.Tests.Testing switch (option) { case UmbracoTestOptions.Logger.Mock: - // TODO: Make factory return mock of ILogger - factory = Mock.Of(); + factory = NullLoggerFactory.Instance; break; case UmbracoTestOptions.Logger.Serilog: factory = LoggerFactory.Create(builder => { builder.AddSerilog(); }); @@ -282,35 +283,31 @@ namespace Umbraco.Tests.Testing return factory; } - protected virtual (ILogger, Microsoft.Extensions.Logging.ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) + protected virtual (ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) { // TODO: Fix this, give the microsoft loggers a name ILogger logger; - Microsoft.Extensions.Logging.ILogger msLogger; IProfiler profiler; switch (option) { case UmbracoTestOptions.Logger.Mock: logger = Mock.Of(); - msLogger = Mock.Of(); profiler = Mock.Of(); break; case UmbracoTestOptions.Logger.Serilog: logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - msLogger = LoggerFactory.Create(builder => builder.AddSerilog()).CreateLogger(""); profiler = new LogProfiler(logger); break; case UmbracoTestOptions.Logger.Console: logger = new ConsoleLogger(new MessageTemplates()); - msLogger = LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger(""); profiler = new LogProfiler(logger); break; default: throw new NotSupportedException($"Logger option {option} is not supported."); } - return (logger, msLogger, profiler); + return (logger, profiler); } protected virtual AppCaches GetAppCaches() @@ -432,7 +429,7 @@ namespace Umbraco.Tests.Testing Assembly.Load("Umbraco.Core"), Assembly.Load("Umbraco.Web"), Assembly.Load("Umbraco.Tests"), - Assembly.Load("Umbraco.Infrastructure") + Assembly.Load("Umbraco.Infrastructure"), }); } diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index 191a70d765..aa533f20b7 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -95,9 +95,12 @@ + + 3.1.8 + From 8c31a4d6e6971276c7f752db439dec9d2945c92b Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 17 Sep 2020 15:16:13 +0200 Subject: [PATCH 35/85] Fix issue with dll not found --- src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj | 6 +++--- .../Umbraco.Tests.Integration.csproj | 4 ++-- src/Umbraco.Tests/Umbraco.Tests.csproj | 4 ++++ src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj | 4 ++-- src/Umbraco.Web.Common/Umbraco.Web.Common.csproj | 6 +++--- src/Umbraco.Web.UI.NetCore/Umbraco.Web.UI.NetCore.csproj | 2 +- src/Umbraco.Web/Umbraco.Web.csproj | 8 ++++---- 7 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj index 5c9da82e77..a306ebe581 100644 --- a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj +++ b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj @@ -13,15 +13,15 @@ - + - - + + diff --git a/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj b/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj index 072f15bcd1..635c4591cb 100644 --- a/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj +++ b/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj @@ -15,9 +15,9 @@ - + - + diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index aa533f20b7..4d92721636 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -33,6 +33,10 @@ + + true + true + true full diff --git a/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj b/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj index 1c66edc2ce..b5ead8896a 100644 --- a/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj +++ b/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj @@ -16,9 +16,9 @@ - + - + diff --git a/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj b/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj index ee657e82bb..7b8cda5e10 100644 --- a/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj +++ b/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj @@ -21,11 +21,11 @@ - - + + - + diff --git a/src/Umbraco.Web.UI.NetCore/Umbraco.Web.UI.NetCore.csproj b/src/Umbraco.Web.UI.NetCore/Umbraco.Web.UI.NetCore.csproj index 39df6b94ef..2479880d16 100644 --- a/src/Umbraco.Web.UI.NetCore/Umbraco.Web.UI.NetCore.csproj +++ b/src/Umbraco.Web.UI.NetCore/Umbraco.Web.UI.NetCore.csproj @@ -71,7 +71,7 @@ - + diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index 8d91f76d8b..0e03d1e0ce 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -24,7 +24,7 @@ prompt 4 false - latest + 8 ..\UnusedCode.ruleset @@ -36,7 +36,7 @@ 4 bin\Release\Umbraco.Web.xml false - latest + 8 @@ -86,8 +86,8 @@ - - + + From 1dad22403a3b7904e4de54ddda24d94758cc996d Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 17 Sep 2020 15:20:24 +0200 Subject: [PATCH 36/85] Fix issue with dll not found --- src/Umbraco.Tests.Common/Umbraco.Tests.Common.csproj | 2 +- src/Umbraco.Tests/Umbraco.Tests.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Tests.Common/Umbraco.Tests.Common.csproj b/src/Umbraco.Tests.Common/Umbraco.Tests.Common.csproj index 68d3f23ac4..0557069bd9 100644 --- a/src/Umbraco.Tests.Common/Umbraco.Tests.Common.csproj +++ b/src/Umbraco.Tests.Common/Umbraco.Tests.Common.csproj @@ -5,7 +5,7 @@ - + diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index 4d92721636..35e5160c57 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -122,7 +122,7 @@ - + From 1b7bd7bcd9180871307de57219e60ad49c1eeef3 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 17 Sep 2020 15:31:32 +0200 Subject: [PATCH 37/85] Register ILogger<> --- src/Umbraco.Tests/IO/FileSystemsTests.cs | 8 ++++++++ src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Tests/IO/FileSystemsTests.cs b/src/Umbraco.Tests/IO/FileSystemsTests.cs index c1d3fbb331..6fde147f10 100644 --- a/src/Umbraco.Tests/IO/FileSystemsTests.cs +++ b/src/Umbraco.Tests/IO/FileSystemsTests.cs @@ -1,6 +1,8 @@ using System; using System.IO; using System.Text; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -16,6 +18,7 @@ using Umbraco.Tests.TestHelpers; using Umbraco.Core.Composing.CompositionExtensions; using Current = Umbraco.Web.Composing.Current; using FileSystems = Umbraco.Core.IO.FileSystems; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.IO { @@ -35,6 +38,10 @@ namespace Umbraco.Tests.IO composition.Register(_ => Mock.Of()); composition.Register(_ => Mock.Of()); composition.Register(_ => Mock.Of()); + + composition.Register(new NullLoggerFactory()); + composition.Register(typeof(Microsoft.Extensions.Logging.ILogger<>), typeof(Logger<>)); + composition.Register(_ => TestHelper.ShortStringHelper); composition.Register(_ => TestHelper.IOHelper); composition.RegisterUnique(); @@ -44,6 +51,7 @@ namespace Umbraco.Tests.IO composition.Configs.Add(() => SettingsForTests.DefaultGlobalSettings); composition.Configs.Add(SettingsForTests.GenerateMockContentSettings); + composition.ComposeFileSystems(); composition.Configs.Add(SettingsForTests.GenerateMockContentSettings); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 89097a3cba..936262046e 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -198,7 +198,8 @@ namespace Umbraco.Tests.Testing Composition = new Composition(register, typeLoader, proflogger, ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache); - + Composition.Register(new NullLoggerFactory()); + Composition.Register(typeof(Microsoft.Extensions.Logging.ILogger<>), typeof(Logger<>)); Composition.RegisterUnique(IOHelper); Composition.RegisterUnique(UriUtility); From df7617ec98092330074ded358d569da74852f531 Mon Sep 17 00:00:00 2001 From: Mole Date: Fri, 18 Sep 2020 08:39:38 +0200 Subject: [PATCH 38/85] Register NullLogger in ComponentTests --- src/Umbraco.Tests.Common/TestHelperBase.cs | 4 +++- src/Umbraco.Tests/Components/ComponentTests.cs | 15 +++++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/Umbraco.Tests.Common/TestHelperBase.cs b/src/Umbraco.Tests.Common/TestHelperBase.cs index c3f977e3c7..ff0496d444 100644 --- a/src/Umbraco.Tests.Common/TestHelperBase.cs +++ b/src/Umbraco.Tests.Common/TestHelperBase.cs @@ -1,6 +1,8 @@ using System; using System.IO; using System.Reflection; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Umbraco.Core; using Umbraco.Core.Cache; @@ -35,7 +37,7 @@ namespace Umbraco.Tests.Common { SettingsForTests = new SettingsForTests(); MainDom = new SimpleMainDom(); - _typeFinder = new TypeFinder(Mock.Of>(), new DefaultUmbracoAssemblyProvider(entryAssembly), new VaryingRuntimeHash()); + _typeFinder = new TypeFinder(NullLoggerFactory.Instance.CreateLogger(), new DefaultUmbracoAssemblyProvider(entryAssembly), new VaryingRuntimeHash()); } public ITypeFinder GetTypeFinder() => _typeFinder; diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index 5772657f11..1a687d2ea4 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -33,17 +33,19 @@ namespace Umbraco.Tests.Components // FIXME: use IUmbracoDatabaseFactory vs UmbracoDatabaseFactory, clean it all up! var mock = new Mock(); - - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; + var logger = loggerFactory.CreateLogger("GenericLogger"); var typeFinder = TestHelper.GetTypeFinder(); - var f = new UmbracoDatabaseFactory(Mock.Of>(), Mock.Of(), SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); - var fs = new FileSystems(mock.Object, Mock.Of>(), NullLoggerFactory.Instance, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); + var f = new UmbracoDatabaseFactory(loggerFactory.CreateLogger(), loggerFactory, SettingsForTests.DefaultGlobalSettings, Mock.Of(), new Lazy(() => new MapperCollection(Enumerable.Empty())), TestHelper.DbProviderFactoryCreator); + var fs = new FileSystems(mock.Object, loggerFactory.CreateLogger(), loggerFactory, TestHelper.IOHelper, SettingsForTests.GenerateMockGlobalSettings(), TestHelper.GetHostingEnvironment()); var coreDebug = Mock.Of(); var mediaFileSystem = Mock.Of(); - var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, Mock.Of>(), Mock.Of(), typeFinder, NoAppCache.Instance); + var p = new ScopeProvider(f, fs, coreDebug, mediaFileSystem, loggerFactory.CreateLogger(), loggerFactory, typeFinder, NoAppCache.Instance); mock.Setup(x => x.GetInstance(typeof (ILogger))).Returns(logger); - mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(Mock.Of(), Mock.Of())); + mock.Setup(x => x.GetInstance(typeof (Umbraco.Core.Logging.ILogger))).Returns(Mock.Of()); + mock.Setup(x => x.GetInstance(typeof(ILoggerFactory))).Returns(loggerFactory); + mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(logger, Mock.Of())); mock.Setup(x => x.GetInstance(typeof (IUmbracoDatabaseFactory))).Returns(f); mock.Setup(x => x.GetInstance(typeof (IScopeProvider))).Returns(p); @@ -94,6 +96,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(Core.Logging.ILogger)) return Mock.Of(); throw new NotSupportedException(type.FullName); }); }); From 578e8c4f9e009a774b68a55eb76d4d52efdd4fac Mon Sep 17 00:00:00 2001 From: Mole Date: Fri, 18 Sep 2020 14:37:19 +0200 Subject: [PATCH 39/85] Use MS ILogger for DataEditor --- src/Umbraco.Core/Composing/Current.cs | 1 - .../Manifest/DataEditorConverter.cs | 10 ++++----- .../Manifest/ManifestParser.cs | 16 +++++++++----- .../Media/UploadAutoFillProperties.cs | 6 ++--- .../Packaging/PackageDataInstallation.cs | 10 +++++---- .../BlockEditorPropertyEditor.cs | 6 ++--- .../BlockListPropertyEditor.cs | 6 ++--- .../CheckBoxListPropertyEditor.cs | 10 ++++----- .../ColorPickerPropertyEditor.cs | 8 +++---- .../ContentPickerPropertyEditor.cs | 6 ++--- .../PropertyEditors/DataEditor.cs | 10 +++++---- .../PropertyEditors/DateTimePropertyEditor.cs | 10 ++++----- .../PropertyEditors/DecimalPropertyEditor.cs | 9 ++++---- .../DropDownFlexiblePropertyEditor.cs | 10 ++++----- .../EmailAddressPropertyEditor.cs | 8 +++---- .../FileUploadPropertyEditor.cs | 8 +++---- .../PropertyEditors/GridPropertyEditor.cs | 6 ++--- .../ImageCropperPropertyEditor.cs | 10 ++++----- .../ImageCropperPropertyValueEditor.cs | 6 ++--- .../PropertyEditors/IntegerPropertyEditor.cs | 8 +++---- .../PropertyEditors/LabelPropertyEditor.cs | 8 +++---- .../PropertyEditors/ListViewPropertyEditor.cs | 10 ++++----- .../PropertyEditors/MarkdownPropertyEditor.cs | 8 +++---- .../MediaPickerPropertyEditor.cs | 6 ++--- .../MemberGroupPickerPropertyEditor.cs | 8 +++---- .../MemberPickerPropertyEditor.cs | 8 +++---- .../MultiNodeTreePickerPropertyEditor.cs | 6 ++--- .../MultiUrlPickerPropertyEditor.cs | 8 +++---- .../MultiUrlPickerValueEditor.cs | 6 ++--- .../MultipleTextStringPropertyEditor.cs | 6 ++--- .../PropertyEditors/MultipleValueEditor.cs | 6 ++--- .../NestedContentPropertyEditor.cs | 12 +++++----- .../ContentTypeParameterEditor.cs | 6 ++--- .../MultipleContentPickerParameterEditor.cs | 8 +++---- .../MultipleContentTypeParameterEditor.cs | 6 ++--- .../MultipleMediaPickerParameterEditor.cs | 7 +++--- .../MultiplePropertyGroupParameterEditor.cs | 6 ++--- .../MultiplePropertyTypeParameterEditor.cs | 7 +++--- .../PropertyGroupParameterEditor.cs | 6 ++--- .../PropertyTypeParameterEditor.cs | 6 ++--- .../RadioButtonsPropertyEditor.cs | 8 +++---- .../RichTextEditorPastedImages.cs | 6 ++--- .../PropertyEditors/RichTextPropertyEditor.cs | 6 ++--- .../PropertyEditors/SliderPropertyEditor.cs | 8 +++---- .../PropertyEditors/TagsPropertyEditor.cs | 6 ++--- .../PropertyEditors/TextAreaPropertyEditor.cs | 8 +++---- .../PropertyEditors/TextboxPropertyEditor.cs | 8 +++---- .../TrueFalsePropertyEditor.cs | 8 +++---- .../UserPickerPropertyEditor.cs | 8 +++---- .../PropertyEditors/VoidEditor.cs | 16 +++++++------- .../Builders/DataEditorBuilder.cs | 3 ++- .../Filters/ContentModelValidatorTests.cs | 11 +++++----- .../Manifest/ManifestParserTests.cs | 5 ++++- .../Models/ContentExtensionsTests.cs | 3 ++- src/Umbraco.Tests/Models/ContentTests.cs | 3 ++- src/Umbraco.Tests/Models/MediaXmlTest.cs | 3 ++- src/Umbraco.Tests/Models/VariationTests.cs | 3 ++- .../Packaging/PackageDataInstallationTests.cs | 11 +++++----- .../Packaging/PackageInstallationTest.cs | 6 +++-- .../Persistence/Querying/ExpressionTests.cs | 3 ++- .../DataTypeDefinitionRepositoryTest.cs | 22 +++++++++---------- .../Repositories/DocumentRepositoryTest.cs | 2 +- .../PropertyEditors/ColorListValidatorTest.cs | 13 +++++++---- ...ataValueReferenceFactoryCollectionTests.cs | 7 +++--- .../EnsureUniqueValuesValidatorTest.cs | 15 ++++++++----- .../MultiValuePropertyEditorTests.cs | 5 +++-- .../Published/ConvertersTests.cs | 12 +++++----- .../Published/NestedContentTests.cs | 7 +++--- .../Published/PropertyCacheLevelTests.cs | 7 +++--- .../PublishedContent/NuCacheChildrenTests.cs | 3 ++- .../PublishedContent/NuCacheTests.cs | 3 ++- .../PublishedContentDataTableTests.cs | 3 ++- .../PublishedContentSnapshotTestBase.cs | 3 ++- .../PublishedContentTestBase.cs | 8 ++++--- .../PublishedContent/PublishedContentTests.cs | 18 ++++++++------- .../SolidPublishedSnapshot.cs | 3 ++- .../Routing/MediaUrlProviderTests.cs | 7 +++--- .../Services/CachedDataTypeServiceTests.cs | 2 +- .../Services/DataTypeServiceTests.cs | 4 ++-- src/Umbraco.Tests/TestHelpers/BaseWebTest.cs | 3 ++- .../Controllers/ContentTypeController.cs | 11 ++++++---- 81 files changed, 324 insertions(+), 275 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 84a9b1ecc0..2a4559c652 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -9,7 +9,6 @@ using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Microsoft.Extensions.Logging.Abstractions; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Composing { diff --git a/src/Umbraco.Infrastructure/Manifest/DataEditorConverter.cs b/src/Umbraco.Infrastructure/Manifest/DataEditorConverter.cs index 9a6b37a9bb..94b868f145 100644 --- a/src/Umbraco.Infrastructure/Manifest/DataEditorConverter.cs +++ b/src/Umbraco.Infrastructure/Manifest/DataEditorConverter.cs @@ -1,9 +1,9 @@ using System; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core.Composing; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Serialization; using Umbraco.Core.Services; @@ -16,7 +16,7 @@ namespace Umbraco.Core.Manifest /// internal class DataEditorConverter : JsonReadConverter { - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IIOHelper _ioHelper; private readonly IDataTypeService _dataTypeService; private readonly ILocalizationService _localizationService; @@ -26,9 +26,9 @@ namespace Umbraco.Core.Manifest /// /// Initializes a new instance of the class. /// - public DataEditorConverter(ILogger logger, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService textService, IShortStringHelper shortStringHelper) + public DataEditorConverter(ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService textService, IShortStringHelper shortStringHelper) { - _logger = logger; + _loggerFactory = loggerFactory; _ioHelper = ioHelper; _dataTypeService = dataTypeService; _localizationService = localizationService; @@ -61,7 +61,7 @@ namespace Umbraco.Core.Manifest type = EditorType.MacroParameter; } - return new DataEditor(_logger, _dataTypeService, _localizationService, _textService, _shortStringHelper, type); + return new DataEditor(_loggerFactory, _dataTypeService, _localizationService, _textService, _shortStringHelper, type); } /// diff --git a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs index 40c97c16a9..7392506d2b 100644 --- a/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs +++ b/src/Umbraco.Infrastructure/Manifest/ManifestParser.cs @@ -3,10 +3,10 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core.Cache; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Serialization; using Umbraco.Core.Services; @@ -19,13 +19,14 @@ namespace Umbraco.Core.Manifest /// public class ManifestParser : IManifestParser { + private readonly ILoggerFactory _loggerFactory; private readonly IJsonSerializer _jsonSerializer; private readonly ILocalizedTextService _localizedTextService; private readonly IShortStringHelper _shortStringHelper; private static readonly string Utf8Preamble = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); private readonly IAppPolicyCache _cache; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; private readonly IDataTypeService _dataTypeService; private readonly ILocalizationService _localizationService; @@ -41,15 +42,17 @@ namespace Umbraco.Core.Manifest AppCaches appCaches, ManifestValueValidatorCollection validators, ManifestFilterCollection filters, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, IJsonSerializer jsonSerializer, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : this(appCaches, validators, filters, "~/App_Plugins", logger, ioHelper, dataTypeService, localizationService) + : this(appCaches, validators, filters, "~/App_Plugins", logger, loggerFactory, ioHelper, dataTypeService, localizationService) { + _loggerFactory = loggerFactory; _jsonSerializer = jsonSerializer; _localizedTextService = localizedTextService; _shortStringHelper = shortStringHelper; @@ -58,7 +61,7 @@ namespace Umbraco.Core.Manifest /// /// Initializes a new instance of the class. /// - private ManifestParser(AppCaches appCaches, ManifestValueValidatorCollection validators, ManifestFilterCollection filters, string path, ILogger logger, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService) + private ManifestParser(AppCaches appCaches, ManifestValueValidatorCollection validators, ManifestFilterCollection filters, string path, ILogger logger, ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService) { if (appCaches == null) throw new ArgumentNullException(nameof(appCaches)); _cache = appCaches.RuntimeCache; @@ -70,6 +73,7 @@ namespace Umbraco.Core.Manifest if (path == null) throw new ArgumentNullException(nameof(path)); if (string.IsNullOrWhiteSpace(path)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(path)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _ioHelper = ioHelper; Path = path; @@ -189,7 +193,7 @@ namespace Umbraco.Core.Manifest if (string.IsNullOrWhiteSpace(text)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(text)); var manifest = JsonConvert.DeserializeObject(text, - new DataEditorConverter(_logger, _ioHelper, _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper), + new DataEditorConverter(_loggerFactory, _ioHelper, _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper), new ValueValidatorConverter(_validators), new DashboardAccessRuleConverter()); diff --git a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs index d69de29b94..ff35979fd5 100644 --- a/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs +++ b/src/Umbraco.Infrastructure/Media/UploadAutoFillProperties.cs @@ -2,12 +2,12 @@ using System.Drawing; using System.IO; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; namespace Umbraco.Web.Media @@ -18,12 +18,12 @@ namespace Umbraco.Web.Media public class UploadAutoFillProperties { private readonly IMediaFileSystem _mediaFileSystem; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ContentSettings _contentSettings; public UploadAutoFillProperties( IMediaFileSystem mediaFileSystem, - ILogger logger, + ILogger logger, IOptions contentSettings) { _mediaFileSystem = mediaFileSystem ?? throw new ArgumentNullException(nameof(mediaFileSystem)); diff --git a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs index 51a19fb4ba..16f4a8bc25 100644 --- a/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs +++ b/src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs @@ -5,11 +5,11 @@ using System.Linq; using System.Net; using System.Xml.Linq; using System.Xml.XPath; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Core.Collections; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Packaging; @@ -23,7 +23,8 @@ namespace Umbraco.Core.Packaging { public class PackageDataInstallation { - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IFileService _fileService; private readonly IMacroService _macroService; private readonly ILocalizationService _localizationService; @@ -37,12 +38,13 @@ namespace Umbraco.Core.Packaging private readonly IContentTypeService _contentTypeService; private readonly IContentService _contentService; - public PackageDataInstallation(ILogger logger, IFileService fileService, IMacroService macroService, ILocalizationService localizationService, + public PackageDataInstallation(ILogger logger, ILoggerFactory loggerFactory, IFileService fileService, IMacroService macroService, ILocalizationService localizationService, IDataTypeService dataTypeService, IEntityService entityService, IContentTypeService contentTypeService, IContentService contentService, PropertyEditorCollection propertyEditors, IScopeProvider scopeProvider, IShortStringHelper shortStringHelper, IOptions globalSettings, ILocalizedTextService localizedTextService) { _logger = logger; + _loggerFactory = loggerFactory; _fileService = fileService; _macroService = macroService; _localizationService = localizationService; @@ -904,7 +906,7 @@ namespace Umbraco.Core.Packaging var editorAlias = dataTypeElement.Attribute("Id")?.Value?.Trim(); if (!_propertyEditors.TryGet(editorAlias, out var editor)) - editor = new VoidEditor(_logger, _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper) { Alias = editorAlias }; + editor = new VoidEditor(_loggerFactory, _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper) { Alias = editorAlias }; var dataType = new DataType(editor) { diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs index b7d4cce21d..b023b7f457 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs @@ -3,8 +3,8 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Blocks; using Umbraco.Core.Models.Editors; @@ -29,14 +29,14 @@ namespace Umbraco.Web.PropertyEditors private readonly IContentTypeService _contentTypeService; public BlockEditorPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, Lazy propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, ILocalizedTextService localizedTextService, ILocalizationService localizationService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService,localizationService,localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService,localizationService,localizedTextService, shortStringHelper) { _localizedTextService = localizedTextService; _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockListPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockListPropertyEditor.cs index 8426385813..6a23d0da00 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/BlockListPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockListPropertyEditor.cs @@ -2,9 +2,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Blocks; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -27,7 +27,7 @@ namespace Umbraco.Web.PropertyEditors private readonly IIOHelper _ioHelper; public BlockListPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, Lazy propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, @@ -35,7 +35,7 @@ namespace Umbraco.Web.PropertyEditors IIOHelper ioHelper, ILocalizationService localizationService, IShortStringHelper shortStringHelper) - : base(logger, propertyEditors, dataTypeService, contentTypeService, localizedTextService, localizationService, shortStringHelper) + : base(loggerFactory, propertyEditors, dataTypeService, contentTypeService, localizedTextService, localizationService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/CheckBoxListPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/CheckBoxListPropertyEditor.cs index 67f3dd61cd..09600d86ae 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/CheckBoxListPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/CheckBoxListPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -28,8 +28,8 @@ namespace Umbraco.Web.PropertyEditors /// /// The constructor will setup the property editor based on the attribute if one is found /// - public CheckBoxListPropertyEditor(ILogger logger, ILocalizedTextService textService, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, IIOHelper ioHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService,localizedTextService, shortStringHelper) + public CheckBoxListPropertyEditor(ILoggerFactory loggerFactory, ILocalizedTextService textService, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, IIOHelper ioHelper, ILocalizedTextService localizedTextService) + : base(loggerFactory, dataTypeService, localizationService,localizedTextService, shortStringHelper) { _textService = textService; _dataTypeService = dataTypeService; @@ -43,6 +43,6 @@ namespace Umbraco.Web.PropertyEditors protected override IConfigurationEditor CreateConfigurationEditor() => new ValueListConfigurationEditor(_textService, _ioHelper); /// - protected override IDataValueEditor CreateValueEditor() => new MultipleValueEditor(Logger, _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper, Attribute); + protected override IDataValueEditor CreateValueEditor() => new MultipleValueEditor(LoggerFactory.CreateLogger(), _dataTypeService, _localizationService, _localizedTextService, _shortStringHelper, Attribute); } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ColorPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ColorPickerPropertyEditor.cs index 0f6996ddd4..575609a934 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ColorPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ColorPickerPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -17,8 +17,8 @@ namespace Umbraco.Web.PropertyEditors { private readonly IIOHelper _ioHelper; - public ColorPickerPropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public ColorPickerPropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ContentPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ContentPickerPropertyEditor.cs index 4c996fd4fc..4c172ccb2e 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ContentPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ContentPickerPropertyEditor.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -30,10 +30,10 @@ namespace Umbraco.Web.PropertyEditors IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService,localizationService,localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService,localizationService,localizedTextService, shortStringHelper) { _dataTypeService = dataTypeService; _localizationService = localizationService; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs index 1c52a007dd..40cf73b169 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.Diagnostics; using System.Runtime.Serialization; +using Microsoft.Extensions.Logging; using Umbraco.Composing; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -27,13 +27,14 @@ namespace Umbraco.Core.PropertyEditors /// /// Initializes a new instance of the class. /// - public DataEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, EditorType type = EditorType.PropertyValue) + public DataEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, EditorType type = EditorType.PropertyValue) { - Logger = logger ?? throw new ArgumentNullException(nameof(logger)); + LoggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); DataTypeService = dataTypeService ?? throw new ArgumentNullException(nameof(dataTypeService)); LocalizationService = localizationService ?? throw new ArgumentNullException(nameof(localizationService)); LocalizedTextService = localizedTextService ?? throw new ArgumentNullException(nameof(localizedTextService)); ShortStringHelper = shortStringHelper ?? throw new ArgumentNullException(nameof(shortStringHelper)); + Logger = LoggerFactory.CreateLogger(); // defaults @@ -61,12 +62,13 @@ namespace Umbraco.Core.PropertyEditors protected IShortStringHelper ShortStringHelper { get; } protected ILocalizedTextService LocalizedTextService { get; } protected ILocalizationService LocalizationService { get; } + protected ILoggerFactory LoggerFactory { get; } protected IDataTypeService DataTypeService { get; } /// /// Gets a logger. /// - protected ILogger Logger { get; } + protected ILogger Logger { get; } /// [DataMember(Name = "alias", IsRequired = true)] diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DateTimePropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DateTimePropertyEditor.cs index d2a08c3a2b..db4c6734a8 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DateTimePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DateTimePropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -23,9 +23,9 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - /// - public DateTimePropertyEditor(ILogger logger, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService,localizedTextService, shortStringHelper) + /// + public DateTimePropertyEditor(ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService,localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DecimalPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DecimalPropertyEditor.cs index e5ca56878f..8d2280b23b 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DecimalPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DecimalPropertyEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.PropertyEditors.Validators; using Umbraco.Core.Services; @@ -21,12 +21,13 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - public DecimalPropertyEditor(ILogger logger, + public DecimalPropertyEditor( + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } /// diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexiblePropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexiblePropertyEditor.cs index 73ce726257..66f605bc36 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexiblePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexiblePropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -21,8 +21,8 @@ namespace Umbraco.Web.PropertyEditors private readonly IShortStringHelper _shortStringHelper; private readonly IIOHelper _ioHelper; - public DropDownFlexiblePropertyEditor(ILocalizedTextService textService, ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, IIOHelper ioHelper) - : base(logger, dataTypeService, localizationService, textService, shortStringHelper) + public DropDownFlexiblePropertyEditor(ILocalizedTextService textService, ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, IIOHelper ioHelper) + : base(loggerFactory, dataTypeService, localizationService, textService, shortStringHelper) { _textService = textService; _dataTypeService = dataTypeService; @@ -33,7 +33,7 @@ namespace Umbraco.Web.PropertyEditors protected override IDataValueEditor CreateValueEditor() { - return new MultipleValueEditor(Logger, _dataTypeService, _localizationService, _textService, _shortStringHelper, Attribute); + return new MultipleValueEditor(LoggerFactory.CreateLogger(), _dataTypeService, _localizationService, _textService, _shortStringHelper, Attribute); } protected override IConfigurationEditor CreateConfigurationEditor() => new DropDownFlexibleConfigurationEditor(_textService, _ioHelper); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs index c5bcaf0f86..2cdfd4f7eb 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.PropertyEditors.Validators; using Umbraco.Core.Services; @@ -22,13 +22,13 @@ namespace Umbraco.Web.PropertyEditors /// The constructor will setup the property editor based on the attribute if one is found /// public EmailAddressPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs index d4c5130b21..c755d1ee0f 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs @@ -1,12 +1,12 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -31,21 +31,21 @@ namespace Umbraco.Web.PropertyEditors private readonly ILocalizedTextService _localizedTextService; public FileUploadPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IMediaFileSystem mediaFileSystem, IOptions contentSettings, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _mediaFileSystem = mediaFileSystem ?? throw new ArgumentNullException(nameof(mediaFileSystem)); _contentSettings = contentSettings.Value; _dataTypeService = dataTypeService; _localizationService = localizationService; _localizedTextService = localizedTextService; - _uploadAutoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, logger, contentSettings); + _uploadAutoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, loggerFactory.CreateLogger(), contentSettings); } /// diff --git a/src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs index e061766ebc..c34ce59fe6 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Media; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; @@ -36,7 +36,7 @@ namespace Umbraco.Web.PropertyEditors private readonly IImageUrlGenerator _imageUrlGenerator; public GridPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IUmbracoContextAccessor umbracoContextAccessor, IDataTypeService dataTypeService, ILocalizationService localizationService, @@ -47,7 +47,7 @@ namespace Umbraco.Web.PropertyEditors IIOHelper ioHelper, IShortStringHelper shortStringHelper, IImageUrlGenerator imageUrlGenerator) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _umbracoContextAccessor = umbracoContextAccessor; _ioHelper = ioHelper; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs index a0bd50b3ec..c01bf43fbc 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs @@ -2,13 +2,13 @@ using System.Collections.Generic; using System.Linq; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -41,7 +41,7 @@ namespace Umbraco.Web.PropertyEditors /// Initializes a new instance of the class. /// public ImageCropperPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IMediaFileSystem mediaFileSystem, IOptions contentSettings, IDataTypeService dataTypeService, @@ -49,7 +49,7 @@ namespace Umbraco.Web.PropertyEditors IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _mediaFileSystem = mediaFileSystem ?? throw new ArgumentNullException(nameof(mediaFileSystem)); _contentSettings = contentSettings.Value ?? throw new ArgumentNullException(nameof(contentSettings)); @@ -58,7 +58,7 @@ namespace Umbraco.Web.PropertyEditors _ioHelper = ioHelper; // TODO: inject? - _autoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, logger, contentSettings); + _autoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, loggerFactory.CreateLogger(), contentSettings); } public bool TryGetMediaPath(string alias, object value, out string mediaPath) @@ -76,7 +76,7 @@ namespace Umbraco.Web.PropertyEditors /// Creates the corresponding property value editor. /// /// The corresponding property value editor. - protected override IDataValueEditor CreateValueEditor() => new ImageCropperPropertyValueEditor(Attribute, Logger, _mediaFileSystem, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, _contentSettings); + protected override IDataValueEditor CreateValueEditor() => new ImageCropperPropertyValueEditor(Attribute, LoggerFactory.CreateLogger(), _mediaFileSystem, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, _contentSettings); /// /// Creates the corresponding preValue editor. diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs index 0ab2ae0287..6a1f3072d4 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs @@ -1,10 +1,10 @@ using System; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; @@ -20,13 +20,13 @@ namespace Umbraco.Web.PropertyEditors /// internal class ImageCropperPropertyValueEditor : DataValueEditor // TODO: core vs web? { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IMediaFileSystem _mediaFileSystem; private readonly ContentSettings _contentSettings; public ImageCropperPropertyValueEditor( DataEditorAttribute attribute, - ILogger logger, + ILogger logger, IMediaFileSystem mediaFileSystem, IDataTypeService dataTypeService, ILocalizationService localizationService, diff --git a/src/Umbraco.Infrastructure/PropertyEditors/IntegerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/IntegerPropertyEditor.cs index 49e49e005a..417ec112d7 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/IntegerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/IntegerPropertyEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.PropertyEditors.Validators; using Umbraco.Core.Services; @@ -18,8 +18,8 @@ namespace Umbraco.Web.PropertyEditors ValueType = ValueTypes.Integer)] public class IntegerPropertyEditor : DataEditor { - public IntegerPropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService,localizedTextService, shortStringHelper) + public IntegerPropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) + : base(loggerFactory, dataTypeService, localizationService,localizedTextService, shortStringHelper) { } /// diff --git a/src/Umbraco.Infrastructure/PropertyEditors/LabelPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/LabelPropertyEditor.cs index f91c8efdd1..639a9c928d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/LabelPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/LabelPropertyEditor.cs @@ -1,7 +1,5 @@ -using Umbraco.Composing; -using Umbraco.Core.Composing; +using Microsoft.Extensions.Logging; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -23,8 +21,8 @@ namespace Umbraco.Core.PropertyEditors /// /// Initializes a new instance of the class. /// - public LabelPropertyEditor(ILogger logger, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizedTextService localizedTextService, ILocalizationService localizationService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public LabelPropertyEditor(ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizedTextService localizedTextService, ILocalizationService localizationService, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ListViewPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ListViewPropertyEditor.cs index f46743f0cc..e01258eb80 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ListViewPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ListViewPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -24,15 +24,15 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - /// + /// public ListViewPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper iioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _iioHelper = iioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MarkdownPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MarkdownPropertyEditor.cs index 167b05df53..ab4e6f3d97 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MarkdownPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MarkdownPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -25,13 +25,13 @@ namespace Umbraco.Web.PropertyEditors /// Initializes a new instance of the class. /// public MarkdownPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MediaPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MediaPickerPropertyEditor.cs index f0c5110e1e..476674b1ff 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MediaPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MediaPickerPropertyEditor.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -28,13 +28,13 @@ namespace Umbraco.Web.PropertyEditors /// Initializes a new instance of the class. /// public MediaPickerPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MemberGroupPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MemberGroupPickerPropertyEditor.cs index fd1bd0d102..eb50d02284 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MemberGroupPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MemberGroupPickerPropertyEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -16,12 +16,12 @@ namespace Umbraco.Web.PropertyEditors public class MemberGroupPickerPropertyEditor : DataEditor { public MemberGroupPickerPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MemberPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MemberPickerPropertyEditor.cs index 092e790e51..3676340aee 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MemberPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MemberPickerPropertyEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -16,12 +16,12 @@ namespace Umbraco.Web.PropertyEditors public class MemberPickerPropertyEditor : DataEditor { public MemberPickerPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } protected override IConfigurationEditor CreateConfigurationEditor() => new MemberPickerConfiguration(); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs index f1ed4e6c44..fc80aabdd9 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -20,8 +20,8 @@ namespace Umbraco.Web.PropertyEditors { private readonly IIOHelper _ioHelper; - public MultiNodeTreePickerPropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IIOHelper ioHelper, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public MultiNodeTreePickerPropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IIOHelper ioHelper, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerPropertyEditor.cs index 1be4067763..e88849002b 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerPropertyEditor.cs @@ -1,8 +1,8 @@ using System; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; using Umbraco.Core.PropertyEditors; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Strings; using Umbraco.Web.PublishedCache; @@ -26,8 +26,8 @@ namespace Umbraco.Web.PropertyEditors private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly IPublishedUrlProvider _publishedUrlProvider; - public MultiUrlPickerPropertyEditor(ILogger logger, Lazy entityService, IPublishedSnapshotAccessor publishedSnapshotAccessor, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, IUmbracoContextAccessor umbracoContextAccessor, IPublishedUrlProvider publishedUrlProvider) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper, EditorType.PropertyValue) + public MultiUrlPickerPropertyEditor(ILoggerFactory loggerFactory, Lazy entityService, IPublishedSnapshotAccessor publishedSnapshotAccessor, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, IUmbracoContextAccessor umbracoContextAccessor, IPublishedUrlProvider publishedUrlProvider) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper, EditorType.PropertyValue) { _entityService = entityService ?? throw new ArgumentNullException(nameof(entityService)); _publishedSnapshotAccessor = publishedSnapshotAccessor ?? throw new ArgumentNullException(nameof(publishedSnapshotAccessor)); @@ -38,6 +38,6 @@ namespace Umbraco.Web.PropertyEditors protected override IConfigurationEditor CreateConfigurationEditor() => new MultiUrlPickerConfigurationEditor(_ioHelper); - protected override IDataValueEditor CreateValueEditor() => new MultiUrlPickerValueEditor(_entityService.Value, _publishedSnapshotAccessor, Logger, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, Attribute, _umbracoContextAccessor, _publishedUrlProvider); + protected override IDataValueEditor CreateValueEditor() => new MultiUrlPickerValueEditor(_entityService.Value, _publishedSnapshotAccessor, LoggerFactory.CreateLogger(), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, Attribute, _umbracoContextAccessor, _publishedUrlProvider); } } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs index 30d1197eb6..b6afa0a1b5 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs @@ -3,8 +3,8 @@ using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.Models.Entities; @@ -20,12 +20,12 @@ namespace Umbraco.Web.PropertyEditors public class MultiUrlPickerValueEditor : DataValueEditor, IDataValueReference { private readonly IEntityService _entityService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly IPublishedUrlProvider _publishedUrlProvider; private readonly IPublishedSnapshotAccessor _publishedSnapshotAccessor; - public MultiUrlPickerValueEditor(IEntityService entityService, IPublishedSnapshotAccessor publishedSnapshotAccessor, ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, DataEditorAttribute attribute, IUmbracoContextAccessor umbracoContextAccessor, IPublishedUrlProvider publishedUrlProvider) + public MultiUrlPickerValueEditor(IEntityService entityService, IPublishedSnapshotAccessor publishedSnapshotAccessor, ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, DataEditorAttribute attribute, IUmbracoContextAccessor umbracoContextAccessor, IPublishedUrlProvider publishedUrlProvider) : base(dataTypeService, localizationService, localizedTextService, shortStringHelper, attribute) { _entityService = entityService ?? throw new ArgumentNullException(nameof(entityService)); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringPropertyEditor.cs index 8aba505aed..b4e1287315 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringPropertyEditor.cs @@ -2,11 +2,11 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.Exceptions; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; @@ -36,8 +36,8 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - public MultipleTextStringPropertyEditor(ILogger logger, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public MultipleTextStringPropertyEditor(ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; _dataTypeService = dataTypeService; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultipleValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultipleValueEditor.cs index 40525bff79..a960ac51ad 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/MultipleValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/MultipleValueEditor.cs @@ -1,8 +1,8 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -18,9 +18,9 @@ namespace Umbraco.Web.PropertyEditors /// public class MultipleValueEditor : DataValueEditor { - private readonly ILogger _logger; + private readonly ILogger _logger; - public MultipleValueEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, DataEditorAttribute attribute) + public MultipleValueEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper, DataEditorAttribute attribute) : base(dataTypeService, localizationService, localizedTextService, shortStringHelper, attribute) { _logger = logger; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs index 70d3aa53e6..b257f69e98 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs @@ -1,11 +1,11 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; @@ -35,7 +35,7 @@ namespace Umbraco.Web.PropertyEditors public const string ContentTypeAliasPropertyKey = "ncContentTypeAlias"; public NestedContentPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, Lazy propertyEditors, IDataTypeService dataTypeService, ILocalizationService localizationService, @@ -43,7 +43,7 @@ namespace Umbraco.Web.PropertyEditors IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base (logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base (loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _propertyEditors = propertyEditors; _contentTypeService = contentTypeService; @@ -62,14 +62,14 @@ namespace Umbraco.Web.PropertyEditors #region Value Editor - protected override IDataValueEditor CreateValueEditor() => new NestedContentPropertyValueEditor(DataTypeService, LocalizationService, LocalizedTextService, _contentTypeService, ShortStringHelper, Attribute, PropertyEditors, Logger); + protected override IDataValueEditor CreateValueEditor() => new NestedContentPropertyValueEditor(DataTypeService, LocalizationService, LocalizedTextService, _contentTypeService, ShortStringHelper, Attribute, PropertyEditors, LoggerFactory.CreateLogger()); internal class NestedContentPropertyValueEditor : DataValueEditor, IDataValueReference { private readonly PropertyEditorCollection _propertyEditors; private readonly IContentTypeService _contentTypeService; private readonly IDataTypeService _dataTypeService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly NestedContentValues _nestedContentValues; private readonly Lazy> _contentTypes; @@ -82,7 +82,7 @@ namespace Umbraco.Web.PropertyEditors IShortStringHelper shortStringHelper, DataEditorAttribute attribute, PropertyEditorCollection propertyEditors, - ILogger logger) + ILogger logger) : base(dataTypeService, localizationService, localizedTextService, shortStringHelper, attribute) { _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/ContentTypeParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/ContentTypeParameterEditor.cs index 726963b9c5..2da9e184c3 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/ContentTypeParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/ContentTypeParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -19,12 +19,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors /// Initializes a new instance of the class. /// public ContentTypeParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", false); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentPickerParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentPickerParameterEditor.cs index a514a47a01..d416cf111a 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentPickerParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentPickerParameterEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -20,12 +20,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors /// Initializes a new instance of the class. /// public MultipleContentPickerParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiPicker", "1"); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentTypeParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentTypeParameterEditor.cs index 7097f951c6..613d6a6a5e 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentTypeParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleContentTypeParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -13,12 +13,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors public class MultipleContentTypeParameterEditor : DataEditor { public MultipleContentTypeParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", true); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleMediaPickerParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleMediaPickerParameterEditor.cs index 7b6a965706..73a3b42610 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleMediaPickerParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultipleMediaPickerParameterEditor.cs @@ -1,5 +1,5 @@ using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -20,12 +20,13 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors /// /// Initializes a new instance of the class. /// - public MultipleMediaPickerParameterEditor(ILogger logger, + public MultipleMediaPickerParameterEditor( + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { DefaultConfiguration.Add("multiPicker", "1"); } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyGroupParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyGroupParameterEditor.cs index da98492442..16cd596fc8 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyGroupParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyGroupParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -13,12 +13,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors public class MultiplePropertyGroupParameterEditor : DataEditor { public MultiplePropertyGroupParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", true); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyTypeParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyTypeParameterEditor.cs index 46a5652455..e9576fab02 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyTypeParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/MultiplePropertyTypeParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -12,12 +12,13 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors "entitypicker")] public class MultiplePropertyTypeParameterEditor : DataEditor { - public MultiplePropertyTypeParameterEditor(ILogger logger, + public MultiplePropertyTypeParameterEditor( + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", "1"); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyGroupParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyGroupParameterEditor.cs index d331fee6ee..345afa3b46 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyGroupParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyGroupParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -13,12 +13,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors public class PropertyGroupParameterEditor : DataEditor { public PropertyGroupParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", "0"); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyTypeParameterEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyTypeParameterEditor.cs index affcd4738d..be682a35d3 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyTypeParameterEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ParameterEditors/PropertyTypeParameterEditor.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -13,12 +13,12 @@ namespace Umbraco.Web.PropertyEditors.ParameterEditors public class PropertyTypeParameterEditor : DataEditor { public PropertyTypeParameterEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { // configure DefaultConfiguration.Add("multiple", "0"); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RadioButtonsPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/RadioButtonsPropertyEditor.cs index f6b24e5859..6a863b1dd1 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/RadioButtonsPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/RadioButtonsPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -25,13 +25,13 @@ namespace Umbraco.Web.PropertyEditors /// The constructor will setup the property editor based on the attribute if one is found /// public RadioButtonsPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService,localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService,localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs index d7d795c175..cd8b228a6f 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs @@ -1,11 +1,11 @@ using System; using System.Collections.Generic; using System.IO; +using Microsoft.Extensions.Logging; using HtmlAgilityPack; using Umbraco.Core; using Umbraco.Core.Exceptions; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Media; using Umbraco.Core.Models; using Umbraco.Core.Services; @@ -19,7 +19,7 @@ namespace Umbraco.Web.PropertyEditors public sealed class RichTextEditorPastedImages { private readonly IUmbracoContextAccessor _umbracoContextAccessor; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; private readonly IMediaService _mediaService; private readonly IContentTypeBaseServiceProvider _contentTypeBaseServiceProvider; @@ -29,7 +29,7 @@ namespace Umbraco.Web.PropertyEditors const string TemporaryImageDataAttribute = "data-tmpimg"; - public RichTextEditorPastedImages(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger, IIOHelper ioHelper, IMediaService mediaService, IContentTypeBaseServiceProvider contentTypeBaseServiceProvider, IMediaFileSystem mediaFileSystem, IShortStringHelper shortStringHelper, IPublishedUrlProvider publishedUrlProvider) + public RichTextEditorPastedImages(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger, IIOHelper ioHelper, IMediaService mediaService, IContentTypeBaseServiceProvider contentTypeBaseServiceProvider, IMediaFileSystem mediaFileSystem, IShortStringHelper shortStringHelper, IPublishedUrlProvider publishedUrlProvider) { _umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs index 2f283b2709..bf867ce648 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Media; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; @@ -39,7 +39,7 @@ namespace Umbraco.Web.PropertyEditors /// The constructor will setup the property editor based on the attribute if one is found /// public RichTextPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IUmbracoContextAccessor umbracoContextAccessor, IDataTypeService dataTypeService, ILocalizationService localizationService, @@ -50,7 +50,7 @@ namespace Umbraco.Web.PropertyEditors IIOHelper ioHelper, ILocalizedTextService localizedTextService, IImageUrlGenerator imageUrlGenerator) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _umbracoContextAccessor = umbracoContextAccessor; _imageSourceParser = imageSourceParser; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/SliderPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/SliderPropertyEditor.cs index 88bfc3f4e3..bb62c3461d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/SliderPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/SliderPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -23,13 +23,13 @@ namespace Umbraco.Web.PropertyEditors /// Initializes a new instance of the class. /// public SliderPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/TagsPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/TagsPropertyEditor.cs index 7fccd3a15f..708f4d8c9f 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/TagsPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/TagsPropertyEditor.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Editors; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -29,13 +29,13 @@ namespace Umbraco.Web.PropertyEditors public TagsPropertyEditor( ManifestValueValidatorCollection validators, - ILogger logger, + ILoggerFactory loggerFactory, IIOHelper ioHelper, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _validators = validators; _ioHelper = ioHelper; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/TextAreaPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/TextAreaPropertyEditor.cs index dd3c1fd350..8d173e58bc 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/TextAreaPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/TextAreaPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -28,8 +28,8 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - public TextAreaPropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService,shortStringHelper) + public TextAreaPropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService,shortStringHelper) { _dataTypeService = dataTypeService; _localizationService = localizationService; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/TextboxPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/TextboxPropertyEditor.cs index b89f5e228a..1ec87abe9b 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/TextboxPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/TextboxPropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -27,8 +27,8 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - public TextboxPropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService,localizedTextService, shortStringHelper) + public TextboxPropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) + : base(loggerFactory, dataTypeService, localizationService,localizedTextService, shortStringHelper) { _dataTypeService = dataTypeService; _localizationService = localizationService; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/TrueFalsePropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/TrueFalsePropertyEditor.cs index 0bfa5899c9..db72887fff 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/TrueFalsePropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/TrueFalsePropertyEditor.cs @@ -1,6 +1,6 @@ -using Umbraco.Core; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -25,8 +25,8 @@ namespace Umbraco.Web.PropertyEditors /// /// Initializes a new instance of the class. /// - public TrueFalsePropertyEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public TrueFalsePropertyEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, IIOHelper ioHelper, IShortStringHelper shortStringHelper, ILocalizedTextService localizedTextService) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { _ioHelper = ioHelper; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/UserPickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/UserPickerPropertyEditor.cs index 194924adf1..891fb54ee3 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/UserPickerPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/UserPickerPropertyEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -16,12 +16,12 @@ namespace Umbraco.Web.PropertyEditors public class UserPickerPropertyEditor : DataEditor { public UserPickerPropertyEditor( - ILogger logger, + ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } protected override IConfigurationEditor CreateConfigurationEditor() => new UserPickerConfiguration(); diff --git a/src/Umbraco.Infrastructure/PropertyEditors/VoidEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/VoidEditor.cs index f9a90a1323..e26cd4129a 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/VoidEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/VoidEditor.cs @@ -1,5 +1,5 @@ -using Umbraco.Core.Composing; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Composing; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -18,11 +18,11 @@ namespace Umbraco.Core.PropertyEditors /// Initializes a new instance of the class. /// /// An optional alias suffix. - /// A logger. + /// A logger factory. /// The default alias of the editor is "Umbraco.Void". When a suffix is provided, /// it is appended to the alias. Eg if the suffix is "Foo" the alias is "Umbraco.Void.Foo". - public VoidEditor(string aliasSuffix, ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public VoidEditor(string aliasSuffix, ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { Alias = "Umbraco.Void"; if (string.IsNullOrWhiteSpace(aliasSuffix)) return; @@ -32,10 +32,10 @@ namespace Umbraco.Core.PropertyEditors /// /// Initializes a new instance of the class. /// - /// A logger. + /// A logger factory. /// The alias of the editor is "Umbraco.Void". - public VoidEditor(ILogger logger, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : this(null, logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + public VoidEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) + : this(null, loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } } } diff --git a/src/Umbraco.Tests.Common/Builders/DataEditorBuilder.cs b/src/Umbraco.Tests.Common/Builders/DataEditorBuilder.cs index 5e6b174f56..f7185d1620 100644 --- a/src/Umbraco.Tests.Common/Builders/DataEditorBuilder.cs +++ b/src/Umbraco.Tests.Common/Builders/DataEditorBuilder.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Umbraco.Core.Logging; using Umbraco.Core.PropertyEditors; @@ -38,7 +39,7 @@ namespace Umbraco.Tests.Common.Builders var explicitValueEditor = _explicitValueEditorBuilder.Build(); return new DataEditor( - Mock.Of(), + NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs b/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs index 236338390b..92d275b7bf 100644 --- a/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs +++ b/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using System.Linq; using Umbraco.Core.Services; - using Umbraco.Core.Logging; using Umbraco.Web.Models.ContentEditing; using Umbraco.Tests.Testing; using Umbraco.Core.PropertyEditors; @@ -12,6 +11,7 @@ using System.ComponentModel.DataAnnotations; using Microsoft.AspNetCore.Mvc.ModelBinding; using Microsoft.Extensions.DependencyInjection; + using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Umbraco.Core; @@ -25,6 +25,7 @@ using Umbraco.Web.BackOffice.ModelBinders; using Umbraco.Web.Security; using DataType = Umbraco.Core.Models.DataType; + using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Web.Validation { @@ -273,9 +274,9 @@ [DataEditor("complexTest", "test", "test")] public class ComplexTestEditor : NestedContentPropertyEditor { - public ComplexTestEditor(ILogger logger, Lazy propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, ILocalizationService localizationService, + public ComplexTestEditor(ILoggerFactory loggerFactory, Lazy propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, ILocalizationService localizationService, IIOHelper ioHelper, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, propertyEditors, dataTypeService, localizationService, contentTypeService, ioHelper, shortStringHelper, localizedTextService) + : base(loggerFactory, propertyEditors, dataTypeService, localizationService, contentTypeService, ioHelper, shortStringHelper, localizedTextService) { } @@ -291,12 +292,12 @@ [DataEditor("test", "test", "test")] // This alias aligns with the prop editor alias for all properties created from MockedContentTypes.CreateTextPageContentType public class TestEditor : DataEditor { - public TestEditor(ILogger logger, + public TestEditor(ILoggerFactory loggerFactory, IDataTypeService dataTypeService, ILocalizationService localizationService, ILocalizedTextService localizedTextService, IShortStringHelper shortStringHelper) - : base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper) + : base(loggerFactory, dataTypeService, localizationService, localizedTextService, shortStringHelper) { } diff --git a/src/Umbraco.Tests/Manifest/ManifestParserTests.cs b/src/Umbraco.Tests/Manifest/ManifestParserTests.cs index 661c9cff0e..7cca4fdec0 100644 --- a/src/Umbraco.Tests/Manifest/ManifestParserTests.cs +++ b/src/Umbraco.Tests/Manifest/ManifestParserTests.cs @@ -2,6 +2,8 @@ using System.Linq; using Moq; using System.Text; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Newtonsoft.Json; using Newtonsoft.Json.Linq; @@ -32,7 +34,8 @@ namespace Umbraco.Tests.Manifest new RegexValidator(Mock.Of(), null), new DelimitedValueValidator(), }; - _parser = new ManifestParser(AppCaches.Disabled, new ManifestValueValidatorCollection(validators), new ManifestFilterCollection(Array.Empty()), Mock.Of(), TestHelper.IOHelper, Mock.Of(), Mock.Of(), new JsonNetSerializer(), Mock.Of(), Mock.Of()); + var loggerFactory = NullLoggerFactory.Instance; + _parser = new ManifestParser(AppCaches.Disabled, new ManifestValueValidatorCollection(validators), new ManifestFilterCollection(Array.Empty()), loggerFactory.CreateLogger(), loggerFactory, TestHelper.IOHelper, Mock.Of(), Mock.Of(), new JsonNetSerializer(), Mock.Of(), Mock.Of()); } [Test] diff --git a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs index 1b2f30db16..459406f01f 100644 --- a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs +++ b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -31,7 +32,7 @@ namespace Umbraco.Tests.Models Composition.Register(_ => Mock.Of()); // all this is required so we can validate properties... - var editor = new TextboxPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), IOHelper, ShortStringHelper, LocalizedTextService) { Alias = "test" }; + var editor = new TextboxPropertyEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), IOHelper, ShortStringHelper, LocalizedTextService) { Alias = "test" }; Composition.Register(_ => new DataEditorCollection(new[] { editor })); Composition.Register(); var dataType = Mock.Of(); diff --git a/src/Umbraco.Tests/Models/ContentTests.cs b/src/Umbraco.Tests/Models/ContentTests.cs index 9e56d07348..4166c5e7a2 100644 --- a/src/Umbraco.Tests/Models/ContentTests.cs +++ b/src/Umbraco.Tests/Models/ContentTests.cs @@ -7,6 +7,7 @@ using System.Threading; using Microsoft.CodeAnalysis.Options; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Newtonsoft.Json; using Umbraco.Core; @@ -45,7 +46,7 @@ namespace Umbraco.Tests.Models Composition.Register(_ => Mock.Of()); // all this is required so we can validate properties... - var editor = new TextboxPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), IOHelper, ShortStringHelper, LocalizedTextService) { Alias = "test" }; + var editor = new TextboxPropertyEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), IOHelper, ShortStringHelper, LocalizedTextService) { Alias = "test" }; Composition.Register(_ => new DataEditorCollection(new [] { editor })); Composition.Register(); var dataType = Mock.Of(); diff --git a/src/Umbraco.Tests/Models/MediaXmlTest.cs b/src/Umbraco.Tests/Models/MediaXmlTest.cs index 593a581f85..3e07499c1f 100644 --- a/src/Umbraco.Tests/Models/MediaXmlTest.cs +++ b/src/Umbraco.Tests/Models/MediaXmlTest.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -35,7 +36,7 @@ namespace Umbraco.Tests.Models var contentSettings = new ContentSettingsBuilder().Build(); var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, logger, ShortStringHelper); - var ignored = new FileUploadPropertyEditor(Mock.Of(), mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); + var ignored = new FileUploadPropertyEditor(NullLoggerFactory.Instance, mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); var media = MockedMedia.CreateMediaImage(mediaType, -1); media.WriterId = -1; // else it's zero and that's not a user and it breaks the tests diff --git a/src/Umbraco.Tests/Models/VariationTests.cs b/src/Umbraco.Tests/Models/VariationTests.cs index e811d06db1..42e024de35 100644 --- a/src/Umbraco.Tests/Models/VariationTests.cs +++ b/src/Umbraco.Tests/Models/VariationTests.cs @@ -1,4 +1,5 @@ using System; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -37,7 +38,7 @@ namespace Umbraco.Tests.Models var dataEditors = new DataEditorCollection(new IDataEditor[] { - new DataEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of()) { Alias = "editor", ExplicitValueEditor = TestHelper.CreateDataValueEditor("view") } + new DataEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of()) { Alias = "editor", ExplicitValueEditor = TestHelper.CreateDataValueEditor("view") } }); var propertyEditors = new PropertyEditorCollection(dataEditors); diff --git a/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs b/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs index ed1cd5424d..11f3a8d181 100644 --- a/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs +++ b/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs @@ -2,11 +2,11 @@ using System.Linq; using System.Threading; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Packaging; using Umbraco.Core.Packaging; @@ -19,6 +19,7 @@ using Umbraco.Tests.Testing; using Umbraco.Core.Composing.CompositionExtensions; using Umbraco.Core.Strings; using Umbraco.Tests.Common.Builders; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Packaging { @@ -32,8 +33,8 @@ namespace Umbraco.Tests.Packaging [DataEditor("7e062c13-7c41-4ad9-b389-41d88aeef87c", "Editor1", "editor1")] public class Editor1 : DataEditor { - public Editor1(ILogger logger) - : base(logger, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of()) + public Editor1(ILoggerFactory loggerFactory) + : base(loggerFactory, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of()) { } } @@ -42,8 +43,8 @@ namespace Umbraco.Tests.Packaging [DataEditor("d15e1281-e456-4b24-aa86-1dda3e4299d5", "Editor2", "editor2")] public class Editor2 : DataEditor { - public Editor2(ILogger logger) - : base(logger, Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of()) + public Editor2(ILoggerFactory loggerFactory) + : base(loggerFactory, Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of()) { } } diff --git a/src/Umbraco.Tests/Packaging/PackageInstallationTest.cs b/src/Umbraco.Tests/Packaging/PackageInstallationTest.cs index 3b4edd28c1..80fe1d7239 100644 --- a/src/Umbraco.Tests/Packaging/PackageInstallationTest.cs +++ b/src/Umbraco.Tests/Packaging/PackageInstallationTest.cs @@ -2,6 +2,8 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -54,7 +56,7 @@ namespace Umbraco.Tests.Packaging Microsoft.Extensions.Options.Options.Create(new GlobalSettingsBuilder().Build())); private PackageDataInstallation PackageDataInstallation => new PackageDataInstallation( - Logger, ServiceContext.FileService, ServiceContext.MacroService, ServiceContext.LocalizationService, + NullLoggerFactory.Instance.CreateLogger(), NullLoggerFactory.Instance, ServiceContext.FileService, ServiceContext.MacroService, ServiceContext.LocalizationService, ServiceContext.DataTypeService, ServiceContext.EntityService, ServiceContext.ContentTypeService, ServiceContext.ContentService, Factory.GetInstance(), @@ -126,7 +128,7 @@ namespace Umbraco.Tests.Packaging public void Can_Read_Compiled_Package_Warnings() { //copy a file to the same path that the package will install so we can detect file conflicts - + var filePath = Path.Combine(_testBaseFolder.FullName, "bin", "Auros.DocumentTypePicker.dll"); Directory.CreateDirectory(Path.GetDirectoryName(filePath)); File.WriteAllText(filePath, "test"); diff --git a/src/Umbraco.Tests/Persistence/Querying/ExpressionTests.cs b/src/Umbraco.Tests/Persistence/Querying/ExpressionTests.cs index 656e34846a..3da803505f 100644 --- a/src/Umbraco.Tests/Persistence/Querying/ExpressionTests.cs +++ b/src/Umbraco.Tests/Persistence/Querying/ExpressionTests.cs @@ -12,6 +12,7 @@ using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Persistence.SqlSyntax; using Umbraco.Tests.TestHelpers; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -26,7 +27,7 @@ namespace Umbraco.Tests.Persistence.Querying [Test] public void Equals_Claus_With_Two_Entity_Values() { - var dataType = new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) + var dataType = new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 12345 }; diff --git a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs index 468d4cf7c9..576269bc8b 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs @@ -37,9 +37,9 @@ namespace Umbraco.Tests.Persistence.Repositories using (provider.CreateScope()) { var dtRepo = CreateRepository(); - IDataType dataType1 = new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt1" }; + IDataType dataType1 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt1" }; dtRepo.Save(dataType1); - IDataType dataType2 = new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt2" }; + IDataType dataType2 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt2" }; dtRepo.Save(dataType2); var ctRepo = Factory.GetInstance(); @@ -107,14 +107,14 @@ namespace Umbraco.Tests.Persistence.Repositories var container2 = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah2", ParentId = container1.Id }; containerRepository.Save(container2); - var dataType = (IDataType) new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container2.Id) + var dataType = (IDataType) new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container2.Id) { Name = "dt1" }; repository.Save(dataType); //create a - var dataType2 = (IDataType)new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), dataType.Id) + var dataType2 = (IDataType)new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), dataType.Id) { Name = "dt2" }; @@ -186,7 +186,7 @@ namespace Umbraco.Tests.Persistence.Repositories var container = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah" }; containerRepository.Save(container); - var dataTypeDefinition = new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; + var dataTypeDefinition = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; repository.Save(dataTypeDefinition); Assert.AreEqual(container.Id, dataTypeDefinition.ParentId); @@ -206,7 +206,7 @@ namespace Umbraco.Tests.Persistence.Repositories var container = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah" }; containerRepository.Save(container); - IDataType dataType = new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; + IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; repository.Save(dataType); // Act @@ -229,7 +229,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (provider.CreateScope()) { var repository = CreateRepository(); - IDataType dataType = new DataType(new RadioButtonsPropertyEditor(Logger, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) {Name = "test"}; + IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) {Name = "test"}; repository.Save(dataType); @@ -350,7 +350,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new LabelPropertyEditor(Logger, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper)) + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", @@ -388,7 +388,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new IntegerPropertyEditor(Logger, DataTypeService, LocalizationService, ShortStringHelper, LocalizedTextService)) + var dataTypeDefinition = new DataType(new IntegerPropertyEditor(LoggerFactory_, DataTypeService, LocalizationService, ShortStringHelper, LocalizedTextService)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", @@ -399,7 +399,7 @@ namespace Umbraco.Tests.Persistence.Repositories // Act var definition = repository.Get(dataTypeDefinition.Id); definition.Name = "AgeDataType Updated"; - definition.Editor = new LabelPropertyEditor(Logger, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper); //change + definition.Editor = new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper); //change repository.Save(definition); var definitionUpdated = repository.Get(dataTypeDefinition.Id); @@ -419,7 +419,7 @@ namespace Umbraco.Tests.Persistence.Repositories using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new LabelPropertyEditor(Logger, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", diff --git a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs index 8a2d9547e7..af3b6fccbe 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs @@ -363,7 +363,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository dataTypeDefinitionRepository); - var editor = new DecimalPropertyEditor(Logger, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); + var editor = new DecimalPropertyEditor(LoggerFactory_, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); var dtd = new DataType(editor) { Name = "test", DatabaseType = ValueStorageType.Decimal }; dataTypeDefinitionRepository.Save(dtd); diff --git a/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs b/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs index f140e6a239..feabd09571 100644 --- a/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs +++ b/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs @@ -1,22 +1,27 @@ using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Newtonsoft.Json.Linq; -using Umbraco.Core.Logging; +using NUnit.Framework.Internal; using Umbraco.Core.Services; using Umbraco.Tests.TestHelpers; using Umbraco.Web.PropertyEditors; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PropertyEditors { [TestFixture] public class ColorListValidatorTest { + private ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; + [Test] public void Only_Tests_On_JArray() { var validator = new ColorPickerConfigurationEditor.ColorListValidator(); - var result = validator.Validate("hello", null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + var result = validator.Validate("hello", null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(0, result.Count()); } @@ -24,7 +29,7 @@ namespace Umbraco.Tests.PropertyEditors public void Only_Tests_On_JArray_Of_Item_JObject() { var validator = new ColorPickerConfigurationEditor.ColorListValidator(); - var result = validator.Validate(new JArray("hello", "world"), null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + var result = validator.Validate(new JArray("hello", "world"), null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(0, result.Count()); } @@ -37,7 +42,7 @@ namespace Umbraco.Tests.PropertyEditors JObject.FromObject(new { value = "zxcvzxcvxzcv" }), JObject.FromObject(new { value = "ABC" }), JObject.FromObject(new { value = "1234567" })), - null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(2, result.Count()); } } diff --git a/src/Umbraco.Tests/PropertyEditors/DataValueReferenceFactoryCollectionTests.cs b/src/Umbraco.Tests/PropertyEditors/DataValueReferenceFactoryCollectionTests.cs index 24ac9cdbf4..47c50a894d 100644 --- a/src/Umbraco.Tests/PropertyEditors/DataValueReferenceFactoryCollectionTests.cs +++ b/src/Umbraco.Tests/PropertyEditors/DataValueReferenceFactoryCollectionTests.cs @@ -3,6 +3,7 @@ using NUnit.Framework; using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Umbraco.Core; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -34,7 +35,7 @@ namespace Umbraco.Tests.PropertyEditors // label does not implement IDataValueReference var labelEditor = new LabelPropertyEditor( - Mock.Of(), + NullLoggerFactory.Instance, IOHelper, DataTypeService, LocalizedTextService, @@ -102,7 +103,7 @@ namespace Umbraco.Tests.PropertyEditors // mediaPicker does implement IDataValueReference var mediaPicker = new MediaPickerPropertyEditor( - Mock.Of(), + NullLoggerFactory.Instance, DataTypeService, LocalizationService, IOHelper, @@ -170,7 +171,7 @@ namespace Umbraco.Tests.PropertyEditors // mediaPicker does implement IDataValueReference var mediaPicker = new MediaPickerPropertyEditor( - Mock.Of(), + NullLoggerFactory.Instance, DataTypeService, LocalizationService, IOHelper, diff --git a/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs b/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs index f3c3fb4672..e5ad16795c 100644 --- a/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs +++ b/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs @@ -1,22 +1,25 @@ using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Newtonsoft.Json.Linq; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Tests.TestHelpers; using Umbraco.Web.PropertyEditors; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PropertyEditors { [TestFixture] public class EnsureUniqueValuesValidatorTest { + private ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; [Test] public void Only_Tests_On_JArray() { var validator = new ValueListUniqueValueValidator(); - var result = validator.Validate("hello", null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + var result = validator.Validate("hello", null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(0, result.Count()); } @@ -24,7 +27,7 @@ namespace Umbraco.Tests.PropertyEditors public void Only_Tests_On_JArray_Of_Item_JObject() { var validator = new ValueListUniqueValueValidator(); - var result = validator.Validate(new JArray("hello", "world"), null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + var result = validator.Validate(new JArray("hello", "world"), null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(0, result.Count()); } @@ -32,7 +35,7 @@ namespace Umbraco.Tests.PropertyEditors public void Allows_Unique_Values() { var validator = new ValueListUniqueValueValidator(); - var result = validator.Validate(new JArray(JObject.FromObject(new { value = "hello" }), JObject.FromObject(new { value = "world" })), null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + var result = validator.Validate(new JArray(JObject.FromObject(new { value = "hello" }), JObject.FromObject(new { value = "world" })), null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(0, result.Count()); } @@ -41,7 +44,7 @@ namespace Umbraco.Tests.PropertyEditors { var validator = new ValueListUniqueValueValidator(); var result = validator.Validate(new JArray(JObject.FromObject(new { value = "hello" }), JObject.FromObject(new { value = "hello" })), - null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(1, result.Count()); } @@ -54,7 +57,7 @@ namespace Umbraco.Tests.PropertyEditors JObject.FromObject(new { value = "hello" }), JObject.FromObject(new { value = "world" }), JObject.FromObject(new { value = "world" })), - null, new ColorPickerPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); + null, new ColorPickerPropertyEditor(_loggerFactory, Mock.Of(), Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())); Assert.AreEqual(2, result.Count()); } } diff --git a/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs b/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs index 152a751a7b..1e0519d2ef 100644 --- a/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs +++ b/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Globalization; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Newtonsoft.Json; using NUnit.Framework; @@ -31,7 +32,7 @@ namespace Umbraco.Tests.PropertyEditors [Test] public void DropDownMultipleValueEditor_Format_Data_For_Cache() { - var dataType = new DataType(new CheckBoxListPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, Mock.Of())) + var dataType = new DataType(new CheckBoxListPropertyEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, Mock.Of())) { Configuration = new ValueListConfiguration { @@ -60,7 +61,7 @@ namespace Umbraco.Tests.PropertyEditors [Test] public void DropDownValueEditor_Format_Data_For_Cache() { - var dataType = new DataType(new CheckBoxListPropertyEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, Mock.Of())) + var dataType = new DataType(new CheckBoxListPropertyEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), TestHelper.IOHelper, Mock.Of())) { Configuration = new ValueListConfiguration { diff --git a/src/Umbraco.Tests/Published/ConvertersTests.cs b/src/Umbraco.Tests/Published/ConvertersTests.cs index 5f1fd7c3fd..94ea1270f3 100644 --- a/src/Umbraco.Tests/Published/ConvertersTests.cs +++ b/src/Umbraco.Tests/Published/ConvertersTests.cs @@ -1,6 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -35,7 +37,7 @@ namespace Umbraco.Tests.Published }); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var contentTypeFactory = new PublishedContentTypeFactory(Mock.Of(), converters, dataTypeService); @@ -115,7 +117,7 @@ namespace Umbraco.Tests.Published }); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var contentTypeFactory = new PublishedContentTypeFactory(Mock.Of(), converters, dataTypeService); @@ -185,7 +187,7 @@ namespace Umbraco.Tests.Published var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); composition.WithCollectionBuilder() - .Append() + .Append() .Append(); IPublishedModelFactory factory = new PublishedModelFactory(new[] @@ -209,8 +211,8 @@ namespace Umbraco.Tests.Published var converters = registerFactory.GetInstance(); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }, - new DataType(new VoidEditor("2", Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of(), Mock.Of())) { Id = 2 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }, + new DataType(new VoidEditor("2", NullLoggerFactory.Instance, Mock.Of(),Mock.Of(), Mock.Of(), Mock.Of())) { Id = 2 }); var contentTypeFactory = new PublishedContentTypeFactory(factory, converters, dataTypeService); diff --git a/src/Umbraco.Tests/Published/NestedContentTests.cs b/src/Umbraco.Tests/Published/NestedContentTests.cs index b4e53e3d11..c2d230dec9 100644 --- a/src/Umbraco.Tests/Published/NestedContentTests.cs +++ b/src/Umbraco.Tests/Published/NestedContentTests.cs @@ -2,6 +2,7 @@ using System.Collections; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -27,13 +28,13 @@ namespace Umbraco.Tests.Published private (IPublishedContentType, IPublishedContentType) CreateContentTypes() { var logger = Mock.Of(); - var coreLogger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var profiler = Mock.Of(); var proflog = new ProfilingLogger(logger, profiler); var localizationService = Mock.Of(); PropertyEditorCollection editors = null; - var editor = new NestedContentPropertyEditor(coreLogger, new Lazy(() => editors), Mock.Of(),localizationService, Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of()); + var editor = new NestedContentPropertyEditor(loggerFactory, new Lazy(() => editors), Mock.Of(),localizationService, Mock.Of(), TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of()); editors = new PropertyEditorCollection(new DataEditorCollection(new DataEditor[] { editor })); var dataType1 = new DataType(editor) @@ -64,7 +65,7 @@ namespace Umbraco.Tests.Published } }; - var dataType3 = new DataType(new TextboxPropertyEditor(coreLogger, Mock.Of(), localizationService, TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())) + var dataType3 = new DataType(new TextboxPropertyEditor(loggerFactory, Mock.Of(), localizationService, TestHelper.IOHelper, TestHelper.ShortStringHelper, Mock.Of())) { Id = 3 }; diff --git a/src/Umbraco.Tests/Published/PropertyCacheLevelTests.cs b/src/Umbraco.Tests/Published/PropertyCacheLevelTests.cs index 8aeaf37f7f..e200c1c92d 100644 --- a/src/Umbraco.Tests/Published/PropertyCacheLevelTests.cs +++ b/src/Umbraco.Tests/Published/PropertyCacheLevelTests.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -35,7 +36,7 @@ namespace Umbraco.Tests.Published }); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var publishedContentTypeFactory = new PublishedContentTypeFactory(Mock.Of(), converters, dataTypeService); @@ -116,7 +117,7 @@ namespace Umbraco.Tests.Published }); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var publishedContentTypeFactory = new PublishedContentTypeFactory(Mock.Of(), converters, dataTypeService); @@ -193,7 +194,7 @@ namespace Umbraco.Tests.Published }); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var publishedContentTypeFactory = new PublishedContentTypeFactory(Mock.Of(), converters, dataTypeService); diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs index d132e47a7c..0a329c4719 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs @@ -4,6 +4,7 @@ using System.Data; using System.Linq; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -68,7 +69,7 @@ namespace Umbraco.Tests.PublishedContent Mock.Get(runtime).Setup(x => x.Level).Returns(RuntimeLevel.Run); // create data types, property types and content types - var dataType = new DataType(new VoidEditor("Editor", Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 3 }; + var dataType = new DataType(new VoidEditor("Editor", NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 3 }; var dataTypes = new[] { diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs index 90525e2b32..4e491e742b 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -117,7 +118,7 @@ namespace Umbraco.Tests.PublishedContent Mock.Get(runtime).Setup(x => x.Level).Returns(RuntimeLevel.Run); // create data types, property types and content types - var dataType = new DataType(new VoidEditor("Editor", Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 3 }; + var dataType = new DataType(new VoidEditor("Editor", NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 3 }; var dataTypes = new[] { diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentDataTableTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentDataTableTests.cs index 2d05a8eda1..9010ed1a6a 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentDataTableTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentDataTableTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Web.Composing; @@ -127,7 +128,7 @@ namespace Umbraco.Tests.PublishedContent private IPublishedContent GetContent(bool createChildren, int indexVals) { var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 1 }); var factory = new PublishedContentTypeFactory(Mock.Of(), new PropertyValueConverterCollection(Array.Empty()), dataTypeService); var contentTypeAlias = createChildren ? "Parent" : "Child"; diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index 2e4c6e5fa0..977a788745 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -2,6 +2,7 @@ using System.IO; using System.Linq; using System.Web.Routing; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Umbraco.Core; using Umbraco.Core.Models.PublishedContent; @@ -94,7 +95,7 @@ namespace Umbraco.Tests.PublishedContent private SolidPublishedSnapshot CreatePublishedSnapshot() { var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 1 }); var factory = new PublishedContentTypeFactory(Mock.Of(), new PropertyValueConverterCollection(Array.Empty()), dataTypeService); var caches = new SolidPublishedSnapshot(); diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs index dc23b29c69..058cda093e 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs @@ -1,4 +1,6 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Umbraco.Core; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.PropertyEditors; @@ -44,14 +46,14 @@ namespace Umbraco.Tests.PublishedContent var converters = Factory.GetInstance(); var umbracoContextAccessor = Mock.Of(); var publishedUrlProvider = Mock.Of(); - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var imageSourceParser = new HtmlImageSourceParser(publishedUrlProvider); - var pastedImages = new RichTextEditorPastedImages(umbracoContextAccessor, logger, IOHelper, Mock.Of(), Mock.Of(), Mock.Of(), ShortStringHelper, publishedUrlProvider); + var pastedImages = new RichTextEditorPastedImages(umbracoContextAccessor, loggerFactory.CreateLogger(), IOHelper, Mock.Of(), Mock.Of(), Mock.Of(), ShortStringHelper, publishedUrlProvider); var localLinkParser = new HtmlLocalLinkParser(umbracoContextAccessor, publishedUrlProvider); var dataTypeService = new TestObjects.TestDataTypeService( new DataType(new RichTextPropertyEditor( - Mock.Of(), + loggerFactory, Mock.Of(), Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index 7ce365b84e..dd4474f169 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -2,6 +2,8 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Models.PublishedContent; @@ -46,24 +48,24 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(); Composition.RegisterUnique(); - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var mediaService = Mock.Of(); var mediaFileService = Mock.Of(); var contentTypeBaseServiceProvider = Mock.Of(); var umbracoContextAccessor = Mock.Of(); var publishedUrlProvider = Mock.Of(); var imageSourceParser = new HtmlImageSourceParser(publishedUrlProvider); - var pastedImages = new RichTextEditorPastedImages(umbracoContextAccessor, logger, IOHelper, mediaService, contentTypeBaseServiceProvider, mediaFileService, ShortStringHelper, publishedUrlProvider); + var pastedImages = new RichTextEditorPastedImages(umbracoContextAccessor, loggerFactory.CreateLogger(), IOHelper, mediaService, contentTypeBaseServiceProvider, mediaFileService, ShortStringHelper, publishedUrlProvider); var linkParser = new HtmlLocalLinkParser(umbracoContextAccessor, publishedUrlProvider); var localizationService = Mock.Of(); var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(logger, Mock.Of(), localizationService, LocalizedTextService, ShortStringHelper)) { Id = 1 }, - new DataType(new TrueFalsePropertyEditor(logger, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1001 }, - new DataType(new RichTextPropertyEditor(logger,umbracoContextAccessor, Mock.Of(), localizationService, imageSourceParser, linkParser, pastedImages, ShortStringHelper, IOHelper, LocalizedTextService, Mock.Of())) { Id = 1002 }, - new DataType(new IntegerPropertyEditor(logger, Mock.Of(), localizationService, ShortStringHelper, LocalizedTextService)) { Id = 1003 }, - new DataType(new TextboxPropertyEditor(logger, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1004 }, - new DataType(new MediaPickerPropertyEditor(logger, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1005 }); + new DataType(new VoidEditor(loggerFactory, Mock.Of(), localizationService, LocalizedTextService, ShortStringHelper)) { Id = 1 }, + new DataType(new TrueFalsePropertyEditor(loggerFactory, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1001 }, + new DataType(new RichTextPropertyEditor(loggerFactory,umbracoContextAccessor, Mock.Of(), localizationService, imageSourceParser, linkParser, pastedImages, ShortStringHelper, IOHelper, LocalizedTextService, Mock.Of())) { Id = 1002 }, + new DataType(new IntegerPropertyEditor(loggerFactory, Mock.Of(), localizationService, ShortStringHelper, LocalizedTextService)) { Id = 1003 }, + new DataType(new TextboxPropertyEditor(loggerFactory, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1004 }, + new DataType(new MediaPickerPropertyEditor(loggerFactory, Mock.Of(), localizationService, IOHelper, ShortStringHelper, LocalizedTextService)) { Id = 1005 }); Composition.RegisterUnique(f => dataTypeService); } diff --git a/src/Umbraco.Tests/PublishedContent/SolidPublishedSnapshot.cs b/src/Umbraco.Tests/PublishedContent/SolidPublishedSnapshot.cs index 5ce63874bc..c632627a54 100644 --- a/src/Umbraco.Tests/PublishedContent/SolidPublishedSnapshot.cs +++ b/src/Umbraco.Tests/PublishedContent/SolidPublishedSnapshot.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Umbraco.Core; using Umbraco.Core.Cache; @@ -415,7 +416,7 @@ namespace Umbraco.Tests.PublishedContent static AutoPublishedContentType() { var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 666 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(), Mock.Of(), Mock.Of())) { Id = 666 }); var factory = new PublishedContentTypeFactory(Mock.Of(), new PropertyValueConverterCollection(Array.Empty()), dataTypeService); Default = factory.CreatePropertyType("*", 666); diff --git a/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs b/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs index b134934ee9..2f5a96b52c 100644 --- a/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs +++ b/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using Newtonsoft.Json; using NUnit.Framework; @@ -33,14 +34,14 @@ namespace Umbraco.Tests.Routing { base.SetUp(); - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var mediaFileSystemMock = Mock.Of(); var contentSettings = new ContentSettingsBuilder().Build(); var dataTypeService = Mock.Of(); var propertyEditors = new MediaUrlGeneratorCollection(new IMediaUrlGenerator[] { - new FileUploadPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), - new ImageCropperPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, IOHelper, ShortStringHelper, LocalizedTextService), + new FileUploadPropertyEditor(loggerFactory, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), + new ImageCropperPropertyEditor(loggerFactory, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, IOHelper, ShortStringHelper, LocalizedTextService), }); _mediaUrlProvider = new DefaultMediaUrlProvider(propertyEditors, UriUtility); } diff --git a/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs b/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs index ee08c16bdd..4449d47135 100644 --- a/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs +++ b/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Services { var dataTypeService = ServiceContext.DataTypeService; - IDataType dataType = new DataType(new LabelPropertyEditor(Logger, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; + IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; dataTypeService.Save(dataType); //Get all the first time (no cache) diff --git a/src/Umbraco.Tests/Services/DataTypeServiceTests.cs b/src/Umbraco.Tests/Services/DataTypeServiceTests.cs index c047b04430..f4443b0c37 100644 --- a/src/Umbraco.Tests/Services/DataTypeServiceTests.cs +++ b/src/Umbraco.Tests/Services/DataTypeServiceTests.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Services var dataTypeService = ServiceContext.DataTypeService; // Act - IDataType dataType = new DataType(new LabelPropertyEditor(Logger, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; + IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; dataTypeService.Save(dataType); // Assert @@ -66,7 +66,7 @@ namespace Umbraco.Tests.Services var dataTypeService = ServiceContext.DataTypeService; // Act - var dataTypeDefinition = new DataType(new LabelPropertyEditor(Logger, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = string.Empty, DatabaseType = ValueStorageType.Ntext }; + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = string.Empty, DatabaseType = ValueStorageType.Ntext }; // Act & Assert Assert.Throws(() => dataTypeService.Save(dataTypeDefinition)); diff --git a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs index b366f1f07c..74e630025e 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -45,7 +46,7 @@ namespace Umbraco.Tests.TestHelpers // AutoPublishedContentTypes generates properties automatically var dataTypeService = new TestObjects.TestDataTypeService( - new DataType(new VoidEditor(Mock.Of(), Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); + new DataType(new VoidEditor(NullLoggerFactory.Instance, Mock.Of(), Mock.Of(),Mock.Of(), Mock.Of())) { Id = 1 }); var factory = new PublishedContentTypeFactory(Mock.Of(), new PropertyValueConverterCollection(Array.Empty()), dataTypeService); var type = new AutoPublishedContentType(Guid.NewGuid(), 0, "anything", new PublishedPropertyType[] { }); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs index a96a49ff39..342bf916fa 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs @@ -8,6 +8,7 @@ using System.Text; using System.Threading.Tasks; using System.Xml; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Core; @@ -15,7 +16,6 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Dictionary; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Packaging; using Umbraco.Core.PropertyEditors; @@ -61,7 +61,8 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IShortStringHelper _shortStringHelper; private readonly ILocalizedTextService _localizedTextService; private readonly IFileService _fileService; - private readonly ILogger _logger; + private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IContentService _contentService; private readonly IContentTypeBaseServiceProvider _contentTypeBaseServiceProvider; private readonly ILocalizationService _LocalizationService; @@ -85,7 +86,8 @@ namespace Umbraco.Web.BackOffice.Controllers IDataTypeService dataTypeService, IShortStringHelper shortStringHelper, IFileService fileService, - ILogger logger, + ILogger logger, + ILoggerFactory loggerFactory, IContentService contentService, IContentTypeBaseServiceProvider contentTypeBaseServiceProvider, ILocalizationService localizationService, @@ -114,6 +116,7 @@ namespace Umbraco.Web.BackOffice.Controllers _localizedTextService = localizedTextService; _fileService = fileService; _logger = logger; + _loggerFactory = loggerFactory; _contentService = contentService; _contentTypeBaseServiceProvider = contentTypeBaseServiceProvider; _LocalizationService = localizationService; @@ -616,7 +619,7 @@ namespace Umbraco.Web.BackOffice.Controllers return NotFound(); } - var dataInstaller = new PackageDataInstallation(_logger, _fileService, _macroService, _LocalizationService, + var dataInstaller = new PackageDataInstallation(_loggerFactory.CreateLogger(), _loggerFactory, _fileService, _macroService, _LocalizationService, _dataTypeService, _entityService, _contentTypeService, _contentService, _propertyEditors, _scopeProvider, _shortStringHelper, Options.Create(_globalSettings), _localizedTextService); var xd = new XmlDocument {XmlResolver = null}; From a3d74bb79f807e842b8eab4a44b4a468f1f6fab7 Mon Sep 17 00:00:00 2001 From: Mole Date: Fri, 18 Sep 2020 14:45:22 +0200 Subject: [PATCH 40/85] Remove public Logger from DataEditor It was only used one place where it shouldn't be used --- .../PropertyEditors/BlockEditorPropertyEditor.cs | 6 +++--- src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs | 6 ------ .../PropertyEditors/ImageCropperPropertyEditor.cs | 4 +++- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs index b023b7f457..b1e5fb0199 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs @@ -49,16 +49,16 @@ namespace Umbraco.Web.PropertyEditors #region Value Editor - protected override IDataValueEditor CreateValueEditor() => new BlockEditorPropertyValueEditor(Attribute, PropertyEditors, _dataTypeService, _contentTypeService, _localizedTextService, Logger, LocalizationService,ShortStringHelper); + protected override IDataValueEditor CreateValueEditor() => new BlockEditorPropertyValueEditor(Attribute, PropertyEditors, _dataTypeService, _contentTypeService, _localizedTextService, LoggerFactory.CreateLogger(), LocalizationService,ShortStringHelper); internal class BlockEditorPropertyValueEditor : DataValueEditor, IDataValueReference { private readonly PropertyEditorCollection _propertyEditors; private readonly IDataTypeService _dataTypeService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly BlockEditorValues _blockEditorValues; - public BlockEditorPropertyValueEditor(DataEditorAttribute attribute, PropertyEditorCollection propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, ILocalizedTextService textService, ILogger logger, ILocalizationService localizationService, IShortStringHelper shortStringHelper) + public BlockEditorPropertyValueEditor(DataEditorAttribute attribute, PropertyEditorCollection propertyEditors, IDataTypeService dataTypeService, IContentTypeService contentTypeService, ILocalizedTextService textService, ILogger logger, ILocalizationService localizationService, IShortStringHelper shortStringHelper) : base(dataTypeService, localizationService, textService, shortStringHelper, attribute) { _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs index 40cf73b169..ebac6a763d 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/DataEditor.cs @@ -34,7 +34,6 @@ namespace Umbraco.Core.PropertyEditors LocalizationService = localizationService ?? throw new ArgumentNullException(nameof(localizationService)); LocalizedTextService = localizedTextService ?? throw new ArgumentNullException(nameof(localizedTextService)); ShortStringHelper = shortStringHelper ?? throw new ArgumentNullException(nameof(shortStringHelper)); - Logger = LoggerFactory.CreateLogger(); // defaults @@ -65,11 +64,6 @@ namespace Umbraco.Core.PropertyEditors protected ILoggerFactory LoggerFactory { get; } protected IDataTypeService DataTypeService { get; } - /// - /// Gets a logger. - /// - protected ILogger Logger { get; } - /// [DataMember(Name = "alias", IsRequired = true)] public string Alias { get; internal set; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs index c01bf43fbc..0783012521 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs @@ -36,6 +36,7 @@ namespace Umbraco.Web.PropertyEditors private readonly ILocalizationService _localizationService; private readonly IIOHelper _ioHelper; private readonly UploadAutoFillProperties _autoFillProperties; + private readonly ILogger _logger; /// /// Initializes a new instance of the class. @@ -56,6 +57,7 @@ namespace Umbraco.Web.PropertyEditors _dataTypeService = dataTypeService; _localizationService = localizationService; _ioHelper = ioHelper; + _logger = loggerFactory.CreateLogger(); // TODO: inject? _autoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, loggerFactory.CreateLogger(), contentSettings); @@ -113,7 +115,7 @@ namespace Umbraco.Web.PropertyEditors catch (Exception ex) { if (writeLog) - Logger.LogError(ex, "Could not parse image cropper value '{Json}'", value); + _logger.LogError(ex, "Could not parse image cropper value '{Json}'", value); return null; } } From 20e12c7596d4a27b2dd5368d1d7040ad5ddcc832 Mon Sep 17 00:00:00 2001 From: Mole Date: Fri, 18 Sep 2020 15:27:38 +0200 Subject: [PATCH 41/85] Use MS ILogger in Services --- .../Services/Implement/AuditService.cs | 6 +-- .../Services/Implement/ConsentService.cs | 6 +-- .../Services/Implement/ContentService.cs | 50 ++++++++++--------- .../Services/Implement/ContentTypeService.cs | 6 +-- .../Implement/ContentTypeServiceBase.cs | 8 +-- .../ContentTypeServiceBaseOfTItemTService.cs | 8 +-- ...peServiceBaseOfTRepositoryTItemTService.cs | 16 +++--- .../Services/Implement/DataTypeService.cs | 8 +-- .../Services/Implement/DomainService.cs | 6 +-- .../Services/Implement/EntityService.cs | 6 +-- .../Implement/ExternalLoginService.cs | 6 +-- .../Services/Implement/FileService.cs | 6 +-- .../Services/Implement/LocalizationService.cs | 6 +-- .../Services/Implement/MacroService.cs | 6 +-- .../Services/Implement/MediaService.cs | 6 +-- .../Services/Implement/MediaTypeService.cs | 6 +-- .../Services/Implement/MemberGroupService.cs | 6 +-- .../Services/Implement/MemberService.cs | 8 +-- .../Services/Implement/MemberTypeService.cs | 6 +-- .../Services/Implement/PublicAccessService.cs | 6 +-- .../Services/Implement/RedirectUrlService.cs | 6 +-- .../Services/Implement/RelationService.cs | 10 ++-- .../Services/Implement/RepositoryService.cs | 8 +-- .../Implement/ScopeRepositoryService.cs | 8 +-- .../Implement/ServerRegistrationService.cs | 8 +-- .../Services/Implement/TagService.cs | 6 +-- .../Services/Implement/UserService.cs | 10 ++-- 27 files changed, 121 insertions(+), 117 deletions(-) diff --git a/src/Umbraco.Infrastructure/Services/Implement/AuditService.cs b/src/Umbraco.Infrastructure/Services/Implement/AuditService.cs index 4fa7dad253..77c7b6610f 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/AuditService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/AuditService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Querying; @@ -17,9 +17,9 @@ namespace Umbraco.Core.Services.Implement private readonly IAuditRepository _auditRepository; private readonly IAuditEntryRepository _auditEntryRepository; - public AuditService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public AuditService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IAuditRepository auditRepository, IAuditEntryRepository auditEntryRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _auditRepository = auditRepository; _auditEntryRepository = auditEntryRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs index acc4683d64..1f33d1fe58 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -18,8 +18,8 @@ namespace Umbraco.Core.Services.Implement /// /// Initializes a new instance of the class. /// - public ConsentService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IConsentRepository consentRepository) - : base(provider, logger, eventMessagesFactory) + public ConsentService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IConsentRepository consentRepository) + : base(provider, loggerFactory, eventMessagesFactory) { _consentRepository = consentRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs index 2664b4b2f6..b796f9b686 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentService.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Querying; @@ -29,16 +29,17 @@ namespace Umbraco.Core.Services.Implement private readonly ILanguageRepository _languageRepository; private readonly Lazy _propertyValidationService; private readonly IShortStringHelper _shortStringHelper; + private readonly ILogger _logger; private IQuery _queryNotTrashed; #region Constructors - public ContentService(IScopeProvider provider, ILogger logger, + public ContentService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IDocumentRepository documentRepository, IEntityRepository entityRepository, IAuditRepository auditRepository, IContentTypeRepository contentTypeRepository, IDocumentBlueprintRepository documentBlueprintRepository, ILanguageRepository languageRepository, Lazy propertyValidationService, IShortStringHelper shortStringHelper) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _documentRepository = documentRepository; _entityRepository = entityRepository; @@ -48,6 +49,7 @@ namespace Umbraco.Core.Services.Implement _languageRepository = languageRepository; _propertyValidationService = propertyValidationService; _shortStringHelper = shortStringHelper; + _logger = loggerFactory.CreateLogger(); } #endregion @@ -1417,7 +1419,7 @@ namespace Umbraco.Core.Services.Implement var result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + _logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1427,7 +1429,7 @@ namespace Umbraco.Core.Services.Implement d.ContentSchedule.Clear(ContentScheduleAction.Expire, date); var result = Unpublish(d, userId: d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + _logger.LogError(null, "Failed to unpublish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } } @@ -1481,7 +1483,7 @@ namespace Umbraco.Core.Services.Implement var impact = CultureImpact.Explicit(culture, IsDefaultCulture(allLangs.Value, culture)); var tryPublish = d.PublishCulture(impact) && _propertyValidationService.Value.IsPropertyDataValid(d, out invalidProperties, impact); if (invalidProperties != null && invalidProperties.Length > 0) - Logger.LogWarning("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", + _logger.LogWarning("Scheduled publishing will fail for document {DocumentId} and culture {Culture} because of invalid properties {InvalidProperties}", d.Id, culture, string.Join(",", invalidProperties.Select(x => x.Alias))); publishing &= tryPublish; //set the culture to be published @@ -1498,7 +1500,7 @@ namespace Umbraco.Core.Services.Implement result = CommitDocumentChangesInternal(scope, d, saveEventArgs, allLangs.Value, d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + _logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -1512,7 +1514,7 @@ namespace Umbraco.Core.Services.Implement : SaveAndPublish(d, userId: d.WriterId); if (result.Success == false) - Logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); + _logger.LogError(null, "Failed to publish document id={DocumentId}, reason={Reason}.", d.Id, result.Result); results.Add(result); } @@ -2635,7 +2637,7 @@ namespace Umbraco.Core.Services.Implement // raise Publishing event if (scope.Events.DispatchCancelable(Publishing, this, savingEventArgs.ToContentPublishingEventArgs())) { - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "publishing was cancelled"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "publishing was cancelled"); return new PublishResult(PublishResultType.FailedPublishCancelledByEvent, evtMsgs, content); } @@ -2687,7 +2689,7 @@ namespace Umbraco.Core.Services.Implement // either because it is 'publishing' or because it already has a published version if (content.PublishedState != PublishedState.Publishing && content.PublishedVersionId == 0) { - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document does not have published values"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document does not have published values"); return new PublishResult(PublishResultType.FailedPublishNothingToPublish, evtMsgs, content); } @@ -2700,20 +2702,20 @@ namespace Umbraco.Core.Services.Implement { case ContentStatus.Expired: if (!variesByCulture) - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document has expired"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document has expired"); else - Logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document culture has expired"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document culture has expired"); return new PublishResult(!variesByCulture ? PublishResultType.FailedPublishHasExpired : PublishResultType.FailedPublishCultureHasExpired, evtMsgs, content); case ContentStatus.AwaitingRelease: if (!variesByCulture) - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is awaiting release"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is awaiting release"); else - Logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document is culture awaiting release"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) culture {Culture} cannot be published: {Reason}", content.Name, content.Id, culture, "document is culture awaiting release"); return new PublishResult(!variesByCulture ? PublishResultType.FailedPublishAwaitingRelease : PublishResultType.FailedPublishCultureAwaitingRelease, evtMsgs, content); case ContentStatus.Trashed: - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is trashed"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "document is trashed"); return new PublishResult(PublishResultType.FailedPublishIsTrashed, evtMsgs, content); } } @@ -2726,7 +2728,7 @@ namespace Umbraco.Core.Services.Implement var pathIsOk = content.ParentId == Constants.System.Root || IsPathPublished(GetParent(content)); if (!pathIsOk) { - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "parent is not published"); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be published: {Reason}", content.Name, content.Id, "parent is not published"); return new PublishResult(PublishResultType.FailedPublishPathNotPublished, evtMsgs, content); } } @@ -2763,11 +2765,11 @@ namespace Umbraco.Core.Services.Implement return new PublishResult(PublishResultType.FailedPublishNothingToPublish, evtMsgs, content); if (culturesUnpublishing.Count > 0) - Logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been unpublished.", + _logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been unpublished.", content.Name, content.Id, string.Join(",", culturesUnpublishing)); if (culturesPublishing.Count > 0) - Logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been published.", + _logger.LogInformation("Document {ContentName} (id={ContentId}) cultures: {Cultures} have been published.", content.Name, content.Id, string.Join(",", culturesPublishing)); if (culturesUnpublishing.Count > 0 && culturesPublishing.Count > 0) @@ -2779,7 +2781,7 @@ namespace Umbraco.Core.Services.Implement return new PublishResult(PublishResultType.SuccessPublishCulture, evtMsgs, content); } - Logger.LogInformation("Document {ContentName} (id={ContentId}) has been published.", content.Name, content.Id); + _logger.LogInformation("Document {ContentName} (id={ContentId}) has been published.", content.Name, content.Id); return new PublishResult(evtMsgs, content); } @@ -2795,7 +2797,7 @@ namespace Umbraco.Core.Services.Implement // raise Unpublishing event if (scope.Events.DispatchCancelable(Unpublishing, this, new PublishEventArgs(content, evtMsgs))) { - Logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be unpublished: unpublishing was cancelled.", content.Name, content.Id); + _logger.LogInformation("Document {ContentName} (id={ContentId}) cannot be unpublished: unpublishing was cancelled.", content.Name, content.Id); return new PublishResult(PublishResultType.FailedUnpublishCancelledByEvent, evtMsgs, content); } @@ -2827,12 +2829,12 @@ namespace Umbraco.Core.Services.Implement foreach (var p in pastReleases) content.ContentSchedule.Remove(p); if (pastReleases.Count > 0) - Logger.LogInformation("Document {ContentName} (id={ContentId}) had its release date removed, because it was unpublished.", content.Name, content.Id); + _logger.LogInformation("Document {ContentName} (id={ContentId}) had its release date removed, because it was unpublished.", content.Name, content.Id); // change state to unpublishing content.PublishedState = PublishedState.Unpublishing; - Logger.LogInformation("Document {ContentName} (id={ContentId}) has been unpublished.", content.Name, content.Id); + _logger.LogInformation("Document {ContentName} (id={ContentId}) has been unpublished.", content.Name, content.Id); return attempt; } @@ -3164,7 +3166,7 @@ namespace Umbraco.Core.Services.Implement if (rollbackSaveResult.Success == false) { //Log the error/warning - Logger.LogError("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); + _logger.LogError("User '{UserId}' was unable to rollback content '{ContentId}' to version '{VersionId}'", userId, id, versionId); } else { @@ -3173,7 +3175,7 @@ namespace Umbraco.Core.Services.Implement scope.Events.Dispatch(RolledBack, this, rollbackEventArgs); //Logging & Audit message - Logger.LogInformation("User '{UserId}' rolled back content '{ContentId}' to version '{VersionId}'", userId, id, versionId); + _logger.LogInformation("User '{UserId}' rolled back content '{ContentId}' to version '{VersionId}'", userId, id, versionId); Audit(AuditType.RollBack, userId, id, $"Content '{content.Name}' was rolled back to version '{versionId}'"); } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs index 206f11e5b0..ab7e70e852 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -14,9 +14,9 @@ namespace Umbraco.Core.Services.Implement /// public class ContentTypeService : ContentTypeServiceBase, IContentTypeService { - public ContentTypeService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IContentService contentService, + public ContentTypeService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IContentService contentService, IContentTypeRepository repository, IAuditRepository auditRepository, IDocumentTypeContainerRepository entityContainerRepository, IEntityRepository entityRepository) - : base(provider, logger, eventMessagesFactory, repository, auditRepository, entityContainerRepository, entityRepository) + : base(provider, loggerFactory, eventMessagesFactory, repository, auditRepository, entityContainerRepository, entityRepository) { ContentService = contentService; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs index 26298f171c..7067e27f59 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs @@ -1,13 +1,13 @@ -using Umbraco.Core.Events; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Events; using Umbraco.Core.Scoping; namespace Umbraco.Core.Services.Implement { public abstract class ContentTypeServiceBase : ScopeRepositoryService { - protected ContentTypeServiceBase(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory) - : base(provider, logger, eventMessagesFactory) + protected ContentTypeServiceBase(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { } } } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs index a08bc3cd96..3241fa9d0e 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs @@ -1,5 +1,5 @@ -using Umbraco.Core.Events; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Events; using Umbraco.Core.Models; using Umbraco.Core.Scoping; using Umbraco.Core.Services.Changes; @@ -10,8 +10,8 @@ namespace Umbraco.Core.Services.Implement where TItem : class, IContentTypeComposition where TService : class, IContentTypeBaseService { - protected ContentTypeServiceBase(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory) - : base(provider, logger, eventMessagesFactory) + protected ContentTypeServiceBase(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { } protected abstract TService This { get; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs index 9cd911e8d4..a3e3687b10 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Repositories; @@ -22,9 +22,9 @@ namespace Umbraco.Core.Services.Implement private readonly IEntityContainerRepository _containerRepository; private readonly IEntityRepository _entityRepository; - protected ContentTypeServiceBase(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + protected ContentTypeServiceBase(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, TRepository repository, IAuditRepository auditRepository, IEntityContainerRepository containerRepository, IEntityRepository entityRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { Repository = repository; _auditRepository = auditRepository; @@ -508,15 +508,15 @@ namespace Umbraco.Core.Services.Implement // delete content DeleteItemsOfTypes(descendantsAndSelf.Select(x => x.Id)); - + // Next find all other document types that have a reference to this content type var referenceToAllowedContentTypes = GetAll().Where(q => q.AllowedContentTypes.Any(p=>p.Id.Value==item.Id)); foreach (var reference in referenceToAllowedContentTypes) - { - reference.AllowedContentTypes = reference.AllowedContentTypes.Where(p => p.Id.Value != item.Id); + { + reference.AllowedContentTypes = reference.AllowedContentTypes.Where(p => p.Id.Value != item.Id); var changedRef = new List>() { new ContentTypeChange(reference, ContentTypeChangeTypes.RefreshMain) }; // Fire change event - OnChanged(scope, changedRef.ToEventArgs()); + OnChanged(scope, changedRef.ToEventArgs()); } // finally delete the content type @@ -525,7 +525,7 @@ namespace Umbraco.Core.Services.Implement // (contents of any descendant type have been deleted but // contents of any composed (impacted) type remain but // need to have their property data cleared) - Repository.Delete(item); + Repository.Delete(item); //... var changes = descendantsAndSelf.Select(x => new ContentTypeChange(x, ContentTypeChangeTypes.Remove)) diff --git a/src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs index 08bed264ae..eb6a94c4ee 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Persistence.Repositories; @@ -30,11 +30,11 @@ namespace Umbraco.Core.Services.Implement private readonly ILocalizationService _localizationService; private readonly IShortStringHelper _shortStringHelper; - public DataTypeService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public DataTypeService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IDataTypeRepository dataTypeRepository, IDataTypeContainerRepository dataTypeContainerRepository, IAuditRepository auditRepository, IEntityRepository entityRepository, IContentTypeRepository contentTypeRepository, IIOHelper ioHelper, ILocalizedTextService localizedTextService, ILocalizationService localizationService, IShortStringHelper shortStringHelper) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _dataTypeRepository = dataTypeRepository; _dataTypeContainerRepository = dataTypeContainerRepository; @@ -324,7 +324,7 @@ namespace Umbraco.Core.Services.Implement .Where(x => x.Editor is MissingPropertyEditor); foreach (var dataType in dataTypesWithMissingEditors) { - dataType.Editor = new LabelPropertyEditor(Logger, _ioHelper, this, _localizedTextService, _localizationService, _shortStringHelper); + dataType.Editor = new LabelPropertyEditor(LoggerFactory, _ioHelper, this, _localizedTextService, _localizationService, _shortStringHelper); } } diff --git a/src/Umbraco.Infrastructure/Services/Implement/DomainService.cs b/src/Umbraco.Infrastructure/Services/Implement/DomainService.cs index 32decb56d5..7bdce6f6cb 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/DomainService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/DomainService.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -11,9 +11,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IDomainRepository _domainRepository; - public DomainService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public DomainService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IDomainRepository domainRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _domainRepository = domainRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/EntityService.cs b/src/Umbraco.Infrastructure/Services/Implement/EntityService.cs index 8436f56457..ccfbe4aacd 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/EntityService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/EntityService.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence; @@ -21,8 +21,8 @@ namespace Umbraco.Core.Services.Implement private IQuery _queryRootEntity; private readonly IIdKeyMap _idKeyMap; - public EntityService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IIdKeyMap idKeyMap, IEntityRepository entityRepository) - : base(provider, logger, eventMessagesFactory) + public EntityService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IIdKeyMap idKeyMap, IEntityRepository entityRepository) + : base(provider, loggerFactory, eventMessagesFactory) { _idKeyMap = idKeyMap; _entityRepository = entityRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs b/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs index c872cf6abb..e4a3f3638e 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Identity; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -12,9 +12,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IExternalLoginRepository _externalLoginRepository; - public ExternalLoginService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public ExternalLoginService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IExternalLoginRepository externalLoginRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _externalLoginRepository = externalLoginRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/FileService.cs b/src/Umbraco.Infrastructure/Services/Implement/FileService.cs index e82c71d1a5..e1f4a017b3 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/FileService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/FileService.cs @@ -4,13 +4,13 @@ using System.IO; using System.Linq; using System.Text.RegularExpressions; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Events; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Persistence.Repositories.Implement; @@ -37,11 +37,11 @@ namespace Umbraco.Core.Services.Implement private const string PartialViewHeader = "@inherits Umbraco.Web.Common.AspNetCore.UmbracoViewPage"; private const string PartialViewMacroHeader = "@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage"; - public FileService(IScopeProvider uowProvider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public FileService(IScopeProvider uowProvider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IStylesheetRepository stylesheetRepository, IScriptRepository scriptRepository, ITemplateRepository templateRepository, IPartialViewRepository partialViewRepository, IPartialViewMacroRepository partialViewMacroRepository, IAuditRepository auditRepository, IShortStringHelper shortStringHelper, IOptions globalSettings, IHostingEnvironment hostingEnvironment) - : base(uowProvider, logger, eventMessagesFactory) + : base(uowProvider, loggerFactory, eventMessagesFactory) { _stylesheetRepository = stylesheetRepository; _scriptRepository = scriptRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs index 251261cfc8..07fa0e1e77 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -18,9 +18,9 @@ namespace Umbraco.Core.Services.Implement private readonly ILanguageRepository _languageRepository; private readonly IAuditRepository _auditRepository; - public LocalizationService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public LocalizationService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IDictionaryRepository dictionaryRepository, IAuditRepository auditRepository, ILanguageRepository languageRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _dictionaryRepository = dictionaryRepository; _auditRepository = auditRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/MacroService.cs b/src/Umbraco.Infrastructure/Services/Implement/MacroService.cs index a6631aae4c..98bc633fa9 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MacroService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MacroService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -17,9 +17,9 @@ namespace Umbraco.Core.Services.Implement private readonly IMacroRepository _macroRepository; private readonly IAuditRepository _auditRepository; - public MacroService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public MacroService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMacroRepository macroRepository, IAuditRepository auditRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _macroRepository = macroRepository; _auditRepository = auditRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/MediaService.cs b/src/Umbraco.Infrastructure/Services/Implement/MediaService.cs index 5e9854ad9e..0672c3218f 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MediaService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MediaService.cs @@ -4,9 +4,9 @@ using System.ComponentModel; using System.Globalization; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.DatabaseModelDefinitions; using Umbraco.Core.Persistence.Querying; @@ -32,10 +32,10 @@ namespace Umbraco.Core.Services.Implement #region Constructors - public MediaService(IScopeProvider provider, IMediaFileSystem mediaFileSystem, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public MediaService(IScopeProvider provider, IMediaFileSystem mediaFileSystem, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMediaRepository mediaRepository, IAuditRepository auditRepository, IMediaTypeRepository mediaTypeRepository, IEntityRepository entityRepository, IShortStringHelper shortStringHelper) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _mediaFileSystem = mediaFileSystem; _mediaRepository = mediaRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs index 8cb69a655d..73ce6822a1 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -10,10 +10,10 @@ namespace Umbraco.Core.Services.Implement { public class MediaTypeService : ContentTypeServiceBase, IMediaTypeService { - public MediaTypeService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IMediaService mediaService, + public MediaTypeService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMediaService mediaService, IMediaTypeRepository mediaTypeRepository, IAuditRepository auditRepository, IMediaTypeContainerRepository entityContainerRepository, IEntityRepository entityRepository) - : base(provider, logger, eventMessagesFactory, mediaTypeRepository, auditRepository, entityContainerRepository, entityRepository) + : base(provider, loggerFactory, eventMessagesFactory, mediaTypeRepository, auditRepository, entityContainerRepository, entityRepository) { MediaService = mediaService; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs index 308080bbf4..9947e50661 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Persistence.Repositories.Implement; @@ -14,9 +14,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IMemberGroupRepository _memberGroupRepository; - public MemberGroupService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public MemberGroupService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMemberGroupRepository memberGroupRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _memberGroupRepository = memberGroupRepository; //Proxy events! diff --git a/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs index 5143cd6203..6626f51f73 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MemberService.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Events; using Umbraco.Core.Exceptions; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Querying; @@ -28,9 +28,9 @@ namespace Umbraco.Core.Services.Implement #region Constructor - public MemberService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IMemberGroupService memberGroupService, + public MemberService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMemberGroupService memberGroupService, IMemberRepository memberRepository, IMemberTypeRepository memberTypeRepository, IMemberGroupRepository memberGroupRepository, IAuditRepository auditRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _memberRepository = memberRepository; _memberTypeRepository = memberTypeRepository; @@ -986,7 +986,7 @@ namespace Umbraco.Core.Services.Implement return result.Select(x => x.Id).Distinct(); } } - + public IEnumerable GetMembersInRole(string roleName) { using (var scope = ScopeProvider.CreateScope(autoComplete: true)) diff --git a/src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs b/src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs index 05f32dc99c..b3c443b9a4 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -12,9 +12,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IMemberTypeRepository _memberTypeRepository; - public MemberTypeService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IMemberService memberService, + public MemberTypeService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IMemberService memberService, IMemberTypeRepository memberTypeRepository, IAuditRepository auditRepository, IEntityRepository entityRepository) - : base(provider, logger, eventMessagesFactory, memberTypeRepository, auditRepository, null, entityRepository) + : base(provider, loggerFactory, eventMessagesFactory, memberTypeRepository, auditRepository, null, entityRepository) { MemberService = memberService; _memberTypeRepository = memberTypeRepository; diff --git a/src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs b/src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs index f2af6cf424..2143d638fe 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -13,9 +13,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IPublicAccessRepository _publicAccessRepository; - public PublicAccessService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public PublicAccessService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IPublicAccessRepository publicAccessRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _publicAccessRepository = publicAccessRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs b/src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs index 80816961fc..bc629044bd 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -12,9 +12,9 @@ namespace Umbraco.Core.Services.Implement { private readonly IRedirectUrlRepository _redirectUrlRepository; - public RedirectUrlService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public RedirectUrlService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IRedirectUrlRepository redirectUrlRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _redirectUrlRepository = redirectUrlRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/RelationService.cs b/src/Umbraco.Infrastructure/Services/Implement/RelationService.cs index c629466edf..ddec99e692 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/RelationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/RelationService.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Repositories; @@ -17,9 +17,9 @@ namespace Umbraco.Core.Services.Implement private readonly IRelationTypeRepository _relationTypeRepository; private readonly IAuditRepository _auditRepository; - public RelationService(IScopeProvider uowProvider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IEntityService entityService, + public RelationService(IScopeProvider uowProvider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IEntityService entityService, IRelationRepository relationRepository, IRelationTypeRepository relationTypeRepository, IAuditRepository auditRepository) - : base(uowProvider, logger, eventMessagesFactory) + : base(uowProvider, loggerFactory, eventMessagesFactory) { _relationRepository = relationRepository; _relationTypeRepository = relationTypeRepository; @@ -193,7 +193,7 @@ namespace Umbraco.Core.Services.Implement public IEnumerable GetByRelationTypeAlias(string relationTypeAlias) { var relationType = GetRelationType(relationTypeAlias); - + return relationType == null ? Enumerable.Empty() : GetRelationsByListOfTypeIds(new[] { relationType.Id }); @@ -296,7 +296,7 @@ namespace Umbraco.Core.Services.Implement /// public IEnumerable> GetEntitiesFromRelations(IEnumerable relations) { - //TODO: Argh! N+1 + //TODO: Argh! N+1 foreach (var relation in relations) { diff --git a/src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs b/src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs index 88cbc1db76..3be66fea27 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs @@ -1,6 +1,6 @@ using System; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Scoping; @@ -11,15 +11,15 @@ namespace Umbraco.Core.Services.Implement /// public abstract class RepositoryService : IService { - protected ILogger Logger { get; } protected IEventMessagesFactory EventMessagesFactory { get; } protected IScopeProvider ScopeProvider { get; } + protected ILoggerFactory LoggerFactory { get; } - protected RepositoryService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory) + protected RepositoryService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory) { - Logger = logger ?? throw new ArgumentNullException(nameof(logger)); EventMessagesFactory = eventMessagesFactory ?? throw new ArgumentNullException(nameof(eventMessagesFactory)); ScopeProvider = provider ?? throw new ArgumentNullException(nameof(provider)); + LoggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); } protected IQuery Query() => ScopeProvider.SqlContext.Query(); diff --git a/src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs b/src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs index d7303991b5..9e1cf94b19 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs @@ -1,5 +1,5 @@ -using Umbraco.Core.Events; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Events; using Umbraco.Core.Scoping; namespace Umbraco.Core.Services.Implement @@ -7,8 +7,8 @@ namespace Umbraco.Core.Services.Implement // TODO: that one does not add anything = kill public abstract class ScopeRepositoryService : RepositoryService { - protected ScopeRepositoryService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory) - : base(provider, logger, eventMessagesFactory) + protected ScopeRepositoryService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { } } } diff --git a/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs b/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs index 6a092b159f..6e5316272b 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Events; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Persistence.Repositories.Implement; @@ -27,11 +27,11 @@ namespace Umbraco.Core.Services.Implement /// Initializes a new instance of the class. /// /// A UnitOfWork provider. - /// A logger. + /// A logger factory /// - public ServerRegistrationService(IScopeProvider scopeProvider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public ServerRegistrationService(IScopeProvider scopeProvider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IServerRegistrationRepository serverRegistrationRepository, IHostingEnvironment hostingEnvironment) - : base(scopeProvider, logger, eventMessagesFactory) + : base(scopeProvider, loggerFactory, eventMessagesFactory) { _serverRegistrationRepository = serverRegistrationRepository; _hostingEnvironment = hostingEnvironment; diff --git a/src/Umbraco.Infrastructure/Services/Implement/TagService.cs b/src/Umbraco.Infrastructure/Services/Implement/TagService.cs index e888258067..a5161b22d6 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/TagService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/TagService.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence.Repositories; using Umbraco.Core.Scoping; @@ -18,9 +18,9 @@ namespace Umbraco.Core.Services.Implement { private readonly ITagRepository _tagRepository; - public TagService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, + public TagService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, ITagRepository tagRepository) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _tagRepository = tagRepository; } diff --git a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs index 9eaa85dec6..51368f7320 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/UserService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/UserService.cs @@ -4,11 +4,11 @@ using System.Data.Common; using System.Globalization; using System.Linq; using System.Linq.Expressions; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Membership; using Umbraco.Core.Persistence.Querying; using Umbraco.Core.Persistence.Repositories; @@ -26,15 +26,17 @@ namespace Umbraco.Core.Services.Implement private readonly IUserGroupRepository _userGroupRepository; private readonly GlobalSettings _globalSettings; private readonly bool _isUpgrading; + private readonly ILogger _logger; - public UserService(IScopeProvider provider, ILogger logger, IEventMessagesFactory eventMessagesFactory, IRuntimeState runtimeState, + public UserService(IScopeProvider provider, ILoggerFactory loggerFactory, IEventMessagesFactory eventMessagesFactory, IRuntimeState runtimeState, IUserRepository userRepository, IUserGroupRepository userGroupRepository, IOptions globalSettings) - : base(provider, logger, eventMessagesFactory) + : base(provider, loggerFactory, eventMessagesFactory) { _userRepository = userRepository; _userGroupRepository = userGroupRepository; _globalSettings = globalSettings.Value; _isUpgrading = runtimeState.Level == RuntimeLevel.Install || runtimeState.Level == RuntimeLevel.Upgrade; + _logger = loggerFactory.CreateLogger(); } #region Implementation of IMembershipUserService @@ -293,7 +295,7 @@ namespace Umbraco.Core.Services.Implement // if we are upgrading and an exception occurs, log and swallow it if (_isUpgrading == false) throw; - Logger.LogWarning(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); + _logger.LogWarning(ex, "An error occurred attempting to save a user instance during upgrade, normally this warning can be ignored"); // we don't want the uow to rollback its scope! scope.Complete(); From 7ad8cd2bf86a2d1c7653314b049481a6b9c2d4c4 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 08:03:27 +0200 Subject: [PATCH 42/85] Use loggerfactory in both constuctors in UmbracoDatabaseFactory --- .../Persistence/UmbracoDatabaseFactory.cs | 3 ++- src/Umbraco.Tests/Persistence/DatabaseContextTests.cs | 2 +- .../Persistence/FaultHandling/ConnectionRetryTest.cs | 5 +++-- src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs | 3 ++- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs index 1eaf62ebea..65933399a3 100644 --- a/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs +++ b/src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs @@ -114,10 +114,11 @@ namespace Umbraco.Core.Persistence /// Initializes a new instance of the . /// /// Used in tests. - public UmbracoDatabaseFactory(ILogger logger, string connectionString, string providerName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) + public UmbracoDatabaseFactory(ILogger logger, ILoggerFactory loggerFactory, string connectionString, string providerName, Lazy mappers, IDbProviderFactoryCreator dbProviderFactoryCreator) { _mappers = mappers ?? throw new ArgumentNullException(nameof(mappers)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory; _dbProviderFactoryCreator = dbProviderFactoryCreator ?? throw new ArgumentNullException(nameof(dbProviderFactoryCreator)); if (string.IsNullOrWhiteSpace(connectionString) || string.IsNullOrWhiteSpace(providerName)) diff --git a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs index 1399e117f7..6c310516b4 100644 --- a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs +++ b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs @@ -78,7 +78,7 @@ namespace Umbraco.Tests.Persistence } // re-create the database factory and database context with proper connection string - _databaseFactory = new UmbracoDatabaseFactory(_logger, connString, Constants.DbProviderNames.SqlCe, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + _databaseFactory = new UmbracoDatabaseFactory(_logger, NullLoggerFactory.Instance, connString, Constants.DbProviderNames.SqlCe, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); // test get database type (requires an actual database) using (var database = _databaseFactory.CreateDatabase()) diff --git a/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs b/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs index d6a458996f..fd3b525039 100644 --- a/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs +++ b/src/Umbraco.Tests/Persistence/FaultHandling/ConnectionRetryTest.cs @@ -1,6 +1,7 @@ using System; using System.Data.SqlClient; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -20,7 +21,7 @@ namespace Umbraco.Tests.Persistence.FaultHandling { const string connectionString = @"server=.\SQLEXPRESS;database=EmptyForTest;user id=x;password=umbraco"; const string providerName = Constants.DbProviderNames.SqlServer; - var factory = new UmbracoDatabaseFactory(Mock.Of>(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(Mock.Of>(), NullLoggerFactory.Instance, connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); using (var database = factory.CreateDatabase()) { @@ -34,7 +35,7 @@ namespace Umbraco.Tests.Persistence.FaultHandling { const string connectionString = @"server=.\SQLEXPRESS;database=EmptyForTest;user id=umbraco;password=umbraco"; const string providerName = Constants.DbProviderNames.SqlServer; - var factory = new UmbracoDatabaseFactory(Mock.Of>(), connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(Mock.Of>(), NullLoggerFactory.Instance, connectionString, providerName, new Lazy(() => Mock.Of()), TestHelper.DbProviderFactoryCreator); using (var database = factory.CreateDatabase()) { diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index 75f0b01d76..831d32667a 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -5,6 +5,7 @@ using System.Threading; using System.Web.Routing; using System.Xml; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -90,7 +91,7 @@ namespace Umbraco.Tests.TestHelpers return TestObjects.GetDatabaseFactoryMock(); var lazyMappers = new Lazy(f.GetInstance); - var factory = new UmbracoDatabaseFactory(f.GetInstance>(), GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(f.GetInstance>(), NullLoggerFactory.Instance, GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); factory.ResetForTests(); return factory; }); From 30d4233565aed629f2488b4c76f5ee28dd467529 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 08:19:26 +0200 Subject: [PATCH 43/85] Use MS Ilogger in LocalizedTextService --- .../Packaging/PackageDefinitionXmlParser.cs | 6 ++-- .../Packaging/PackagesRepository.cs | 13 ++++--- .../CompositionExtensions/Services.cs | 8 ++--- .../Implement/LocalizedTextService.cs | 10 +++--- .../LocalizedTextServiceFileSources.cs | 12 +++---- .../Testing/IntegrationTestComposer.cs | 5 +-- .../CreatedPackagesRepositoryTests.cs | 2 +- .../Services/LocalizedTextServiceTests.cs | 35 ++++++++++--------- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 12 +++---- 9 files changed, 54 insertions(+), 49 deletions(-) diff --git a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs index 1d93285c26..a9516d7e25 100644 --- a/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs +++ b/src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Packaging; namespace Umbraco.Core.Packaging @@ -13,10 +13,10 @@ namespace Umbraco.Core.Packaging /// public class PackageDefinitionXmlParser { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; - public PackageDefinitionXmlParser(ILogger logger, IUmbracoVersion umbracoVersion) + public PackageDefinitionXmlParser(ILogger logger, IUmbracoVersion umbracoVersion) { _logger = logger; _umbracoVersion = umbracoVersion; diff --git a/src/Umbraco.Core/Packaging/PackagesRepository.cs b/src/Umbraco.Core/Packaging/PackagesRepository.cs index 04f50eab30..59741ab1ce 100644 --- a/src/Umbraco.Core/Packaging/PackagesRepository.cs +++ b/src/Umbraco.Core/Packaging/PackagesRepository.cs @@ -6,10 +6,10 @@ using System.IO.Compression; using System.Linq; using System.Xml.Linq; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Packaging; using Umbraco.Core.Services; @@ -29,7 +29,8 @@ namespace Umbraco.Core.Packaging private readonly IMacroService _macroService; private readonly ILocalizationService _languageService; private readonly IEntityXmlSerializer _serializer; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; + private readonly ILogger _logger; private readonly IHostingEnvironment _hostingEnvironment; private readonly string _packageRepositoryFileName; private readonly string _mediaFolderPath; @@ -60,7 +61,8 @@ namespace Umbraco.Core.Packaging IDataTypeService dataTypeService, IFileService fileService, IMacroService macroService, ILocalizationService languageService, IHostingEnvironment hostingEnvironment, - IEntityXmlSerializer serializer, ILogger logger, + IEntityXmlSerializer serializer, + ILoggerFactory loggerFactory, IUmbracoVersion umbracoVersion, IOptions globalSettings, string packageRepositoryFileName, @@ -74,7 +76,8 @@ namespace Umbraco.Core.Packaging _macroService = macroService; _languageService = languageService; _serializer = serializer; - _logger = logger; + _loggerFactory = loggerFactory; + _logger = _loggerFactory.CreateLogger(); _hostingEnvironment = hostingEnvironment; _packageRepositoryFileName = packageRepositoryFileName; @@ -82,7 +85,7 @@ namespace Umbraco.Core.Packaging _packagesFolderPath = packagesFolderPath ?? Constants.SystemDirectories.Packages; _mediaFolderPath = mediaFolderPath ?? globalSettings.Value.UmbracoMediaPath + "/created-packages"; - _parser = new PackageDefinitionXmlParser(logger, umbracoVersion); + _parser = new PackageDefinitionXmlParser(_loggerFactory.CreateLogger(), umbracoVersion); _umbracoVersion = umbracoVersion; } diff --git a/src/Umbraco.Infrastructure/Composing/CompositionExtensions/Services.cs b/src/Umbraco.Infrastructure/Composing/CompositionExtensions/Services.cs index ffd8b880f2..a4744d3d2d 100644 --- a/src/Umbraco.Infrastructure/Composing/CompositionExtensions/Services.cs +++ b/src/Umbraco.Infrastructure/Composing/CompositionExtensions/Services.cs @@ -2,13 +2,13 @@ using System.IO; using System.Linq; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Events; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Packaging; using Umbraco.Core.Routing; using Umbraco.Core.Services; @@ -61,7 +61,7 @@ namespace Umbraco.Core.Composing.CompositionExtensions composition.Register(SourcesFactory); composition.RegisterUnique(factory => new LocalizedTextService( factory.GetInstance>(), - factory.GetInstance())); + factory.GetInstance>())); composition.RegisterUnique(); @@ -94,7 +94,7 @@ namespace Umbraco.Core.Composing.CompositionExtensions factory.GetInstance(), factory.GetInstance(), factory.GetInstance(), - factory.GetInstance(), + factory.GetInstance(), factory.GetInstance(), factory.GetInstance>(), packageRepoFileName); @@ -122,7 +122,7 @@ namespace Umbraco.Core.Composing.CompositionExtensions .Select(x => new LocalizedTextServiceSupplementaryFileSource(x, true)); return new LocalizedTextServiceFileSources( - container.GetInstance(), + container.GetInstance>(), container.GetInstance(), mainLangFolder, pluginLangFolders.Concat(userLangFolders)); diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs index 86612f7a7e..4d12f111e3 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs @@ -4,7 +4,7 @@ using System.Globalization; using System.Linq; using System.Xml.Linq; using System.Xml.XPath; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Services.Implement { @@ -12,7 +12,7 @@ namespace Umbraco.Core.Services.Implement public class LocalizedTextService : ILocalizedTextService { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly Lazy _fileSources; private readonly IDictionary>> _dictionarySource; private readonly IDictionary> _xmlSource; @@ -22,7 +22,7 @@ namespace Umbraco.Core.Services.Implement /// /// /// - public LocalizedTextService(Lazy fileSources, ILogger logger) + public LocalizedTextService(Lazy fileSources, ILogger logger) { if (logger == null) throw new ArgumentNullException("logger"); _logger = logger; @@ -35,7 +35,7 @@ namespace Umbraco.Core.Services.Implement /// /// /// - public LocalizedTextService(IDictionary> source, ILogger logger) + public LocalizedTextService(IDictionary> source, ILogger logger) { if (source == null) throw new ArgumentNullException("source"); if (logger == null) throw new ArgumentNullException("logger"); @@ -48,7 +48,7 @@ namespace Umbraco.Core.Services.Implement /// /// /// - public LocalizedTextService(IDictionary>> source, ILogger logger) + public LocalizedTextService(IDictionary>> source, ILogger logger) { _dictionarySource = source ?? throw new ArgumentNullException(nameof(source)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs index 905361fe2f..b4c49b9509 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/LocalizedTextServiceFileSources.cs @@ -8,9 +8,7 @@ using System.Xml.Linq; using Umbraco.Composing; using Umbraco.Core.Cache; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Microsoft.Extensions.Logging; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Core.Services.Implement { @@ -19,7 +17,7 @@ namespace Umbraco.Core.Services.Implement /// public class LocalizedTextServiceFileSources { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IAppPolicyCache _cache; private readonly IEnumerable _supplementFileSources; private readonly DirectoryInfo _fileSourceFolder; @@ -39,7 +37,7 @@ namespace Umbraco.Core.Services.Implement /// /// public LocalizedTextServiceFileSources( - ILogger logger, + ILogger logger, AppCaches appCaches, DirectoryInfo fileSourceFolder, IEnumerable supplementFileSources) @@ -53,7 +51,7 @@ namespace Umbraco.Core.Services.Implement if (fileSourceFolder.Exists == false) { - Current.Logger.LogWarning("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); + _logger.LogWarning("The folder does not exist: {FileSourceFolder}, therefore no sources will be discovered", fileSourceFolder.FullName); } else { @@ -101,7 +99,7 @@ namespace Umbraco.Core.Services.Implement } catch (CultureNotFoundException) { - Current.Logger.LogWarning("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); + _logger.LogWarning("The culture {CultureValue} found in the file {CultureFile} is not a valid culture", cultureVal, fileInfo.FullName); //If the culture in the file is invalid, we'll just hope the file name is a valid culture below, otherwise // an exception will be thrown. } @@ -142,7 +140,7 @@ namespace Umbraco.Core.Services.Implement /// /// Constructor /// - public LocalizedTextServiceFileSources(ILogger logger, AppCaches appCaches, DirectoryInfo fileSourceFolder) + public LocalizedTextServiceFileSources(ILogger logger, AppCaches appCaches, DirectoryInfo fileSourceFolder) : this(logger, appCaches, fileSourceFolder, Enumerable.Empty()) { } diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index 48f0146272..cf5bbf1473 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -63,6 +63,7 @@ namespace Umbraco.Tests.Integration.Testing { var globalSettings = factory.GetInstance>(); var logger = factory.GetInstance(); + var loggerFactory = factory.GetInstance(); var appCaches = factory.GetInstance(); var localizedTextService = new LocalizedTextService( @@ -78,12 +79,12 @@ namespace Umbraco.Tests.Integration.Testing var mainLangFolder = new DirectoryInfo(Path.Combine(netcoreUI.FullName, globalSettings.Value.UmbracoPath.TrimStart("~/"), "config", "lang")); return new LocalizedTextServiceFileSources( - logger, + loggerFactory.CreateLogger(), appCaches, mainLangFolder); }), - logger); + loggerFactory.CreateLogger()); return localizedTextService; } diff --git a/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs b/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs index 90a352ad39..c48973740a 100644 --- a/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs +++ b/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs @@ -39,7 +39,7 @@ namespace Umbraco.Tests.Packaging ServiceContext.ContentService, ServiceContext.ContentTypeService, ServiceContext.DataTypeService, ServiceContext.FileService, ServiceContext.MacroService, ServiceContext.LocalizationService, HostingEnvironment, - Factory.GetInstance(), Logger, + Factory.GetInstance(), LoggerFactory_, UmbracoVersion, Microsoft.Extensions.Options.Options.Create(new GlobalSettingsBuilder().Build()), "createdPackages.config", diff --git a/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs b/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs index 2217028c64..4aba5384b6 100644 --- a/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs +++ b/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs @@ -5,17 +5,20 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml.Linq; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.Services.Implement; +using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Services { [TestFixture] public class LocalizedTextServiceTests { + private static ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; [Test] public void Using_Dictionary_Gets_All_Stored_Values() { @@ -42,7 +45,7 @@ namespace Umbraco.Tests.Services }, } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.GetAllStoredValues(culture); @@ -74,7 +77,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "blah1"), "blahValue1"), new XElement("key", new XAttribute("alias", "blah2"), "blahValue2"))))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.GetAllStoredValues(culture); @@ -105,7 +108,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey1"), "testValue1"), new XElement("key", new XAttribute("alias", "testKey1"), "testValue1"))))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.GetAllStoredValues(culture); @@ -131,7 +134,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testArea/testKey", culture); @@ -156,7 +159,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testKey", culture); @@ -181,7 +184,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testArea/doNotFind", culture); @@ -207,7 +210,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("doNotFind", culture); @@ -232,7 +235,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testKey", culture, new Dictionary { { "0", "world" }, { "1", "great" }, { "2", "planet" } }); @@ -253,7 +256,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "testValue")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testArea/testKey", culture); @@ -273,7 +276,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "testValue")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testKey", culture); @@ -293,7 +296,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "testValue")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testArea/doNotFind", culture); @@ -314,7 +317,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "testValue")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("doNotFind", culture); @@ -334,7 +337,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "Hello %0%, you are such a %1% %2%")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); var result = txtService.Localize("testKey", culture, new Dictionary { { "0", "world" }, { "1", "great" }, { "2", "planet" } }); @@ -360,7 +363,7 @@ namespace Umbraco.Tests.Services } } } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); Assert.AreEqual("[testKey]", txtService.Localize("testArea/testKey", CultureInfo.GetCultureInfo("en-AU"))); } @@ -378,7 +381,7 @@ namespace Umbraco.Tests.Services new XElement("key", new XAttribute("alias", "testKey"), "testValue")))) } - }, Mock.Of()); + }, _loggerFactory.CreateLogger()); Assert.AreEqual("[testKey]", txtService.Localize("testArea/testKey", CultureInfo.GetCultureInfo("en-AU"))); } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index bfde408c63..821b72f4d8 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -175,22 +175,22 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful var (logger, profiler) = GetLoggers(Options.Logger); - var loggerFactoy = GetLoggerFactory(Options.Logger); - var msLogger = loggerFactoy.CreateLogger("msLogger"); - var proflogger = new ProfilingLogger(loggerFactoy.CreateLogger("ProfilingLogger"), profiler); + var loggerFactory = GetLoggerFactory(Options.Logger); + var msLogger = loggerFactory.CreateLogger("msLogger"); + var proflogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); IOHelper = TestHelper.IOHelper; - TypeFinder = new TypeFinder(loggerFactoy.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + TypeFinder = new TypeFinder(loggerFactory.CreateLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var appCaches = GetAppCaches(); var globalSettings = new GlobalSettingsBuilder().Build(); var settings = new WebRoutingSettings(); - IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, IOHelper, loggerFactoy.CreateLogger(), Microsoft.Extensions.Options.Options.Create(settings)); + IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, IOHelper, loggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(settings)); IIpResolver ipResolver = new AspNetIpResolver(); UmbracoVersion = new UmbracoVersion(); - LocalizedTextService = new LocalizedTextService(new Dictionary>(), logger); + LocalizedTextService = new LocalizedTextService(new Dictionary>(), loggerFactory.CreateLogger()); var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, msLogger, proflogger, Options.TypeLoader); var register = TestHelper.GetRegister(); From 8ff33e3cd021d29b2768ca24fcfd5b00b0add0a0 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 08:29:44 +0200 Subject: [PATCH 44/85] Use LoggerFactory in UmbracoController instead of global ILogger --- .../Routing/RenderRouteHandlerTests.cs | 6 +++--- src/Umbraco.Web/Editors/BackOfficeController.cs | 11 +++++++---- src/Umbraco.Web/Mvc/RenderMvcController.cs | 9 ++++++--- .../Mvc/UmbracoAuthorizedController.cs | 5 +++-- src/Umbraco.Web/Mvc/UmbracoController.cs | 16 +++++++++------- 5 files changed, 28 insertions(+), 19 deletions(-) diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index 866c113d5b..d36c4ef17e 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -161,7 +161,7 @@ namespace Umbraco.Tests.Routing Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), - Factory.GetInstance>()); + Factory.GetInstance()); }), ShortStringHelper); handler.GetHandlerForRoute(httpContext.Request.RequestContext, frequest); @@ -198,8 +198,8 @@ namespace Umbraco.Tests.Routing /// public class CustomDocumentController : RenderMvcController { - public CustomDocumentController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, Umbraco.Core.Logging.ILogger logger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) + public CustomDocumentController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILoggerFactory loggerFactory) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, loggerFactory) { } diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs index 9c27f538c3..65746b5367 100644 --- a/src/Umbraco.Web/Editors/BackOfficeController.cs +++ b/src/Umbraco.Web/Editors/BackOfficeController.cs @@ -5,6 +5,7 @@ using System.Web; using System.Web.Mvc; using Microsoft.AspNetCore.Identity; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Microsoft.Owin.Security; using Umbraco.Core; using Umbraco.Core.Cache; @@ -37,6 +38,7 @@ namespace Umbraco.Web.Editors private readonly IHostingEnvironment _hostingEnvironment; private readonly RuntimeSettings _runtimeSettings; private readonly SecuritySettings _securitySettings; + private readonly Microsoft.Extensions.Logging.ILogger _logger; public BackOfficeController( UmbracoFeatures features, @@ -45,13 +47,13 @@ namespace Umbraco.Web.Editors ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, - ILogger logger, + ILoggerFactory loggerFactory, IUmbracoVersion umbracoVersion, IOptions contentSettings, IHostingEnvironment hostingEnvironment, IOptions settings, IOptions securitySettings) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, loggerFactory) { _features = features; @@ -60,6 +62,7 @@ namespace Umbraco.Web.Editors _hostingEnvironment = hostingEnvironment; _runtimeSettings = settings.Value; _securitySettings = securitySettings.Value; + _logger = loggerFactory.CreateLogger(); } protected BackOfficeSignInManager SignInManager => _signInManager ?? (_signInManager = OwinContext.GetBackOfficeSignInManager()); @@ -177,7 +180,7 @@ namespace Umbraco.Web.Editors var authType = OwinContext.Authentication.GetExternalAuthenticationTypes().FirstOrDefault(x => x.AuthenticationType == loginInfo.Login.LoginProvider); if (authType == null) { - Logger.LogWarning("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); + _logger.LogWarning("Could not find external authentication provider registered: {LoginProvider}", loginInfo.Login.LoginProvider); } else { @@ -200,7 +203,7 @@ namespace Umbraco.Web.Editors shouldSignIn = autoLinkOptions.OnExternalLogin(user, loginInfo); if (shouldSignIn == false) { - Logger.LogWarning("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); + _logger.LogWarning("The AutoLinkOptions of the external authentication provider '{LoginProvider}' have refused the login based on the OnExternalLogin method. Affected user id: '{UserId}'", loginInfo.Login.LoginProvider, user.Id); } } diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 00c485bca8..5d9f916582 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -1,6 +1,7 @@ using System; using System.Web.Mvc; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; @@ -21,16 +22,18 @@ namespace Umbraco.Web.Mvc public class RenderMvcController : UmbracoController, IRenderMvcController { private IPublishedRequest _publishedRequest; + private readonly Microsoft.Extensions.Logging.ILogger _logger; public RenderMvcController() { ActionInvoker = new RenderActionInvoker(); } - public RenderMvcController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) + public RenderMvcController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILoggerFactory loggerFactory) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, loggerFactory) { ActionInvoker = new RenderActionInvoker(); + _logger = loggerFactory.CreateLogger(); } /// @@ -70,7 +73,7 @@ namespace Umbraco.Web.Mvc var result = ViewEngines.Engines.FindView(ControllerContext, template, null); if (result.View != null) return true; - Logger.LogWarning("No physical template file was found for template {Template}", template); + _logger.LogWarning("No physical template file was found for template {Template}", template); return false; } diff --git a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs index 759c3536c1..520a0ef738 100644 --- a/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoAuthorizedController.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; @@ -23,8 +24,8 @@ namespace Umbraco.Web.Mvc { } - protected UmbracoAuthorizedController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) - : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, logger) + protected UmbracoAuthorizedController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILoggerFactory loggerFactory) + : base(globalSettings, umbracoContextAccessor, services, appCaches, profilingLogger, loggerFactory) { } } diff --git a/src/Umbraco.Web/Mvc/UmbracoController.cs b/src/Umbraco.Web/Mvc/UmbracoController.cs index de4a4d7523..e7434163b7 100644 --- a/src/Umbraco.Web/Mvc/UmbracoController.cs +++ b/src/Umbraco.Web/Mvc/UmbracoController.cs @@ -1,6 +1,7 @@ using System; using System.Web; using System.Web.Mvc; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Microsoft.Owin; using Umbraco.Core.Cache; @@ -47,16 +48,17 @@ namespace Umbraco.Web.Mvc /// public AppCaches AppCaches { get; } - /// - /// Gets or sets the logger. - /// - public ILogger Logger { get; } /// /// Gets or sets the profiling logger. /// public IProfilingLogger ProfilingLogger { get; set; } + /// + /// Gets the LoggerFactory + /// + public ILoggerFactory LoggerFactory { get; } + protected IOwinContext OwinContext => Request.GetOwinContext(); /// @@ -76,19 +78,19 @@ namespace Umbraco.Web.Mvc Current.Factory.GetInstance(), Current.Factory.GetInstance(), Current.Factory.GetInstance(), - Current.Factory.GetInstance>() + Current.Factory.GetInstance() ) { } - protected UmbracoController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILogger logger) + protected UmbracoController(IOptions globalSettings, IUmbracoContextAccessor umbracoContextAccessor, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, ILoggerFactory loggerFactory) { GlobalSettings = globalSettings; UmbracoContextAccessor = umbracoContextAccessor; Services = services; AppCaches = appCaches; - Logger = logger; ProfilingLogger = profilingLogger; + LoggerFactory = loggerFactory; } } } From 894abdd183066d449f267a39fdf784c57048b117 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 09:27:54 +0200 Subject: [PATCH 45/85] Remove a bunch of references to the old logger --- .../Configuration/XmlConfigManipulator.cs | 2 +- src/Umbraco.Core/Routing/PublishedRouter.cs | 5 +++-- src/Umbraco.Core/Templates/HtmlUrlParser.cs | 5 +++-- .../BatchedDatabaseServerMessenger.cs | 3 ++- src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs | 5 +++-- .../Examine/MediaValueSetBuilder.cs | 6 +++--- src/Umbraco.Infrastructure/Install/InstallHelper.cs | 6 +++--- .../Install/InstallSteps/DatabaseConfigureStep.cs | 7 ++++--- .../Logging/Viewer/LogViewerComposer.cs | 2 +- .../Logging/Viewer/SerilogJsonLogViewer.cs | 5 +++-- .../V_8_0_0/DataTypes/PreValueMigratorCollection.cs | 2 +- .../Models/Mapping/ContentTypeMapDefinition.cs | 12 +++++++----- .../Models/Mapping/DataTypeMapDefinition.cs | 6 +++--- .../Models/Mapping/PropertyTypeGroupMapper.cs | 6 +++--- .../Runtime/CoreInitialComposer.cs | 2 +- .../Search/BackgroundIndexRebuilder.cs | 12 ++++++------ .../Services/Implement/NotificationService.cs | 6 +++--- .../Sync/DatabaseServerMessenger.cs | 5 +++-- .../LiveModelsProvider.cs | 6 +++--- .../PureLiveModelFactory.cs | 5 +++-- .../PublishedSnapshotService.cs | 6 +++--- .../Testing/IntegrationTestComposer.cs | 4 ++-- src/Umbraco.Tests/Logging/LogviewerTests.cs | 2 +- .../PublishedContent/NuCacheChildrenTests.cs | 3 +-- src/Umbraco.Tests/PublishedContent/NuCacheTests.cs | 3 +-- src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs | 4 ++-- .../Services/ContentTypeServiceVariantsTests.cs | 4 ++-- src/Umbraco.Tests/TestHelpers/BaseWebTest.cs | 2 +- src/Umbraco.Tests/Testing/TestingTests/MockTests.cs | 4 ++-- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 2 +- src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs | 7 +------ .../Controllers/BackOfficeController.cs | 6 +++--- .../Controllers/DictionaryController.cs | 6 +++--- .../Controllers/ExamineManagementController.cs | 2 +- .../Controllers/RedirectUrlManagementController.cs | 2 +- .../Install/InstallApiController.cs | 5 +++-- src/Umbraco.Web.Common/Macros/MacroRenderer.cs | 5 +++-- .../Middleware/UmbracoRequestMiddleware.cs | 7 ++++--- src/Umbraco.Web/Editors/AuthenticationController.cs | 5 +++-- src/Umbraco.Web/Editors/PasswordChanger.cs | 6 +++--- src/Umbraco.Web/Macros/MacroRenderer.cs | 5 +++-- src/Umbraco.Web/Security/MembershipHelper.cs | 9 +++++---- 42 files changed, 108 insertions(+), 99 deletions(-) diff --git a/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs b/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs index 65744f49d8..b7c3d5d58b 100644 --- a/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs +++ b/src/Umbraco.Core/Configuration/XmlConfigManipulator.cs @@ -4,8 +4,8 @@ using System.IO; using System.Linq; using System.Xml; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.IO; -using Umbraco.Core.Logging; namespace Umbraco.Core.Configuration { diff --git a/src/Umbraco.Core/Routing/PublishedRouter.cs b/src/Umbraco.Core/Routing/PublishedRouter.cs index b7fe066e81..d0f3d73019 100644 --- a/src/Umbraco.Core/Routing/PublishedRouter.cs +++ b/src/Umbraco.Core/Routing/PublishedRouter.cs @@ -3,6 +3,7 @@ using System.Linq; using System.Threading; using System.Globalization; using System.IO; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Logging; @@ -25,7 +26,7 @@ namespace Umbraco.Web.Routing private readonly IContentLastChanceFinder _contentLastChanceFinder; private readonly IProfilingLogger _profilingLogger; private readonly IVariationContextAccessor _variationContextAccessor; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IPublishedUrlProvider _publishedUrlProvider; private readonly IRequestAccessor _requestAccessor; private readonly IPublishedValueFallback _publishedValueFallback; @@ -43,7 +44,7 @@ namespace Umbraco.Web.Routing IContentLastChanceFinder contentLastChanceFinder, IVariationContextAccessor variationContextAccessor, IProfilingLogger proflog, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IPublishedUrlProvider publishedUrlProvider, IRequestAccessor requestAccessor, IPublishedValueFallback publishedValueFallback, diff --git a/src/Umbraco.Core/Templates/HtmlUrlParser.cs b/src/Umbraco.Core/Templates/HtmlUrlParser.cs index 64ffb8d787..8ebe270437 100644 --- a/src/Umbraco.Core/Templates/HtmlUrlParser.cs +++ b/src/Umbraco.Core/Templates/HtmlUrlParser.cs @@ -1,5 +1,6 @@ using System.Text.RegularExpressions; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -9,14 +10,14 @@ namespace Umbraco.Web.Templates public sealed class HtmlUrlParser { private readonly ContentSettings _contentSettings; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IIOHelper _ioHelper; private readonly IProfilingLogger _profilingLogger; private static readonly Regex ResolveUrlPattern = new Regex("(=[\"\']?)(\\W?\\~(?:.(?![\"\']?\\s+(?:\\S+)=|[>\"\']))+.)[\"\']?", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace); - public HtmlUrlParser(IOptions contentSettings, ILogger logger ,IProfilingLogger profilingLogger, IIOHelper ioHelper) + public HtmlUrlParser(IOptions contentSettings, Microsoft.Extensions.Logging.ILogger logger ,IProfilingLogger profilingLogger, IIOHelper ioHelper) { _contentSettings = contentSettings.Value; _logger = logger; diff --git a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs index 0170a4aeca..30b8917d05 100644 --- a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using Newtonsoft.Json; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Sync; @@ -32,7 +33,7 @@ namespace Umbraco.Web IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IServerRegistrar serverRegistrar, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index aad1b307e6..a704468f7d 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using System.Threading.Tasks; using Examine; using Umbraco.Core.Composing; @@ -15,11 +16,11 @@ namespace Umbraco.Examine public class IndexRebuilder { private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IEnumerable _populators; public IExamineManager ExamineManager { get; } - public IndexRebuilder(IProfilingLogger pLogger, ILogger logger, IExamineManager examineManager, IEnumerable populators) + public IndexRebuilder(IProfilingLogger pLogger, Microsoft.Extensions.Logging.ILogger logger, IExamineManager examineManager, IEnumerable populators) { _pLogger = pLogger; _populators = populators; diff --git a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs index 55811c8906..73ad31e115 100644 --- a/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs @@ -2,8 +2,8 @@ using Examine; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.PropertyEditors.ValueConverters; @@ -17,13 +17,13 @@ namespace Umbraco.Examine { private readonly UrlSegmentProviderCollection _urlSegmentProviders; private readonly IUserService _userService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IShortStringHelper _shortStringHelper; private readonly IJsonSerializer _serializer; public MediaValueSetBuilder(PropertyEditorCollection propertyEditors, UrlSegmentProviderCollection urlSegmentProviders, - IUserService userService, ILogger logger, IShortStringHelper shortStringHelper, IJsonSerializer serializer) + IUserService userService, ILogger logger, IShortStringHelper shortStringHelper, IJsonSerializer serializer) : base(propertyEditors, false) { _urlSegmentProviders = urlSegmentProviders; diff --git a/src/Umbraco.Infrastructure/Install/InstallHelper.cs b/src/Umbraco.Infrastructure/Install/InstallHelper.cs index e15aa0ab76..1538187528 100644 --- a/src/Umbraco.Infrastructure/Install/InstallHelper.cs +++ b/src/Umbraco.Infrastructure/Install/InstallHelper.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Models; using Umbraco.Net; @@ -22,7 +22,7 @@ namespace Umbraco.Web.Install { private static HttpClient _httpClient; private readonly DatabaseBuilder _databaseBuilder; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; private readonly ConnectionStrings _connectionStrings; private readonly IInstallationService _installationService; @@ -33,7 +33,7 @@ namespace Umbraco.Web.Install private InstallationType? _installationType; public InstallHelper(DatabaseBuilder databaseBuilder, - ILogger logger, + ILogger logger, IUmbracoVersion umbracoVersion, IOptions connectionStrings, IInstallationService installationService, diff --git a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs index 0dceaf9339..7727b6b760 100644 --- a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs +++ b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Web.Install.Models; using Umbraco.Core.Configuration.Models; @@ -16,13 +16,14 @@ namespace Umbraco.Web.Install.InstallSteps public class DatabaseConfigureStep : InstallSetupStep { private readonly DatabaseBuilder _databaseBuilder; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ConnectionStrings _connectionStrings; - public DatabaseConfigureStep(DatabaseBuilder databaseBuilder, IOptions connectionStrings) + public DatabaseConfigureStep(DatabaseBuilder databaseBuilder, IOptions connectionStrings, ILogger logger) { _databaseBuilder = databaseBuilder; _connectionStrings = connectionStrings.Value ?? throw new ArgumentNullException(nameof(connectionStrings)); + _logger = logger; } public override Task ExecuteAsync(DatabaseModel database) diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs index 0909ec67ad..f28b13ddbf 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs @@ -26,7 +26,7 @@ namespace Umbraco.Core.Logging.Viewer composition.RegisterUnique(factory => { - return new SerilogJsonLogViewer(factory.GetInstance(), + return new SerilogJsonLogViewer(factory.GetInstance>(), factory.GetInstance(), factory.GetInstance(), Log.Logger); diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs index a985d98453..16c9077bd1 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Serilog.Events; using Serilog.Formatting.Compact.Reader; @@ -11,10 +12,10 @@ namespace Umbraco.Core.Logging.Viewer internal class SerilogJsonLogViewer : SerilogLogViewerSourceBase { private readonly string _logsPath; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; public SerilogJsonLogViewer( - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, ILogViewerConfig logViewerConfig, ILoggingConfiguration loggingConfiguration, global::Serilog.ILogger serilogLog) diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs index 25730abcac..fbe8e38688 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/PreValueMigratorCollection.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes { diff --git a/src/Umbraco.Infrastructure/Models/Mapping/ContentTypeMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/ContentTypeMapDefinition.cs index eb130ae13a..efe24a6efd 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/ContentTypeMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/ContentTypeMapDefinition.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -30,14 +30,15 @@ namespace Umbraco.Web.Models.Mapping private readonly IContentTypeService _contentTypeService; private readonly IMediaTypeService _mediaTypeService; private readonly IMemberTypeService _memberTypeService; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; + private readonly ILogger _logger; private readonly IShortStringHelper _shortStringHelper; private readonly GlobalSettings _globalSettings; private readonly IHostingEnvironment _hostingEnvironment; public ContentTypeMapDefinition(CommonMapper commonMapper, PropertyEditorCollection propertyEditors, IDataTypeService dataTypeService, IFileService fileService, IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, - ILogger logger, IShortStringHelper shortStringHelper, IOptions globalSettings, IHostingEnvironment hostingEnvironment) + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IOptions globalSettings, IHostingEnvironment hostingEnvironment) { _commonMapper = commonMapper; _propertyEditors = propertyEditors; @@ -46,7 +47,8 @@ namespace Umbraco.Web.Models.Mapping _contentTypeService = contentTypeService; _mediaTypeService = mediaTypeService; _memberTypeService = memberTypeService; - _logger = logger; + _loggerFactory = loggerFactory; + _logger = _loggerFactory.CreateLogger(); _shortStringHelper = shortStringHelper; _globalSettings = globalSettings.Value; _hostingEnvironment = hostingEnvironment; @@ -534,7 +536,7 @@ namespace Umbraco.Web.Models.Mapping { MapTypeToDisplayBase(source, target); - var groupsMapper = new PropertyTypeGroupMapper(_propertyEditors, _dataTypeService, _shortStringHelper, _logger); + var groupsMapper = new PropertyTypeGroupMapper(_propertyEditors, _dataTypeService, _shortStringHelper, _loggerFactory.CreateLogger>()); target.Groups = groupsMapper.Map(source); } diff --git a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs index 97ce0c4b5f..0e403cd88b 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/DataTypeMapDefinition.cs @@ -2,9 +2,9 @@ using System.Collections.Generic; using System.Linq; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -15,10 +15,10 @@ namespace Umbraco.Web.Models.Mapping public class DataTypeMapDefinition : IMapDefinition { private readonly PropertyEditorCollection _propertyEditors; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ContentSettings _contentSettings; - public DataTypeMapDefinition(PropertyEditorCollection propertyEditors, ILogger logger, IOptions contentSettings) + public DataTypeMapDefinition(PropertyEditorCollection propertyEditors, ILogger logger, IOptions contentSettings) { _propertyEditors = propertyEditors; _logger = logger; diff --git a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs index e67fba2206..1bdac7618c 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/PropertyTypeGroupMapper.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -17,9 +17,9 @@ namespace Umbraco.Web.Models.Mapping private readonly PropertyEditorCollection _propertyEditors; private readonly IDataTypeService _dataTypeService; private readonly IShortStringHelper _shortStringHelper; - private readonly ILogger _logger; + private readonly ILogger> _logger; - public PropertyTypeGroupMapper(PropertyEditorCollection propertyEditors, IDataTypeService dataTypeService, IShortStringHelper shortStringHelper, ILogger logger) + public PropertyTypeGroupMapper(PropertyEditorCollection propertyEditors, IDataTypeService dataTypeService, IShortStringHelper shortStringHelper, ILogger> logger) { _propertyEditors = propertyEditors; _dataTypeService = dataTypeService; diff --git a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs index 8471b98ce0..67adc73589 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs @@ -147,7 +147,7 @@ namespace Umbraco.Core.Runtime factory.GetInstance(), factory.GetInstance(), factory.GetInstance(), - factory.GetInstance(), + factory.GetInstance>(), factory.GetInstance(), true, new DatabaseServerMessengerOptions(), factory.GetInstance(), diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 2b9c59ad53..474496263e 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -21,17 +21,17 @@ namespace Umbraco.Web.Search private readonly IMainDom _mainDom; // TODO: Remove unused ProfilingLogger? private readonly IProfilingLogger _pLogger; - private readonly Core.Logging.ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _hostingEnvironment; private static BackgroundTaskRunner _rebuildOnStartupRunner; - public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) { _mainDom = mainDom; _pLogger = pLogger; - _logger = logger; _loggerFactory = loggerFactory; + _logger = loggerFactory.CreateLogger(); _hostingEnvironment = hostingEnvironment; _indexRebuilder = indexRebuilder; } @@ -55,7 +55,7 @@ namespace Umbraco.Web.Search _logger.LogInformation("Starting initialize async background thread."); //do the rebuild on a managed background thread - var task = new RebuildOnStartupTask(_mainDom, _indexRebuilder, _logger as ILogger, onlyEmptyIndexes, waitMilliseconds); + var task = new RebuildOnStartupTask(_mainDom, _indexRebuilder, _loggerFactory.CreateLogger(), onlyEmptyIndexes, waitMilliseconds); _rebuildOnStartupRunner = new BackgroundTaskRunner( "RebuildIndexesOnStartup", @@ -73,12 +73,12 @@ namespace Umbraco.Web.Search private readonly IMainDom _mainDom; private readonly IndexRebuilder _indexRebuilder; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly bool _onlyEmptyIndexes; private readonly int _waitMilliseconds; public RebuildOnStartupTask(IMainDom mainDom, - IndexRebuilder indexRebuilder, ILogger logger, bool onlyEmptyIndexes, int waitMilliseconds = 0) + IndexRebuilder indexRebuilder, Microsoft.Extensions.Logging.ILogger logger, bool onlyEmptyIndexes, int waitMilliseconds = 0) { _mainDom = mainDom; _indexRebuilder = indexRebuilder ?? throw new ArgumentNullException(nameof(indexRebuilder)); diff --git a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs index f74ad6038b..7964cd273e 100644 --- a/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs +++ b/src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs @@ -7,9 +7,9 @@ using System.Net.Mail; using System.Text; using System.Threading; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; @@ -28,11 +28,11 @@ namespace Umbraco.Core.Services.Implement private readonly GlobalSettings _globalSettings; private readonly ContentSettings _contentSettings; private readonly IEmailSender _emailSender; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; public NotificationService(IScopeProvider provider, IUserService userService, IContentService contentService, ILocalizationService localizationService, - ILogger logger, IIOHelper ioHelper, INotificationsRepository notificationsRepository, IOptions globalSettings, IOptions contentSettings, IEmailSender emailSender) + ILogger logger, IIOHelper ioHelper, INotificationsRepository notificationsRepository, IOptions globalSettings, IOptions contentSettings, IEmailSender emailSender) { _notificationsRepository = notificationsRepository; _globalSettings = globalSettings.Value; diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 14f3f099e4..491836567c 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -8,6 +8,7 @@ using System.Threading; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using NPoco; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Composing; using Umbraco.Core.Logging; @@ -47,7 +48,7 @@ namespace Umbraco.Core.Sync public DatabaseServerMessengerOptions Options { get; } public DatabaseServerMessenger( - IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, ILogger logger, IServerRegistrar serverRegistrar, + IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, Microsoft.Extensions.Logging.ILogger logger, IServerRegistrar serverRegistrar, bool distributedEnabled, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, CacheRefresherCollection cacheRefreshers) : base(distributedEnabled) { @@ -72,7 +73,7 @@ namespace Umbraco.Core.Sync + "] " + Guid.NewGuid().ToString("N").ToUpper(); // make it truly unique } - protected ILogger Logger { get; } + protected Microsoft.Extensions.Logging.ILogger Logger { get; } protected IScopeProvider ScopeProvider { get; } diff --git a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs index e8bb2548ed..7e4ad8cfad 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/LiveModelsProvider.cs @@ -2,11 +2,11 @@ using System.Threading; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http.Extensions; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Configuration; using Umbraco.Core; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.ModelsBuilder.Embedded.Building; using Umbraco.Web.Cache; using Umbraco.Core.Configuration.Models; @@ -19,7 +19,7 @@ namespace Umbraco.ModelsBuilder.Embedded { private static Mutex _mutex; private static int _req; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ModelsBuilderConfig _config; private readonly ModelsGenerator _modelGenerator; private readonly ModelsGenerationError _mbErrors; @@ -28,7 +28,7 @@ namespace Umbraco.ModelsBuilder.Embedded // we do not manage pure live here internal bool IsEnabled => _config.ModelsMode.IsLiveNotPure(); - public LiveModelsProvider(ILogger logger, IOptions config, ModelsGenerator modelGenerator, ModelsGenerationError mbErrors, IHostingEnvironment hostingEnvironment) + public LiveModelsProvider(ILogger logger, IOptions config, ModelsGenerator modelGenerator, ModelsGenerationError mbErrors, IHostingEnvironment hostingEnvironment) { _logger = logger; _config = config.Value ?? throw new ArgumentNullException(nameof(config)); diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index f967060ecb..6bf2f4f8c5 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -8,6 +8,7 @@ using System.Reflection.Emit; using System.Text; using System.Text.RegularExpressions; using System.Threading; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core; using Umbraco.Core.Hosting; @@ -27,7 +28,7 @@ namespace Umbraco.ModelsBuilder.Embedded private volatile bool _hasModels; // volatile 'cos reading outside lock private bool _pendingRebuild; private readonly IProfilingLogger _profilingLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly FileSystemWatcher _watcher; private int _ver, _skipver; private readonly int _debugLevel; @@ -48,7 +49,7 @@ namespace Umbraco.ModelsBuilder.Embedded public PureLiveModelFactory( Lazy umbracoServices, IProfilingLogger profilingLogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IOptions config, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index 3c23e1311d..7dc1be3b66 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -45,7 +45,7 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly IProfilingLogger _profilingLogger; private readonly IScopeProvider _scopeProvider; private readonly IDataSource _dataSource; - private readonly Core.Logging.ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IDocumentRepository _documentRepository; private readonly IMediaRepository _mediaRepository; @@ -87,7 +87,7 @@ namespace Umbraco.Web.PublishedCache.NuCache public PublishedSnapshotService(PublishedSnapshotServiceOptions options, IMainDom mainDom, IRuntimeState runtime, ServiceContext serviceContext, IPublishedContentTypeFactory publishedContentTypeFactory, IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor, - IProfilingLogger profilingLogger, Core.Logging.ILogger logger, + IProfilingLogger profilingLogger, ILoggerFactory loggerFactory, IScopeProvider scopeProvider, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, @@ -110,8 +110,8 @@ namespace Umbraco.Web.PublishedCache.NuCache _publishedContentTypeFactory = publishedContentTypeFactory; _profilingLogger = profilingLogger; _dataSource = dataSource; - _logger = logger; _loggerFactory = loggerFactory; + _logger = _loggerFactory.CreateLogger(); _scopeProvider = scopeProvider; _documentRepository = documentRepository; _mediaRepository = mediaRepository; diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index cf5bbf1473..7d8965be87 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -92,8 +92,8 @@ namespace Umbraco.Tests.Integration.Testing // replace the default so there is no background index rebuilder private class TestBackgroundIndexRebuilder : BackgroundIndexRebuilder { - public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) - : base(mainDom, pLogger, logger, loggerFactory, hostingEnvironment, indexRebuilder) + public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + : base(mainDom, pLogger, loggerFactory, hostingEnvironment, indexRebuilder) { } diff --git a/src/Umbraco.Tests/Logging/LogviewerTests.cs b/src/Umbraco.Tests/Logging/LogviewerTests.cs index 0a193b4446..3e2771a907 100644 --- a/src/Umbraco.Tests/Logging/LogviewerTests.cs +++ b/src/Umbraco.Tests/Logging/LogviewerTests.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Logging File.Copy(exampleLogfilePath, _newLogfilePath, true); File.Copy(exampleSearchfilePath, _newSearchfilePath, true); - var logger = Mock.Of(); + var logger = Mock.Of>(); var logViewerConfig = new LogViewerConfig(hostingEnv); _logViewer = new SerilogJsonLogViewer(logger, logViewerConfig, loggingConfiguration, Log.Logger); } diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs index 0a329c4719..69ba0f7b2d 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs @@ -155,8 +155,7 @@ namespace Umbraco.Tests.PublishedContent _snapshotAccessor, _variationAccesor, Mock.Of(), - Mock.Of>(), - Mock.Of(), + NullLoggerFactory.Instance, scopeProvider.Object, Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs index 4e491e742b..8b9f20db88 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs @@ -195,8 +195,7 @@ namespace Umbraco.Tests.PublishedContent new TestPublishedSnapshotAccessor(), _variationAccesor, Mock.Of(), - Mock.Of>(), - Mock.Of(), + NullLoggerFactory.Instance, scopeProvider, Mock.Of(), Mock.Of(), diff --git a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs index 9814f79950..156044e66b 100644 --- a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Web.Routing; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -101,8 +102,7 @@ namespace Umbraco.Tests.Scoping publishedSnapshotAccessor, Mock.Of(), ProfilingLogger, - Mock.Of>(), - Mock.Of(), + NullLoggerFactory.Instance, ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, diff --git a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs index 58d2e27f4d..8ea3a560bf 100644 --- a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs +++ b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -73,8 +74,7 @@ namespace Umbraco.Tests.Services publishedSnapshotAccessor, Mock.Of(), ProfilingLogger, - Mock.Of>(), - Mock.Of(), + NullLoggerFactory.Instance, ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, diff --git a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs index 74e630025e..4fa3546c7d 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs @@ -106,7 +106,7 @@ namespace Umbraco.Tests.TestHelpers new TestLastChanceFinder(), new TestVariationContextAccessor(), new ProfilingLogger(Mock.Of(), Mock.Of()), - Mock.Of>(), + Mock.Of>(), Mock.Of(), Mock.Of(), container?.GetInstance() ?? Current.Factory.GetInstance(), diff --git a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs index 96907654c4..9f23c20104 100644 --- a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs +++ b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs @@ -3,6 +3,7 @@ using System.Globalization; using System.Linq; using System.Web; using System.Web.Security; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -105,11 +106,10 @@ namespace Umbraco.Tests.Testing.TestingTests public void Can_Mock_UmbracoApiController_Dependencies_With_Injected_UmbracoMapper() { var pLogger = Mock.Of(); - var logger = Mock.Of(); var memberService = Mock.Of(); var memberTypeService = Mock.Of(); var membershipProvider = new MembersMembershipProvider(memberService, memberTypeService, Mock.Of(), TestHelper.GetHostingEnvironment(), TestHelper.GetIpResolver()); - var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, logger, ShortStringHelper, Mock.Of()); + var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, NullLoggerFactory.Instance, ShortStringHelper, Mock.Of()); var umbracoMapper = new UmbracoMapper(new MapDefinitionCollection(new[] { Mock.Of() })); var umbracoApiController = new FakeUmbracoApiController(new GlobalSettings(), Mock.Of(), Mock.Of(), ServiceContext.CreatePartial(), AppCaches.NoCache, pLogger, Mock.Of(), umbracoMapper, Mock.Of()); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 821b72f4d8..e78dc7f79f 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -225,7 +225,7 @@ namespace Umbraco.Tests.Testing var memberService = Mock.Of(); var memberTypeService = Mock.Of(); var membershipProvider = new MembersMembershipProvider(memberService, memberTypeService, Mock.Of(), TestHelper.GetHostingEnvironment(), TestHelper.GetIpResolver()); - var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, logger, ShortStringHelper, Mock.Of()); + var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, loggerFactory, ShortStringHelper, Mock.Of()); Composition.RegisterUnique(membershipHelper); diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index 0304f4005f..bc6df5d9ad 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -57,7 +57,7 @@ namespace Umbraco.Tests.UmbracoExamine public static MediaIndexPopulator GetMediaIndexRebuilder(PropertyEditorCollection propertyEditors, IMediaService mediaService) { - var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), Mock.Of(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); + var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), Mock.Of>(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); var mediaIndexDataSource = new MediaIndexPopulator(null, mediaService, mediaValueSetBuilder); return mediaIndexDataSource; } @@ -163,11 +163,6 @@ namespace Umbraco.Tests.UmbracoExamine return new ProfilingLogger(Mock.Of(), Mock.Of()); } - public static Core.Logging.ILogger GetMockLogger() - { - return Mock.Of>(); - } - public static UmbracoContentIndex GetUmbracoIndexer( IProfilingLogger profilingLogger, IHostingEnvironment hostingEnvironment, diff --git a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs index 24d46e894f..963b92f6e3 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs @@ -7,6 +7,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.BackOffice; using Umbraco.Core.Cache; @@ -14,7 +15,6 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Grid; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Core.WebAssets; using Umbraco.Extensions; @@ -46,7 +46,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly AppCaches _appCaches; private readonly BackOfficeSignInManager _signInManager; private readonly IWebSecurity _webSecurity; - private readonly ILogger _logger; + private readonly ILogger _logger; public BackOfficeController( BackOfficeUserManager userManager, @@ -60,7 +60,7 @@ namespace Umbraco.Web.BackOffice.Controllers AppCaches appCaches, BackOfficeSignInManager signInManager, IWebSecurity webSecurity, - ILogger logger) + ILogger logger) { _userManager = userManager; _runtimeMinifier = runtimeMinifier; diff --git a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs index c61f727a5d..1f89c85ba9 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; using System.Linq; using System.Net.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Services; @@ -32,7 +32,7 @@ namespace Umbraco.Web.BackOffice.Controllers [UmbracoTreeAuthorize(Constants.Trees.Dictionary)] public class DictionaryController : BackOfficeNotificationsController { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ILocalizationService _localizationService; private readonly IWebSecurity _webSecurity; private readonly GlobalSettings _globalSettings; @@ -40,7 +40,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly UmbracoMapper _umbracoMapper; public DictionaryController( - ILogger logger, + ILogger logger, ILocalizationService localizationService, IWebSecurity webSecurity, IOptions globalSettings, diff --git a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs index 3bd984b579..72f07c02f3 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs @@ -4,10 +4,10 @@ using System.Linq; using Examine; using Microsoft.AspNetCore.Http.Features; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Examine; using Umbraco.Extensions; using Umbraco.Web.Common.Attributes; diff --git a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs index c503de68f5..fcec6d0699 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs @@ -2,7 +2,7 @@ using System.Xml; using System.Security; using Microsoft.AspNetCore.Mvc; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Web.Models.ContentEditing; using Umbraco.Core; diff --git a/src/Umbraco.Web.Common/Install/InstallApiController.cs b/src/Umbraco.Web.Common/Install/InstallApiController.cs index 6e535e60dd..697a110080 100644 --- a/src/Umbraco.Web.Common/Install/InstallApiController.cs +++ b/src/Umbraco.Web.Common/Install/InstallApiController.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Reflection; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Newtonsoft.Json.Linq; using Umbraco.Core; using Umbraco.Core.Logging; @@ -31,10 +32,10 @@ namespace Umbraco.Web.Common.Install private readonly InstallStatusTracker _installStatusTracker; private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; private readonly InstallStepCollection _installSteps; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IProfilingLogger _proflog; - public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, ILogger logger, + public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, Microsoft.Extensions.Logging.ILogger logger, InstallHelper installHelper, InstallStepCollection installSteps, InstallStatusTracker installStatusTracker, IUmbracoApplicationLifetime umbracoApplicationLifetime) { diff --git a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs index d0474e0d29..e40917b36d 100644 --- a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Text; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration.Models; @@ -22,7 +23,7 @@ namespace Umbraco.Web.Macros public class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -37,7 +38,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, ILocalizedTextService textService, diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index fe46349559..d3474bf604 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -2,6 +2,7 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http.Extensions; +using Microsoft.Extensions.Logging; using Umbraco.Web.Common.Lifetime; using Umbraco.Core; using Umbraco.Core.Logging; @@ -20,13 +21,13 @@ namespace Umbraco.Web.Common.Middleware /// public class UmbracoRequestMiddleware : IMiddleware { - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IUmbracoRequestLifetimeManager _umbracoRequestLifetimeManager; private readonly IUmbracoContextFactory _umbracoContextFactory; private readonly IRequestCache _requestCache; public UmbracoRequestMiddleware( - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IUmbracoRequestLifetimeManager umbracoRequestLifetimeManager, IUmbracoContextFactory umbracoContextFactory, IRequestCache requestCache) @@ -104,7 +105,7 @@ namespace Umbraco.Web.Common.Middleware /// /// /// - private static void DisposeRequestCacheItems(ILogger logger, IRequestCache requestCache, Uri requestUri) + private static void DisposeRequestCacheItems(Microsoft.Extensions.Logging.ILogger logger, IRequestCache requestCache, Uri requestUri) { // do not process if client-side request if (requestUri.IsClientSideRequest()) diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index e4d3c043c5..1ccb9619d6 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -11,6 +11,7 @@ using System.Web.Http; using System.Web.Mvc; using Microsoft.AspNetCore.Identity; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Models; @@ -48,7 +49,7 @@ namespace Umbraco.Web.Editors private BackOfficeSignInManager _signInManager; private readonly IUserPasswordConfiguration _passwordConfiguration; private readonly IHostingEnvironment _hostingEnvironment; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IRuntimeState _runtimeState; private readonly SecuritySettings _securitySettings; private readonly IRequestAccessor _requestAccessor; @@ -63,7 +64,7 @@ namespace Umbraco.Web.Editors ServiceContext services, AppCaches appCaches, IProfilingLogger pLogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IRuntimeState runtimeState, UmbracoMapper umbracoMapper, IOptions securitySettings, diff --git a/src/Umbraco.Web/Editors/PasswordChanger.cs b/src/Umbraco.Web/Editors/PasswordChanger.cs index 06b4ea3367..be6a20e7cc 100644 --- a/src/Umbraco.Web/Editors/PasswordChanger.cs +++ b/src/Umbraco.Web/Editors/PasswordChanger.cs @@ -1,8 +1,8 @@ using System; using System.ComponentModel.DataAnnotations; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Extensions; using Umbraco.Web.Models; @@ -14,9 +14,9 @@ namespace Umbraco.Web.Editors { internal class PasswordChanger { - private readonly ILogger _logger; + private readonly ILogger _logger; - public PasswordChanger(ILogger logger) + public PasswordChanger(ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Web/Macros/MacroRenderer.cs b/src/Umbraco.Web/Macros/MacroRenderer.cs index e185f62bc5..77321edbdf 100644 --- a/src/Umbraco.Web/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web/Macros/MacroRenderer.cs @@ -4,6 +4,7 @@ using System.IO; using System.Linq; using System.Text; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration.Models; @@ -21,7 +22,7 @@ namespace Umbraco.Web.Macros internal class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -37,7 +38,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, - ILogger logger, + Microsoft.Extensions.Logging.ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, ILocalizedTextService textService, diff --git a/src/Umbraco.Web/Security/MembershipHelper.cs b/src/Umbraco.Web/Security/MembershipHelper.cs index 00758b2a65..d9fe3edbda 100644 --- a/src/Umbraco.Web/Security/MembershipHelper.cs +++ b/src/Umbraco.Web/Security/MembershipHelper.cs @@ -16,7 +16,6 @@ using Umbraco.Core.Strings; using Umbraco.Web.Editors; using Umbraco.Web.Security.Providers; using System.ComponentModel.DataAnnotations; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Security { @@ -32,6 +31,7 @@ namespace Umbraco.Web.Security private readonly IMemberTypeService _memberTypeService; private readonly IPublicAccessService _publicAccessService; private readonly AppCaches _appCaches; + private readonly ILoggerFactory _loggerFactory; private readonly ILogger _logger; private readonly IShortStringHelper _shortStringHelper; private readonly IEntityService _entityService; @@ -48,7 +48,7 @@ namespace Umbraco.Web.Security IMemberTypeService memberTypeService, IPublicAccessService publicAccessService, AppCaches appCaches, - ILogger logger, + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IEntityService entityService ) @@ -59,7 +59,8 @@ namespace Umbraco.Web.Security _memberTypeService = memberTypeService; _publicAccessService = publicAccessService; _appCaches = appCaches; - _logger = logger; + _loggerFactory = loggerFactory; + _logger = _loggerFactory.CreateLogger(); _shortStringHelper = shortStringHelper; _membershipProvider = membershipProvider ?? throw new ArgumentNullException(nameof(membershipProvider)); @@ -706,7 +707,7 @@ namespace Umbraco.Web.Security /// public virtual Attempt ChangePassword(string username, ChangingPasswordModel passwordModel, MembershipProvider membershipProvider) { - var passwordChanger = new PasswordChanger(_logger); + var passwordChanger = new PasswordChanger(_loggerFactory.CreateLogger()); return ChangePasswordWithMembershipProvider(username, passwordModel, membershipProvider); } From ab3ac5ad91439dcee0e99f2e15cb7f9963f3ce7d Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 09:52:58 +0200 Subject: [PATCH 46/85] Remove a bunch of references to the old logger --- src/Umbraco.Core/IO/MediaFileSystem.cs | 6 +++--- src/Umbraco.Core/Manifest/ManifestWatcher.cs | 6 +++--- .../Models/Mapping/ContentPropertyBasicMapper.cs | 6 +++--- .../Mapping/ContentPropertyDisplayMapper.cs | 6 +++--- .../Models/Mapping/ContentPropertyDtoMapper.cs | 4 ++-- .../Mapping/ContentPropertyMapDefinition.cs | 12 ++++++------ .../Packaging/PackageActionRunner.cs | 6 +++--- .../Routing/ContentFinderByIdPath.cs | 6 +++--- .../Routing/ContentFinderByRedirectUrl.cs | 6 +++--- src/Umbraco.Core/Routing/ContentFinderByUrl.cs | 14 +++++++------- .../Routing/ContentFinderByUrlAndTemplate.cs | 16 +++++++++------- src/Umbraco.Core/Routing/DefaultUrlProvider.cs | 6 +++--- .../Cache/DistributedCacheBinder.cs | 6 +++--- .../Cache/DistributedCacheBinder_Handlers.cs | 2 +- .../Compose/ManifestWatcherComponent.cs | 10 +++++----- .../Compose/NotificationsComponent.cs | 6 +++--- .../Install/InstallSteps/DatabaseUpgradeStep.cs | 6 +++--- .../Upgrade/V_8_0_0/DataTypeMigration.cs | 6 +++--- .../Models/Mapping/MacroMapDefinition.cs | 6 +++--- .../Models/PathValidationExtensions.cs | 4 ++-- .../Routing/ContentFinderByConfigured404.cs | 6 +++--- .../Scheduling/SchedulerComponent.cs | 7 +++---- .../DataSource/DatabaseDataSource.cs | 6 +++--- .../Implementations/TestHelper.cs | 2 -- .../Filters/ContentModelValidatorTests.cs | 3 +-- .../Models/PathValidationTests.cs | 12 ++++++------ .../Integration/ContentEventsTests.cs | 2 +- src/Umbraco.Tests/Models/MediaXmlTest.cs | 7 ++++--- .../Routing/ContentFinderByIdTests.cs | 3 ++- .../ContentFinderByUrlAndTemplateTests.cs | 3 ++- .../Routing/ContentFinderByUrlTests.cs | 11 ++++++----- .../ContentFinderByUrlWithDomainsTests.cs | 5 +++-- .../Routing/DomainsAndCulturesTests.cs | 7 ++++--- src/Umbraco.Tests/Routing/GetContentUrlsTests.cs | 11 ++++++----- ...lProviderWithHideTopLevelNodeFromPathTests.cs | 3 ++- ...oviderWithoutHideTopLevelNodeFromPathTests.cs | 15 ++++++++------- .../Routing/UrlsProviderWithDomainsTests.cs | 15 ++++++++------- .../Routing/UrlsWithNestedDomains.cs | 5 +++-- src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs | 6 +++--- .../Scoping/ScopedRepositoryTests.cs | 8 ++++---- src/Umbraco.Tests/Scoping/ScopedXmlTests.cs | 6 +++--- .../Services/ContentTypeServiceVariantsTests.cs | 4 ++-- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 2 +- .../Controllers/AuthenticationController.cs | 6 +++--- .../Controllers/ContentController.cs | 14 ++++++++------ .../Controllers/ContentControllerBase.cs | 13 ++++++++----- .../Controllers/CurrentUserController.cs | 10 +++++----- .../Controllers/DashboardController.cs | 6 +++--- .../Controllers/HelpController.cs | 6 +++--- .../Controllers/MacrosController.cs | 6 +++--- .../Controllers/MediaController.cs | 13 ++++++++----- .../Controllers/MemberController.cs | 6 +++--- .../Controllers/PackageInstallController.cs | 6 +++--- .../Controllers/RelationTypeController.cs | 6 +++--- .../Controllers/UsersController.cs | 10 +++++----- .../Filters/ContentModelValidator.cs | 8 ++++---- .../Filters/ContentSaveModelValidator.cs | 4 ++-- .../Filters/ContentSaveValidationAttribute.cs | 10 +++++----- .../Filters/FileUploadCleanupFilterAttribute.cs | 6 +++--- .../Filters/MediaItemSaveValidationAttribute.cs | 10 +++++----- .../Filters/MediaSaveModelValidator.cs | 4 ++-- .../Filters/MemberSaveModelValidator.cs | 4 ++-- .../Filters/MemberSaveValidationAttribute.cs | 10 +++++----- .../ValidateAngularAntiForgeryTokenAttribute.cs | 6 +++--- .../HealthCheck/HealthCheckController.cs | 6 +++--- .../PropertyEditors/RteEmbedController.cs | 6 +++--- .../Security/PasswordChanger.cs | 6 +++--- .../Trees/ContentTreeController.cs | 4 ++-- .../Trees/ContentTreeControllerBase.cs | 6 +++--- .../Trees/MediaTreeController.cs | 4 ++-- .../Install/InstallAuthorizeAttribute.cs | 6 +++--- .../Install/InstallController.cs | 8 ++++---- .../Profiler/WebProfilerComponent.cs | 3 ++- src/Umbraco.Web/Logging/WebProfilerComponent.cs | 3 ++- .../CDF/ClientDependencyConfiguration.cs | 6 +++--- .../CDF/ClientDependencyRuntimeMinifier.cs | 12 +++++++----- 76 files changed, 272 insertions(+), 251 deletions(-) diff --git a/src/Umbraco.Core/IO/MediaFileSystem.cs b/src/Umbraco.Core/IO/MediaFileSystem.cs index a6af47fab5..5e5a3f3e97 100644 --- a/src/Umbraco.Core/IO/MediaFileSystem.cs +++ b/src/Umbraco.Core/IO/MediaFileSystem.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Strings; @@ -15,13 +15,13 @@ namespace Umbraco.Core.IO public class MediaFileSystem : FileSystemWrapper, IMediaFileSystem { private readonly IMediaPathScheme _mediaPathScheme; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IShortStringHelper _shortStringHelper; /// /// Initializes a new instance of the class. /// - public MediaFileSystem(IFileSystem innerFileSystem, IMediaPathScheme mediaPathScheme, ILogger logger, IShortStringHelper shortStringHelper) + public MediaFileSystem(IFileSystem innerFileSystem, IMediaPathScheme mediaPathScheme, ILogger logger, IShortStringHelper shortStringHelper) : base(innerFileSystem) { _mediaPathScheme = mediaPathScheme; diff --git a/src/Umbraco.Core/Manifest/ManifestWatcher.cs b/src/Umbraco.Core/Manifest/ManifestWatcher.cs index 38b9a30190..6bd893d298 100644 --- a/src/Umbraco.Core/Manifest/ManifestWatcher.cs +++ b/src/Umbraco.Core/Manifest/ManifestWatcher.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Net; namespace Umbraco.Core.Manifest @@ -13,11 +13,11 @@ namespace Umbraco.Core.Manifest private static readonly object Locker = new object(); private static volatile bool _isRestarting; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; private readonly List _fws = new List(); - public ManifestWatcher(ILogger logger, IUmbracoApplicationLifetime umbracoApplicationLifetime) + public ManifestWatcher(ILogger logger, IUmbracoApplicationLifetime umbracoApplicationLifetime) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _umbracoApplicationLifetime = umbracoApplicationLifetime; diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs index cddd8a1a81..9742753b47 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyBasicMapper.cs @@ -1,7 +1,7 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -17,11 +17,11 @@ namespace Umbraco.Web.Models.Mapping where TDestination : ContentPropertyBasic, new() { private readonly IEntityService _entityService; - private readonly ILogger _logger; + private readonly ILogger> _logger; private readonly PropertyEditorCollection _propertyEditors; protected IDataTypeService DataTypeService { get; } - public ContentPropertyBasicMapper(IDataTypeService dataTypeService, IEntityService entityService, ILogger logger, PropertyEditorCollection propertyEditors) + public ContentPropertyBasicMapper(IDataTypeService dataTypeService, IEntityService entityService, ILogger> logger, PropertyEditorCollection propertyEditors) { _logger = logger; _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyDisplayMapper.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyDisplayMapper.cs index 2bde6d72b1..a7771015a0 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyDisplayMapper.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyDisplayMapper.cs @@ -1,5 +1,5 @@ -using Umbraco.Core.Dictionary; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Dictionary; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -16,7 +16,7 @@ namespace Umbraco.Web.Models.Mapping private readonly ICultureDictionary _cultureDictionary; private readonly ILocalizedTextService _textService; - public ContentPropertyDisplayMapper(ICultureDictionary cultureDictionary, IDataTypeService dataTypeService, IEntityService entityService, ILocalizedTextService textService, ILogger logger, PropertyEditorCollection propertyEditors) + public ContentPropertyDisplayMapper(ICultureDictionary cultureDictionary, IDataTypeService dataTypeService, IEntityService entityService, ILocalizedTextService textService, ILogger logger, PropertyEditorCollection propertyEditors) : base(dataTypeService, entityService, logger, propertyEditors) { _cultureDictionary = cultureDictionary; diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyDtoMapper.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyDtoMapper.cs index bc37bf6e2b..e431614afc 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyDtoMapper.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyDtoMapper.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -12,7 +12,7 @@ namespace Umbraco.Web.Models.Mapping /// internal class ContentPropertyDtoMapper : ContentPropertyBasicMapper { - public ContentPropertyDtoMapper(IDataTypeService dataTypeService, IEntityService entityService, ILogger logger, PropertyEditorCollection propertyEditors) + public ContentPropertyDtoMapper(IDataTypeService dataTypeService, IEntityService entityService, ILogger logger, PropertyEditorCollection propertyEditors) : base(dataTypeService, entityService, logger, propertyEditors) { } diff --git a/src/Umbraco.Core/Models/Mapping/ContentPropertyMapDefinition.cs b/src/Umbraco.Core/Models/Mapping/ContentPropertyMapDefinition.cs index c5b989e39c..a74b0467e2 100644 --- a/src/Umbraco.Core/Models/Mapping/ContentPropertyMapDefinition.cs +++ b/src/Umbraco.Core/Models/Mapping/ContentPropertyMapDefinition.cs @@ -1,5 +1,5 @@ -using Umbraco.Core.Dictionary; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Dictionary; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -18,11 +18,11 @@ namespace Umbraco.Web.Models.Mapping private readonly ContentPropertyDtoMapper _contentPropertyDtoConverter; private readonly ContentPropertyDisplayMapper _contentPropertyDisplayMapper; - public ContentPropertyMapDefinition(ICultureDictionary cultureDictionary, IDataTypeService dataTypeService, IEntityService entityService, ILocalizedTextService textService, ILogger logger, PropertyEditorCollection propertyEditors) + public ContentPropertyMapDefinition(ICultureDictionary cultureDictionary, IDataTypeService dataTypeService, IEntityService entityService, ILocalizedTextService textService, ILoggerFactory loggerFactory, PropertyEditorCollection propertyEditors) { - _contentPropertyBasicConverter = new ContentPropertyBasicMapper(dataTypeService, entityService, logger, propertyEditors); - _contentPropertyDtoConverter = new ContentPropertyDtoMapper(dataTypeService, entityService, logger, propertyEditors); - _contentPropertyDisplayMapper = new ContentPropertyDisplayMapper(cultureDictionary, dataTypeService, entityService, textService, logger, propertyEditors); + _contentPropertyBasicConverter = new ContentPropertyBasicMapper(dataTypeService, entityService, loggerFactory.CreateLogger>(), propertyEditors); + _contentPropertyDtoConverter = new ContentPropertyDtoMapper(dataTypeService, entityService, loggerFactory.CreateLogger(), propertyEditors); + _contentPropertyDisplayMapper = new ContentPropertyDisplayMapper(cultureDictionary, dataTypeService, entityService, textService, loggerFactory.CreateLogger(), propertyEditors); } public void DefineMaps(UmbracoMapper mapper) diff --git a/src/Umbraco.Core/Packaging/PackageActionRunner.cs b/src/Umbraco.Core/Packaging/PackageActionRunner.cs index b99e0c0062..138feadf29 100644 --- a/src/Umbraco.Core/Packaging/PackageActionRunner.cs +++ b/src/Umbraco.Core/Packaging/PackageActionRunner.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Xml.Linq; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.PackageActions; namespace Umbraco.Core.Packaging @@ -11,10 +11,10 @@ namespace Umbraco.Core.Packaging /// public class PackageActionRunner : IPackageActionRunner { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly PackageActionCollection _packageActions; - public PackageActionRunner(ILogger logger, PackageActionCollection packageActions) + public PackageActionRunner(ILogger logger, PackageActionCollection packageActions) { _logger = logger; _packageActions = packageActions; diff --git a/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs b/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs index 6128c6e158..856b91e36f 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByIdPath.cs @@ -1,4 +1,3 @@ -using Umbraco.Core.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.UmbracoSettings; @@ -6,6 +5,7 @@ using Umbraco.Core.Models.PublishedContent; using System.Globalization; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Routing { @@ -17,11 +17,11 @@ namespace Umbraco.Web.Routing /// public class ContentFinderByIdPath : IContentFinder { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IRequestAccessor _requestAccessor; private readonly WebRoutingSettings _webRoutingSettings; - public ContentFinderByIdPath(IOptions webRoutingSettings, ILogger logger, IRequestAccessor requestAccessor) + public ContentFinderByIdPath(IOptions webRoutingSettings, ILogger logger, IRequestAccessor requestAccessor) { _webRoutingSettings = webRoutingSettings.Value ?? throw new System.ArgumentNullException(nameof(webRoutingSettings)); _logger = logger ?? throw new System.ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs b/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs index 97b0de6a9f..7a58b1c995 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.Routing @@ -15,10 +15,10 @@ namespace Umbraco.Web.Routing public class ContentFinderByRedirectUrl : IContentFinder { private readonly IRedirectUrlService _redirectUrlService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IPublishedUrlProvider _publishedUrlProvider; - public ContentFinderByRedirectUrl(IRedirectUrlService redirectUrlService, ILogger logger, IPublishedUrlProvider publishedUrlProvider) + public ContentFinderByRedirectUrl(IRedirectUrlService redirectUrlService, ILogger logger, IPublishedUrlProvider publishedUrlProvider) { _redirectUrlService = redirectUrlService; _logger = logger; diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrl.cs b/src/Umbraco.Core/Routing/ContentFinderByUrl.cs index e14a663684..85e8195c75 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrl.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrl.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models.PublishedContent; @@ -12,11 +12,11 @@ namespace Umbraco.Web.Routing /// public class ContentFinderByUrl : IContentFinder { - protected ILogger Logger { get; } + private readonly ILogger _logger; - public ContentFinderByUrl(ILogger logger) + public ContentFinderByUrl(ILogger logger) { - Logger = logger; + _logger = logger; } /// @@ -46,17 +46,17 @@ namespace Umbraco.Web.Routing { if (docreq == null) throw new System.ArgumentNullException(nameof(docreq)); - Logger.LogDebug("Test route {Route}", route); + _logger.LogDebug("Test route {Route}", route); var node = docreq.UmbracoContext.Content.GetByRoute(docreq.UmbracoContext.InPreviewMode, route, culture: docreq.Culture?.Name); if (node != null) { docreq.PublishedContent = node; - Logger.LogDebug("Got content, id={NodeId}", node.Id); + _logger.LogDebug("Got content, id={NodeId}", node.Id); } else { - Logger.LogDebug("No match."); + _logger.LogDebug("No match."); } return node; diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs index 8560c6983c..dc2f46b7cf 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAndTemplate.cs @@ -1,10 +1,10 @@ -using Umbraco.Core.Logging; using Umbraco.Core; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.Routing { @@ -18,14 +18,16 @@ namespace Umbraco.Web.Routing /// public class ContentFinderByUrlAndTemplate : ContentFinderByUrl { + private readonly ILogger _logger; private readonly IFileService _fileService; private readonly IContentTypeService _contentTypeService; private readonly WebRoutingSettings _webRoutingSettings; - public ContentFinderByUrlAndTemplate(ILogger logger, IFileService fileService, IContentTypeService contentTypeService, IOptions webRoutingSettings) + public ContentFinderByUrlAndTemplate(ILogger logger, IFileService fileService, IContentTypeService contentTypeService, IOptions webRoutingSettings) : base(logger) { + _logger = logger; _fileService = fileService; _contentTypeService = contentTypeService; _webRoutingSettings = webRoutingSettings.Value; @@ -48,7 +50,7 @@ namespace Umbraco.Web.Routing // no template if "/" if (path == "/") { - Logger.LogDebug("No template in path '/'"); + _logger.LogDebug("No template in path '/'"); return false; } @@ -61,11 +63,11 @@ namespace Umbraco.Web.Routing if (template == null) { - Logger.LogDebug("Not a valid template: '{TemplateAlias}'", templateAlias); + _logger.LogDebug("Not a valid template: '{TemplateAlias}'", templateAlias); return false; } - Logger.LogDebug("Valid template: '{TemplateAlias}'", templateAlias); + _logger.LogDebug("Valid template: '{TemplateAlias}'", templateAlias); // look for node corresponding to the rest of the route var route = frequest.HasDomain ? (frequest.Domain.ContentId + path) : path; @@ -73,14 +75,14 @@ namespace Umbraco.Web.Routing if (node == null) { - Logger.LogDebug("Not a valid route to node: '{Route}'", route); + _logger.LogDebug("Not a valid route to node: '{Route}'", route); return false; } // IsAllowedTemplate deals both with DisableAlternativeTemplates and ValidateAlternativeTemplates settings if (!node.IsAllowedTemplate(_contentTypeService, _webRoutingSettings, template.Id)) { - Logger.LogWarning("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); + _logger.LogWarning("Alternative template '{TemplateAlias}' is not allowed on node {NodeId}.", template.Alias, node.Id); frequest.PublishedContent = null; // clear return false; } diff --git a/src/Umbraco.Core/Routing/DefaultUrlProvider.cs b/src/Umbraco.Core/Routing/DefaultUrlProvider.cs index c0da30305b..5c85bfe68d 100644 --- a/src/Umbraco.Core/Routing/DefaultUrlProvider.cs +++ b/src/Umbraco.Core/Routing/DefaultUrlProvider.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Configuration.UmbracoSettings; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; namespace Umbraco.Web.Routing @@ -15,13 +15,13 @@ namespace Umbraco.Web.Routing public class DefaultUrlProvider : IUrlProvider { private readonly RequestHandlerSettings _requestSettings; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly GlobalSettings _globalSettings; private readonly ISiteDomainHelper _siteDomainHelper; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly UriUtility _uriUtility; - public DefaultUrlProvider(IOptions requestSettings, ILogger logger, IOptions globalSettings, ISiteDomainHelper siteDomainHelper, IUmbracoContextAccessor umbracoContextAccessor, UriUtility uriUtility) + public DefaultUrlProvider(IOptions requestSettings, ILogger logger, IOptions globalSettings, ISiteDomainHelper siteDomainHelper, IUmbracoContextAccessor umbracoContextAccessor, UriUtility uriUtility) { _requestSettings = requestSettings.Value; _logger = logger; diff --git a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs index 7fd83c9c1e..f345f40bd7 100644 --- a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs +++ b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs @@ -3,9 +3,9 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Reflection; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Events; -using Umbraco.Core.Logging; namespace Umbraco.Web.Cache { @@ -17,12 +17,12 @@ namespace Umbraco.Web.Cache private static readonly ConcurrentDictionary FoundHandlers = new ConcurrentDictionary(); private readonly DistributedCache _distributedCache; private readonly IUmbracoContextFactory _umbracoContextFactory; - private readonly ILogger _logger; + private readonly ILogger _logger; /// /// Initializes a new instance of the class. /// - public DistributedCacheBinder(DistributedCache distributedCache, IUmbracoContextFactory umbracoContextFactory, ILogger logger) + public DistributedCacheBinder(DistributedCache distributedCache, IUmbracoContextFactory umbracoContextFactory, ILogger logger) { _distributedCache = distributedCache; _logger = logger; diff --git a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs index ed9c7cc490..46968e81dc 100644 --- a/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs +++ b/src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; using Umbraco.Core.Services; diff --git a/src/Umbraco.Infrastructure/Compose/ManifestWatcherComponent.cs b/src/Umbraco.Infrastructure/Compose/ManifestWatcherComponent.cs index a2ee650595..c99d7c992e 100644 --- a/src/Umbraco.Infrastructure/Compose/ManifestWatcherComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/ManifestWatcherComponent.cs @@ -1,8 +1,8 @@ using System.IO; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Manifest; using Umbraco.Net; @@ -11,7 +11,7 @@ namespace Umbraco.Core.Compose public sealed class ManifestWatcherComponent : IComponent { private readonly IHostingEnvironment _hosting; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IIOHelper _ioHelper; private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; @@ -19,10 +19,10 @@ namespace Umbraco.Core.Compose // package.manifest chances and restarts the application on any change private ManifestWatcher _mw; - public ManifestWatcherComponent(IHostingEnvironment hosting, ILogger logger, IIOHelper ioHelper, IUmbracoApplicationLifetime umbracoApplicationLifetime) + public ManifestWatcherComponent(IHostingEnvironment hosting, ILoggerFactory loggerFactory, IIOHelper ioHelper, IUmbracoApplicationLifetime umbracoApplicationLifetime) { _hosting = hosting; - _logger = logger; + _loggerFactory = loggerFactory; _ioHelper = ioHelper; _umbracoApplicationLifetime = umbracoApplicationLifetime; } @@ -37,7 +37,7 @@ namespace Umbraco.Core.Compose var appPlugins = _ioHelper.MapPath("~/App_Plugins/"); if (Directory.Exists(appPlugins) == false) return; - _mw = new ManifestWatcher(_logger, _umbracoApplicationLifetime); + _mw = new ManifestWatcher(_loggerFactory.CreateLogger(), _umbracoApplicationLifetime); _mw.Start(Directory.GetDirectories(appPlugins)); } diff --git a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs index e1aaaf7c12..b18c7a6f13 100644 --- a/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs +++ b/src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs @@ -3,10 +3,10 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Core.Models.Membership; @@ -189,7 +189,7 @@ namespace Umbraco.Web.Compose private readonly IUserService _userService; private readonly ILocalizedTextService _textService; private readonly GlobalSettings _globalSettings; - private readonly ILogger _logger; + private readonly ILogger _logger; /// /// Constructor @@ -208,7 +208,7 @@ namespace Umbraco.Web.Compose IUserService userService, ILocalizedTextService textService, IOptions globalSettings, - ILogger logger) + ILogger logger) { _umbracoContextAccessor = umbracoContextAccessor; _requestAccessor = requestAccessor; diff --git a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs index a623a0f378..7258628b7d 100644 --- a/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs +++ b/src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs @@ -2,11 +2,11 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Install; using Umbraco.Core.Migrations.Upgrade; using Umbraco.Web.Install.Models; @@ -20,14 +20,14 @@ namespace Umbraco.Web.Install.InstallSteps { private readonly DatabaseBuilder _databaseBuilder; private readonly IRuntimeState _runtime; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; private readonly ConnectionStrings _connectionStrings; public DatabaseUpgradeStep( DatabaseBuilder databaseBuilder, IRuntimeState runtime, - ILogger logger, + ILogger logger, IUmbracoVersion umbracoVersion, IOptions connectionStrings) { diff --git a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs index 8d0cc23fff..fcd3a98218 100644 --- a/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs +++ b/src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.Linq; using Newtonsoft.Json; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Core.Migrations.Upgrade.V_8_0_0.DataTypes; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; @@ -17,7 +17,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 { private readonly PreValueMigratorCollection _preValueMigrators; private readonly PropertyEditorCollection _propertyEditors; - private readonly ILogger _logger; + private readonly ILogger _logger; private static readonly ISet LegacyAliases = new HashSet() { @@ -31,7 +31,7 @@ namespace Umbraco.Core.Migrations.Upgrade.V_8_0_0 Constants.PropertyEditors.Legacy.Aliases.MultiNodeTreePicker2, }; - public DataTypeMigration(IMigrationContext context, PreValueMigratorCollection preValueMigrators, PropertyEditorCollection propertyEditors, ILogger logger) + public DataTypeMigration(IMigrationContext context, PreValueMigratorCollection preValueMigrators, PropertyEditorCollection propertyEditors, ILogger logger) : base(context) { _preValueMigrators = preValueMigrators; diff --git a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs index b2df6d8553..9aef0e598c 100644 --- a/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs +++ b/src/Umbraco.Infrastructure/Models/Mapping/MacroMapDefinition.cs @@ -1,8 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; @@ -13,9 +13,9 @@ namespace Umbraco.Web.Models.Mapping public class MacroMapDefinition : IMapDefinition { private readonly ParameterEditorCollection _parameterEditors; - private readonly ILogger _logger; + private readonly ILogger _logger; - public MacroMapDefinition(ParameterEditorCollection parameterEditors, ILogger logger) + public MacroMapDefinition(ParameterEditorCollection parameterEditors, ILogger logger) { _parameterEditors = parameterEditors; _logger = logger; diff --git a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs index 722bd8fd85..f6ed96fb99 100644 --- a/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs +++ b/src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs @@ -1,6 +1,6 @@ using System; using System.IO; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models.Entities; using Umbraco.Core.Persistence.Dtos; @@ -78,7 +78,7 @@ namespace Umbraco.Core.Models /// A callback specified to retrieve the parent entity of the entity /// A callback specified to update a fixed entity public static void EnsureValidPath(this T entity, - ILogger logger, + ILogger logger, Func getParent, Action update) where T: IUmbracoEntity diff --git a/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs b/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs index d5565719eb..8f68ec0a64 100644 --- a/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs +++ b/src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs @@ -2,9 +2,9 @@ using System.Globalization; using System.Linq; using Examine; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; @@ -15,13 +15,13 @@ namespace Umbraco.Web.Routing /// public class ContentFinderByConfigured404 : IContentLastChanceFinder { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IEntityService _entityService; private readonly ContentSettings _contentSettings; private readonly IExamineManager _examineManager; public ContentFinderByConfigured404( - ILogger logger, + ILogger logger, IEntityService entityService, IOptions contentConfigSettings, IExamineManager examineManager) diff --git a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs index eea906b743..e4450af2ce 100644 --- a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs +++ b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs @@ -16,7 +16,6 @@ using Umbraco.Core.Services; using Umbraco.Core.Sync; using Umbraco.Web.HealthCheck; using Umbraco.Web.Routing; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -33,7 +32,7 @@ namespace Umbraco.Web.Scheduling private readonly IContentService _contentService; private readonly IAuditService _auditService; private readonly IProfilingLogger _pLogger; - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _applicationShutdownRegistry; private readonly IScopeProvider _scopeProvider; @@ -60,7 +59,7 @@ namespace Umbraco.Web.Scheduling public SchedulerComponent(IRuntimeState runtime, IMainDom mainDom, IServerRegistrar serverRegistrar, IContentService contentService, IAuditService auditService, HealthCheckCollection healthChecks, HealthCheckNotificationMethodCollection notifications, - IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger pLogger, Core.Logging.ILogger logger, ILoggerFactory loggerFactory, + IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger pLogger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry applicationShutdownRegistry, IOptions healthChecksSettings, IServerMessenger serverMessenger, IRequestAccessor requestAccessor, IOptions loggingSettings, IOptions keepAliveSettings, @@ -73,8 +72,8 @@ namespace Umbraco.Web.Scheduling _auditService = auditService; _scopeProvider = scopeProvider; _pLogger = pLogger; - _logger = logger; _loggerFactory = loggerFactory; + _logger = loggerFactory.CreateLogger(); _applicationShutdownRegistry = applicationShutdownRegistry; _umbracoContextFactory = umbracoContextFactory; diff --git a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs index eb05130da1..bdcd8fe3e3 100644 --- a/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs +++ b/src/Umbraco.PublishedCache.NuCache/DataSource/DatabaseDataSource.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using NPoco; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Core.Scoping; @@ -21,9 +21,9 @@ namespace Umbraco.Web.PublishedCache.NuCache.DataSource { private const int PageSize = 500; - private readonly ILogger _logger; + private readonly ILogger _logger; - public DatabaseDataSource(ILogger logger) + public DatabaseDataSource(ILogger logger) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); } diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index 964051f1d2..3c4a2ffbca 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -59,7 +59,6 @@ namespace Umbraco.Tests.Integration.Implementations _hostingLifetime = new AspNetCoreApplicationShutdownRegistry(Mock.Of()); ConsoleLoggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); - Logger = new ConsoleLogger(new MessageTemplates()); ProfilingLogger = new ProfilingLogger(ConsoleLoggerFactory.CreateLogger("ProfilingLogger"), Profiler); } @@ -96,7 +95,6 @@ namespace Umbraco.Tests.Integration.Implementations public AppCaches AppCaches { get; } = new AppCaches(NoAppCache.Instance, NoAppCache.Instance, new IsolatedCaches(type => NoAppCache.Instance)); - public ILogger Logger { get; private set; } public ILoggerFactory ConsoleLoggerFactory { get; private set; } public IProfilingLogger ProfilingLogger { get; private set; } diff --git a/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs b/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs index 92d275b7bf..c1d322edf2 100644 --- a/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs +++ b/src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs @@ -25,7 +25,6 @@ using Umbraco.Web.BackOffice.ModelBinders; using Umbraco.Web.Security; using DataType = Umbraco.Core.Models.DataType; - using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Web.Validation { @@ -138,7 +137,7 @@ [Test] public void Validating_ContentItemSave() { - var logger = Services.GetRequiredService(); + var logger = Services.GetRequiredService>(); var webSecurity = Services.GetRequiredService(); var localizedTextService = Services.GetRequiredService(); var propertyValidationService = Services.GetRequiredService(); diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Models/PathValidationTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Models/PathValidationTests.cs index 017d2c7774..117b9d87cc 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Models/PathValidationTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Models/PathValidationTests.cs @@ -1,7 +1,7 @@ using System; using Moq; using NUnit.Framework; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; using Umbraco.Tests.Common.Builders; @@ -54,7 +54,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Infrastructure.Models .Build(); //no id assigned - Assert.Throws(() => entity.EnsureValidPath(Mock.Of(), umbracoEntity => new EntitySlim(), umbracoEntity => { })); + Assert.Throws(() => entity.EnsureValidPath(Mock.Of>(), umbracoEntity => new EntitySlim(), umbracoEntity => { })); } [Test] @@ -66,7 +66,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Infrastructure.Models .Build(); //no parent found - Assert.Throws(() => entity.EnsureValidPath(Mock.Of(), umbracoEntity => null, umbracoEntity => { })); + Assert.Throws(() => entity.EnsureValidPath(Mock.Of>(), umbracoEntity => null, umbracoEntity => { })); } [Test] @@ -76,7 +76,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Infrastructure.Models .WithId(1234) .Build(); - entity.EnsureValidPath(Mock.Of(), umbracoEntity => null, umbracoEntity => { }); + entity.EnsureValidPath(Mock.Of>(), umbracoEntity => null, umbracoEntity => { }); //works because it's under the root Assert.AreEqual("-1,1234", entity.Path); @@ -90,7 +90,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Infrastructure.Models .WithParentId(888) .Build(); - entity.EnsureValidPath(Mock.Of(), umbracoEntity => umbracoEntity.ParentId == 888 ? new EntitySlim { Id = 888, Path = "-1,888" } : null, umbracoEntity => { }); + entity.EnsureValidPath(Mock.Of>(), umbracoEntity => umbracoEntity.ParentId == 888 ? new EntitySlim { Id = 888, Path = "-1,888" } : null, umbracoEntity => { }); //works because the parent was found Assert.AreEqual("-1,888,1234", entity.Path); @@ -140,7 +140,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Infrastructure.Models }; //this will recursively fix all paths - entity.EnsureValidPath(Mock.Of(), getParent, umbracoEntity => { }); + entity.EnsureValidPath(Mock.Of>(), getParent, umbracoEntity => { }); Assert.AreEqual("-1,999", parentA.Path); Assert.AreEqual("-1,999,888", parentB.Path); diff --git a/src/Umbraco.Tests/Integration/ContentEventsTests.cs b/src/Umbraco.Tests/Integration/ContentEventsTests.cs index 9a1321c20f..7dfc705284 100644 --- a/src/Umbraco.Tests/Integration/ContentEventsTests.cs +++ b/src/Umbraco.Tests/Integration/ContentEventsTests.cs @@ -33,7 +33,7 @@ namespace Umbraco.Tests.Integration { base.SetUp(); - _h1 = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _h1 = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _h1.BindEvents(true); _events = new List(); diff --git a/src/Umbraco.Tests/Models/MediaXmlTest.cs b/src/Umbraco.Tests/Models/MediaXmlTest.cs index 3e07499c1f..c80ff720f1 100644 --- a/src/Umbraco.Tests/Models/MediaXmlTest.cs +++ b/src/Umbraco.Tests/Models/MediaXmlTest.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; @@ -31,12 +32,12 @@ namespace Umbraco.Tests.Models // reference, so static ctor runs, so event handlers register // and then, this will reset the width, height... because the file does not exist, of course ;-( - var logger = Mock.Of(); + var loggerFactory = NullLoggerFactory.Instance; var scheme = Mock.Of(); var contentSettings = new ContentSettingsBuilder().Build(); - var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, logger, ShortStringHelper); - var ignored = new FileUploadPropertyEditor(NullLoggerFactory.Instance, mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); + var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, loggerFactory.CreateLogger(), ShortStringHelper); + var ignored = new FileUploadPropertyEditor(loggerFactory, mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); var media = MockedMedia.CreateMediaImage(mediaType, -1); media.WriterId = -1; // else it's zero and that's not a user and it breaks the tests diff --git a/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs index 069aead6b3..6e588ae066 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs @@ -1,4 +1,5 @@ using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Tests.Common.Builders; using Umbraco.Tests.TestHelpers; @@ -19,7 +20,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); var webRoutingSettings = new WebRoutingSettingsBuilder().Build(); - var lookup = new ContentFinderByIdPath(Microsoft.Extensions.Options.Options.Create(webRoutingSettings), Logger, Factory.GetInstance()); + var lookup = new ContentFinderByIdPath(Microsoft.Extensions.Options.Options.Create(webRoutingSettings), LoggerFactory_.CreateLogger(), Factory.GetInstance()); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs index 14a7ec3ab1..b7bf248c3f 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs @@ -1,5 +1,6 @@ using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; @@ -41,7 +42,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); var webRoutingSettings = new WebRoutingSettingsBuilder().Build(); - var lookup = new ContentFinderByUrlAndTemplate(Logger, ServiceContext.FileService, ServiceContext.ContentTypeService, Microsoft.Extensions.Options.Options.Create(webRoutingSettings)); + var lookup = new ContentFinderByUrlAndTemplate(LoggerFactory_.CreateLogger(), ServiceContext.FileService, ServiceContext.ContentTypeService, Microsoft.Extensions.Options.Options.Create(webRoutingSettings)); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs index 0614d4a2bb..8885780b93 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs @@ -9,6 +9,7 @@ using Umbraco.Tests.Common.Builders; using Umbraco.Tests.TestHelpers; using Umbraco.Tests.Testing; using Umbraco.Web.Routing; +using Microsoft.Extensions.Logging; namespace Umbraco.Tests.Routing { @@ -35,7 +36,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings, snapshotService: snapshotService); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); Assert.IsTrue(globalSettings.HideTopLevelNodeFromPath); @@ -69,7 +70,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); Assert.IsFalse(globalSettings.HideTopLevelNodeFromPath); @@ -93,7 +94,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); @@ -120,7 +121,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); frequest.Domain = new DomainAndUri(new Domain(1, "mysite", -1, CultureInfo.CurrentCulture, false), new Uri("http://mysite/")); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); @@ -148,7 +149,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); frequest.Domain = new DomainAndUri(new Domain(1, "mysite/æøå", -1, CultureInfo.CurrentCulture, false), new Uri("http://mysite/æøå")); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs index 622df53d9e..1c6464906a 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs @@ -1,5 +1,6 @@ using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Configuration; @@ -137,7 +138,7 @@ namespace Umbraco.Tests.Routing // must lookup domain else lookup by url fails publishedRouter.FindDomain(frequest); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(expectedId, frequest.PublishedContent.Id); @@ -179,7 +180,7 @@ namespace Umbraco.Tests.Routing publishedRouter.FindDomain(frequest); Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(expectedId, frequest.PublishedContent.Id); diff --git a/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs b/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs index 0d39092b88..b213871c42 100644 --- a/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs +++ b/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs @@ -1,5 +1,6 @@ using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Tests.TestHelpers; using Umbraco.Web.Routing; @@ -279,7 +280,7 @@ namespace Umbraco.Tests.Routing Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var finder = new ContentFinderByUrl(Logger); + var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = finder.TryFindContent(frequest); Assert.IsTrue(result); @@ -326,7 +327,7 @@ namespace Umbraco.Tests.Routing publishedRouter.FindDomain(frequest); // find document - var finder = new ContentFinderByUrl(Logger); + var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = finder.TryFindContent(frequest); // apply wildcard domain @@ -381,7 +382,7 @@ namespace Umbraco.Tests.Routing Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var finder = new ContentFinderByUrl(Logger); + var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = finder.TryFindContent(frequest); Assert.IsTrue(result); diff --git a/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs b/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs index 27027c007f..9d608aa40c 100644 --- a/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs +++ b/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs @@ -11,6 +11,7 @@ using Umbraco.Tests.Common; using Umbraco.Tests.Common.Builders; using Umbraco.Tests.TestHelpers.Entities; using Umbraco.Web.Routing; +using Microsoft.Extensions.Logging; namespace Umbraco.Tests.Routing { @@ -64,7 +65,7 @@ namespace Umbraco.Tests.Routing var umbContext = GetUmbracoContext("http://localhost:8000"); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(Logger) })); + contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); var urls = content.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, @@ -91,7 +92,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(_requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -104,7 +105,7 @@ namespace Umbraco.Tests.Routing ); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders:new ContentFinderCollection(new[]{new ContentFinderByUrl(Logger) })); + contentFinders:new ContentFinderCollection(new[]{new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); var urls = content.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, @@ -138,7 +139,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(_requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = new UrlProvider( @@ -150,7 +151,7 @@ namespace Umbraco.Tests.Routing ); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(Logger) })); + contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); var urls = child.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, diff --git a/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs b/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs index 2c5bfc52e9..9994e1c579 100644 --- a/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs +++ b/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs @@ -1,4 +1,5 @@ using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration.Models; using Umbraco.Tests.Common; using Umbraco.Tests.Common.Builders; @@ -47,7 +48,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); diff --git a/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs b/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs index e8f3bf97fd..720f3179ae 100644 --- a/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs +++ b/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Configuration.Models; @@ -49,7 +50,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -110,7 +111,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -151,7 +152,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -206,7 +207,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -261,7 +262,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -282,7 +283,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -299,7 +300,7 @@ namespace Umbraco.Tests.Routing var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build(); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), UmbracoContextAccessor, UriUtility); var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: _globalSettings); diff --git a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs index a960cdba53..f8067ce8a2 100644 --- a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -184,7 +185,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -218,7 +219,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -245,7 +246,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -279,7 +280,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -303,7 +304,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -369,7 +370,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -396,7 +397,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); diff --git a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs index 03faa70d8c..b27a7088a4 100644 --- a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs +++ b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs @@ -2,6 +2,7 @@ using System.Linq; using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; @@ -44,7 +45,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - Logger, + LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -65,7 +66,7 @@ namespace Umbraco.Tests.Routing Assert.IsTrue(frequest.HasDomain); // check that it's been routed - var lookup = new ContentFinderByUrl(Logger); + var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(100111, frequest.PublishedContent.Id); diff --git a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs index 156044e66b..086a175194 100644 --- a/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Web.Routing; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; @@ -13,7 +14,6 @@ using Umbraco.Core.Configuration.Models; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Events; using Umbraco.Core.Install; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Persistence.Repositories; @@ -106,7 +106,7 @@ namespace Umbraco.Tests.Scoping ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, - new DatabaseDataSource(Mock.Of()), + new DatabaseDataSource(Mock.Of>()), Microsoft.Extensions.Options.Options.Create(globalSettings ?? new GlobalSettingsBuilder().Build()), Factory.GetInstance(), new NoopPublishedModelFactory(), @@ -148,7 +148,7 @@ namespace Umbraco.Tests.Scoping var umbracoContext = GetUmbracoContextNu("http://example.com/", setSingleton: true); // wire cache refresher - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); // create document type, document diff --git a/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs b/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs index da90d7fefa..90ebaf89b0 100644 --- a/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs @@ -3,11 +3,11 @@ using System.Collections.Generic; using System.Linq; using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; using Umbraco.Core.Scoping; @@ -86,7 +86,7 @@ namespace Umbraco.Tests.Scoping // get user again - else we'd modify the one that's in the cache user = service.GetUserById(user.Id); - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); Assert.IsNull(scopeProvider.AmbientScope); @@ -167,7 +167,7 @@ namespace Umbraco.Tests.Scoping Assert.AreEqual(lang.Id, globalCached.Id); Assert.AreEqual("fr-FR", globalCached.IsoCode); - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); Assert.IsNull(scopeProvider.AmbientScope); @@ -259,7 +259,7 @@ namespace Umbraco.Tests.Scoping Assert.AreEqual(item.Id, globalCached.Id); Assert.AreEqual("item-key", globalCached.ItemKey); - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); Assert.IsNull(scopeProvider.AmbientScope); diff --git a/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs b/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs index 59610e43bd..4c133181db 100644 --- a/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs @@ -1,12 +1,12 @@ using System; using System.Collections.Generic; using System.Xml; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Core.Services.Implement; @@ -98,7 +98,7 @@ namespace Umbraco.Tests.Scoping var item = new Content("name", -1, contentType); // wire cache refresher - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); // check xml in context = "before" @@ -211,7 +211,7 @@ namespace Umbraco.Tests.Scoping ServiceContext.ContentTypeService.Save(contentType); // wire cache refresher - _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of()); + _distributedCacheBinder = new DistributedCacheBinder(new DistributedCache(Current.ServerMessenger, Current.CacheRefreshers), Mock.Of(), Mock.Of>()); _distributedCacheBinder.BindEvents(true); // check xml in context = "before" diff --git a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs index 8ea3a560bf..6843be50db 100644 --- a/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs +++ b/src/Umbraco.Tests/Services/ContentTypeServiceVariantsTests.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; @@ -12,7 +13,6 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; using Umbraco.Core.Install; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Persistence; @@ -78,7 +78,7 @@ namespace Umbraco.Tests.Services ScopeProvider, documentRepository, mediaRepository, memberRepository, DefaultCultureAccessor, - new DatabaseDataSource(Mock.Of()), + new DatabaseDataSource(Mock.Of>()), Microsoft.Extensions.Options.Options.Create(globalSettings ?? new GlobalSettingsBuilder().Build()), Factory.GetInstance(), Mock.Of(), diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index e78dc7f79f..e92dc0fda0 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -485,7 +485,7 @@ namespace Umbraco.Tests.Testing var logger = Mock.Of(); var scheme = Mock.Of(); - var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, logger, TestHelper.ShortStringHelper); + var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, LoggerFactory_.CreateLogger(), TestHelper.ShortStringHelper); Composition.RegisterUnique(factory => mediaFileSystem); // no factory (noop) diff --git a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs index 524ad55650..0644a8da88 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs @@ -8,11 +8,11 @@ using Microsoft.AspNetCore.Authentication; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Routing; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.BackOffice; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; @@ -47,7 +47,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly UmbracoMapper _umbracoMapper; private readonly GlobalSettings _globalSettings; private readonly SecuritySettings _securitySettings; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IIpResolver _ipResolver; private readonly UserPasswordConfigurationSettings _passwordConfiguration; private readonly IEmailSender _emailSender; @@ -66,7 +66,7 @@ namespace Umbraco.Web.BackOffice.Controllers UmbracoMapper umbracoMapper, IOptions globalSettings, IOptions securitySettings, - ILogger logger, + ILogger logger, IIpResolver ipResolver, IOptions passwordConfiguration, IEmailSender emailSender, diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs index 30fecbc93c..61e2c956c6 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentController.cs @@ -7,10 +7,10 @@ using System.Net.Mime; using System.Text; using Microsoft.AspNetCore.Http.Extensions; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Dictionary; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.ContentEditing; @@ -72,12 +72,13 @@ namespace Umbraco.Web.Editors private readonly IMemberGroupService _memberGroupService; private readonly ISqlContext _sqlContext; private readonly Lazy> _allLangs; + private readonly ILogger _logger; public object Domains { get; private set; } public ContentController( ICultureDictionary cultureDictionary, - ILogger logger, + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IEventMessagesFactory eventMessages, ILocalizedTextService localizedTextService, @@ -99,7 +100,7 @@ namespace Umbraco.Web.Editors ActionCollection actionCollection, IMemberGroupService memberGroupService, ISqlContext sqlContext) - : base(cultureDictionary, logger, shortStringHelper, eventMessages, localizedTextService) + : base(cultureDictionary, loggerFactory, shortStringHelper, eventMessages, localizedTextService) { _propertyEditors = propertyEditors; _contentService = contentService; @@ -120,6 +121,7 @@ namespace Umbraco.Web.Editors _actionCollection = actionCollection; _memberGroupService = memberGroupService; _sqlContext = sqlContext; + _logger = loggerFactory.CreateLogger(); _allLangs = new Lazy>(() => _localizationService.GetAllLanguages().ToDictionary(x => x.IsoCode, x => x, StringComparer.InvariantCultureIgnoreCase)); @@ -1619,7 +1621,7 @@ namespace Umbraco.Web.Editors var sortResult = contentService.Sort(sorted.IdSortOrder, _webSecurity.CurrentUser.Id); if (!sortResult.Success) { - Logger.LogWarning("Content sorting failed, this was probably caused by an event being cancelled"); + _logger.LogWarning("Content sorting failed, this was probably caused by an event being cancelled"); // TODO: Now you can cancel sorting, does the event messages bubble up automatically? throw HttpResponseException.CreateValidationErrorResponse("Content sorting failed, this was probably caused by an event being cancelled"); } @@ -1628,7 +1630,7 @@ namespace Umbraco.Web.Editors } catch (Exception ex) { - Logger.LogError(ex, "Could not update content sort order"); + _logger.LogError(ex, "Could not update content sort order"); throw; } } @@ -2001,7 +2003,7 @@ namespace Umbraco.Web.Editors if (template == null) { //ModelState.AddModelError("Template", "No template exists with the specified alias: " + contentItem.TemplateAlias); - Logger.LogWarning("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); + _logger.LogWarning("No template exists with the specified alias: {TemplateAlias}", contentSave.TemplateAlias); } else if (template.Id != contentSave.PersistedContent.TemplateId) { diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs index 08a1e8cbce..718a065a44 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs @@ -3,13 +3,13 @@ using System.Linq; using System.Net; using System.Net.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Composing; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; using Umbraco.Core.Dictionary; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.Editors; @@ -30,20 +30,23 @@ namespace Umbraco.Web.BackOffice.Controllers public abstract class ContentControllerBase : BackOfficeNotificationsController { protected ICultureDictionary CultureDictionary { get; } - protected ILogger Logger { get; } + protected ILoggerFactory LoggerFactory { get; } protected IShortStringHelper ShortStringHelper { get; } protected IEventMessagesFactory EventMessages { get; } protected ILocalizedTextService LocalizedTextService { get; } + private readonly ILogger _logger; + protected ContentControllerBase( ICultureDictionary cultureDictionary, - ILogger logger, + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IEventMessagesFactory eventMessages, ILocalizedTextService localizedTextService) { CultureDictionary = cultureDictionary; - Logger = logger; + LoggerFactory = loggerFactory; + _logger = loggerFactory.CreateLogger(); ShortStringHelper = shortStringHelper; EventMessages = eventMessages; LocalizedTextService = localizedTextService; @@ -78,7 +81,7 @@ namespace Umbraco.Web.BackOffice.Controllers // get the property editor if (propertyDto.PropertyEditor == null) { - Logger.LogWarning("No property editor found for property {PropertyAlias}", propertyDto.Alias); + _logger.LogWarning("No property editor found for property {PropertyAlias}", propertyDto.Alias); continue; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs b/src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs index 433c26169f..c0df8c2166 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs @@ -6,6 +6,7 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Umbraco.Core; using Umbraco.Core.BackOffice; @@ -13,7 +14,6 @@ using Umbraco.Core.Cache; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Media; using Umbraco.Core.Services; @@ -43,7 +43,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IUserService _userService; private readonly UmbracoMapper _umbracoMapper; private readonly BackOfficeUserManager _backOfficeUserManager; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly ILocalizedTextService _localizedTextService; private readonly AppCaches _appCaches; private readonly IShortStringHelper _shortStringHelper; @@ -57,7 +57,7 @@ namespace Umbraco.Web.BackOffice.Controllers IUserService userService, UmbracoMapper umbracoMapper, BackOfficeUserManager backOfficeUserManager, - ILogger logger, + ILoggerFactory loggerFactory, ILocalizedTextService localizedTextService, AppCaches appCaches, IShortStringHelper shortStringHelper) @@ -70,7 +70,7 @@ namespace Umbraco.Web.BackOffice.Controllers _userService = userService; _umbracoMapper = umbracoMapper; _backOfficeUserManager = backOfficeUserManager; - _logger = logger; + _loggerFactory = loggerFactory; _localizedTextService = localizedTextService; _appCaches = appCaches; _shortStringHelper = shortStringHelper; @@ -215,7 +215,7 @@ namespace Umbraco.Web.BackOffice.Controllers /// public async Task> PostChangePassword(ChangingPasswordModel data) { - var passwordChanger = new PasswordChanger(_logger); + var passwordChanger = new PasswordChanger(_loggerFactory.CreateLogger()); var passwordChangeResult = await passwordChanger.ChangePasswordWithIdentityAsync(_webSecurity.CurrentUser, _webSecurity.CurrentUser, data, _backOfficeUserManager); if (passwordChangeResult.Success) diff --git a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs index 5414b17b87..0d341e9a04 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs @@ -9,8 +9,8 @@ using System; using System.Linq; using System.Text; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -34,7 +34,7 @@ namespace Umbraco.Web.BackOffice.Controllers { private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly AppCaches _appCaches; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IDashboardService _dashboardService; private readonly IUmbracoVersion _umbracoVersion; private readonly IShortStringHelper _shortStringHelper; @@ -47,7 +47,7 @@ namespace Umbraco.Web.BackOffice.Controllers ISqlContext sqlContext, ServiceContext services, AppCaches appCaches, - ILogger logger, + ILogger logger, IRuntimeState runtimeState, IDashboardService dashboardService, IUmbracoVersion umbracoVersion, diff --git a/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs b/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs index 7d88cdecd9..285915873c 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/HelpController.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Net.Http; using System.Runtime.Serialization; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Web.Common.Attributes; using Umbraco.Web.Editors; @@ -13,9 +13,9 @@ namespace Umbraco.Web.BackOffice.Controllers [PluginController(Constants.Web.Mvc.BackOfficeApiArea)] public class HelpController : UmbracoAuthorizedJsonController { - private readonly ILogger _logger; + private readonly ILogger _logger; - public HelpController(ILogger logger) + public HelpController(ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs index 43a4275591..fa40813c46 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs @@ -5,8 +5,8 @@ using System.IO; using System.Linq; using System.Net.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Strings; using Umbraco.Web.Models.ContentEditing; @@ -33,7 +33,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IMacroService _macroService; private readonly IShortStringHelper _shortStringHelper; private readonly IWebSecurity _webSecurity; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IHostingEnvironment _hostingEnvironment; private readonly UmbracoMapper _umbracoMapper; @@ -42,7 +42,7 @@ namespace Umbraco.Web.BackOffice.Controllers IMacroService macroService, IShortStringHelper shortStringHelper, IWebSecurity webSecurity, - ILogger logger, + ILogger logger, IHostingEnvironment hostingEnvironment, UmbracoMapper umbracoMapper ) diff --git a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs index c24ac382bd..0df641594d 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MediaController.cs @@ -8,6 +8,7 @@ using System.Text; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Core; using Umbraco.Core.Configuration; @@ -16,7 +17,6 @@ using Umbraco.Core.Dictionary; using Umbraco.Core.Events; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.ContentEditing; @@ -62,9 +62,11 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly ISqlContext _sqlContext; private readonly IContentTypeBaseServiceProvider _contentTypeBaseServiceProvider; private readonly IRelationService _relationService; + private readonly ILogger _logger; + public MediaController( ICultureDictionary cultureDictionary, - ILogger logger, + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IEventMessagesFactory eventMessages, ILocalizedTextService localizedTextService, @@ -81,7 +83,7 @@ namespace Umbraco.Web.BackOffice.Controllers PropertyEditorCollection propertyEditors, IMediaFileSystem mediaFileSystem, IHostingEnvironment hostingEnvironment) - : base(cultureDictionary, logger, shortStringHelper, eventMessages, localizedTextService) + : base(cultureDictionary, loggerFactory, shortStringHelper, eventMessages, localizedTextService) { _shortStringHelper = shortStringHelper; _contentSettings = contentSettings.Value; @@ -98,6 +100,7 @@ namespace Umbraco.Web.BackOffice.Controllers _propertyEditors = propertyEditors; _mediaFileSystem = mediaFileSystem; _hostingEnvironment = hostingEnvironment; + _logger = loggerFactory.CreateLogger(); } /// @@ -621,14 +624,14 @@ namespace Umbraco.Web.BackOffice.Controllers // Save Media with new sort order and update content xml in db accordingly if (mediaService.Sort(sortedMedia) == false) { - Logger.LogWarning("Media sorting failed, this was probably caused by an event being cancelled"); + _logger.LogWarning("Media sorting failed, this was probably caused by an event being cancelled"); throw HttpResponseException.CreateValidationErrorResponse("Media sorting failed, this was probably caused by an event being cancelled"); } return Ok(); } catch (Exception ex) { - Logger.LogError(ex, "Could not update media sort order"); + _logger.LogError(ex, "Could not update media sort order"); throw; } } diff --git a/src/Umbraco.Web.BackOffice/Controllers/MemberController.cs b/src/Umbraco.Web.BackOffice/Controllers/MemberController.cs index 6a93bf6437..379ed0d3f4 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/MemberController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/MemberController.cs @@ -8,12 +8,12 @@ using System.Net.Mime; using System.Text; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Core; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Dictionary; using Umbraco.Core.Events; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.ContentEditing; @@ -59,7 +59,7 @@ namespace Umbraco.Web.BackOffice.Controllers public MemberController( ICultureDictionary cultureDictionary, - ILogger logger, + ILoggerFactory loggerFactory, IShortStringHelper shortStringHelper, IEventMessagesFactory eventMessages, ILocalizedTextService localizedTextService, @@ -72,7 +72,7 @@ namespace Umbraco.Web.BackOffice.Controllers IDataTypeService dataTypeService, IWebSecurity webSecurity, IJsonSerializer jsonSerializer) - : base(cultureDictionary, logger, shortStringHelper, eventMessages, localizedTextService) + : base(cultureDictionary, loggerFactory, shortStringHelper, eventMessages, localizedTextService) { _passwordConfig = passwordConfig.Value; _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs index 5a1114406f..843d4fecde 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs @@ -5,11 +5,11 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Semver; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Packaging; using Umbraco.Net; using Umbraco.Core.Packaging; @@ -37,7 +37,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; private readonly IRuntimeMinifier _runtimeMinifier; private readonly IPackagingService _packagingService; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IWebSecurity _webSecurity; private readonly ILocalizedTextService _localizedTextService; @@ -47,7 +47,7 @@ namespace Umbraco.Web.BackOffice.Controllers IUmbracoApplicationLifetime umbracoApplicationLifetime, IRuntimeMinifier runtimeMinifier, IPackagingService packagingService, - ILogger logger, + ILogger logger, IWebSecurity webSecurity, ILocalizedTextService localizedTextService) { diff --git a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs index 8b57703a9f..1ab5bd9bfa 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/RelationTypeController.cs @@ -4,8 +4,8 @@ using System.Linq; using System.Net; using System.Net.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -25,13 +25,13 @@ namespace Umbraco.Web.BackOffice.Controllers [UmbracoTreeAuthorize(Constants.Trees.RelationTypes)] public class RelationTypeController : BackOfficeNotificationsController { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly UmbracoMapper _umbracoMapper; private readonly IRelationService _relationService; private readonly IShortStringHelper _shortStringHelper; public RelationTypeController( - ILogger logger, + ILogger logger, UmbracoMapper umbracoMapper, IRelationService relationService, IShortStringHelper shortStringHelper) diff --git a/src/Umbraco.Web.BackOffice/Controllers/UsersController.cs b/src/Umbraco.Web.BackOffice/Controllers/UsersController.cs index 3cffa307eb..24633e7370 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/UsersController.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/UsersController.cs @@ -11,6 +11,7 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Routing; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.BackOffice; using Umbraco.Core.Cache; @@ -18,7 +19,6 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Media; using Umbraco.Core.Models; @@ -69,7 +69,7 @@ namespace Umbraco.Web.BackOffice.Controllers private readonly IContentService _contentService; private readonly GlobalSettings _globalSettings; private readonly BackOfficeUserManager _backOfficeUserManager; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly LinkGenerator _linkGenerator; public UsersController( @@ -92,7 +92,7 @@ namespace Umbraco.Web.BackOffice.Controllers IContentService contentService, IOptions globalSettings, BackOfficeUserManager backOfficeUserManager, - ILogger logger, + ILoggerFactory loggerFactory, LinkGenerator linkGenerator) { _mediaFileSystem = mediaFileSystem; @@ -114,7 +114,7 @@ namespace Umbraco.Web.BackOffice.Controllers _contentService = contentService; _globalSettings = globalSettings.Value; _backOfficeUserManager = backOfficeUserManager; - _logger = logger; + _loggerFactory = loggerFactory; _linkGenerator = linkGenerator; } @@ -657,7 +657,7 @@ namespace Umbraco.Web.BackOffice.Controllers throw new HttpResponseException(HttpStatusCode.NotFound); } - var passwordChanger = new PasswordChanger(_logger); + var passwordChanger = new PasswordChanger(_loggerFactory.CreateLogger()); var passwordChangeResult = await passwordChanger.ChangePasswordWithIdentityAsync(_webSecurity.CurrentUser, found, changingPasswordModel, _backOfficeUserManager); if (passwordChangeResult.Success) diff --git a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs index 6e47c900f3..9fb05f3512 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs @@ -6,7 +6,7 @@ using System.Linq; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc.ModelBinding; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -24,9 +24,9 @@ namespace Umbraco.Web.BackOffice.Filters protected IWebSecurity WebSecurity { get; } public IPropertyValidationService PropertyValidationService { get; } - protected ILogger Logger { get; } + protected ILogger Logger { get; } - protected ContentModelValidator(ILogger logger, IWebSecurity webSecurity, IPropertyValidationService propertyValidationService) + protected ContentModelValidator(ILogger logger, IWebSecurity webSecurity, IPropertyValidationService propertyValidationService) { Logger = logger ?? throw new ArgumentNullException(nameof(logger)); WebSecurity = webSecurity ?? throw new ArgumentNullException(nameof(webSecurity)); @@ -52,7 +52,7 @@ namespace Umbraco.Web.BackOffice.Filters private readonly ILocalizedTextService _textService; protected ContentModelValidator( - ILogger logger, + ILogger logger, IWebSecurity webSecurity, ILocalizedTextService textService, IPropertyValidationService propertyValidationService) diff --git a/src/Umbraco.Web.BackOffice/Filters/ContentSaveModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/ContentSaveModelValidator.cs index 493b2e04ea..0f0d75dd64 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ContentSaveModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ContentSaveModelValidator.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Web.Models.ContentEditing; @@ -12,7 +12,7 @@ namespace Umbraco.Web.BackOffice.Filters internal class ContentSaveModelValidator : ContentModelValidator { public ContentSaveModelValidator( - ILogger logger, + ILogger logger, IWebSecurity webSecurity, ILocalizedTextService textService, IPropertyValidationService propertyValidationService) diff --git a/src/Umbraco.Web.BackOffice/Filters/ContentSaveValidationAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/ContentSaveValidationAttribute.cs index 216f94499b..5f784e31db 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ContentSaveValidationAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ContentSaveValidationAttribute.cs @@ -4,8 +4,8 @@ using System.Linq; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc.Infrastructure; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Security; using Umbraco.Core.Services; @@ -32,14 +32,14 @@ namespace Umbraco.Web.BackOffice.Filters private readonly IContentService _contentService; private readonly IEntityService _entityService; private readonly IPropertyValidationService _propertyValidationService; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly ILocalizedTextService _textService; private readonly IUserService _userService; private readonly IWebSecurity _webSecurity; public ContentSaveValidationFilter( - ILogger logger, + ILoggerFactory loggerFactory, IWebSecurity webSecurity, ILocalizedTextService textService, IContentService contentService, @@ -47,7 +47,7 @@ namespace Umbraco.Web.BackOffice.Filters IEntityService entityService, IPropertyValidationService propertyValidationService) { - _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _webSecurity = webSecurity ?? throw new ArgumentNullException(nameof(webSecurity)); _textService = textService ?? throw new ArgumentNullException(nameof(textService)); _contentService = contentService ?? throw new ArgumentNullException(nameof(contentService)); @@ -59,7 +59,7 @@ namespace Umbraco.Web.BackOffice.Filters public void OnActionExecuting(ActionExecutingContext context) { var model = (ContentItemSave) context.ActionArguments["contentItem"]; - var contentItemValidator = new ContentSaveModelValidator(_logger, _webSecurity, _textService, _propertyValidationService); + var contentItemValidator = new ContentSaveModelValidator(_loggerFactory.CreateLogger(), _webSecurity, _textService, _propertyValidationService); if (!ValidateAtLeastOneVariantIsBeingSaved(model, context)) return; if (!contentItemValidator.ValidateExistingContent(model, context)) return; diff --git a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs index a3c667f8d4..d008b2d536 100644 --- a/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/FileUploadCleanupFilterAttribute.cs @@ -5,8 +5,8 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Web.Models.ContentEditing; namespace Umbraco.Web.WebApi.Filters @@ -36,10 +36,10 @@ namespace Umbraco.Web.WebApi.Filters private class FileUploadCleanupFilter : IAsyncActionFilter { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly bool _incomingModel; - public FileUploadCleanupFilter(ILogger logger, bool incomingModel) + public FileUploadCleanupFilter(ILogger logger, bool incomingModel) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _incomingModel = incomingModel; diff --git a/src/Umbraco.Web.BackOffice/Filters/MediaItemSaveValidationAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/MediaItemSaveValidationAttribute.cs index a81f4d329a..6b03b08975 100644 --- a/src/Umbraco.Web.BackOffice/Filters/MediaItemSaveValidationAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/MediaItemSaveValidationAttribute.cs @@ -1,8 +1,8 @@ using System; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Web.BackOffice.Controllers; @@ -26,20 +26,20 @@ namespace Umbraco.Web.BackOffice.Filters private readonly IPropertyValidationService _propertyValidationService; - private readonly ILogger _logger; private readonly IMediaService _mediaService; private readonly ILocalizedTextService _textService; + private readonly ILoggerFactory _loggerFactory; private readonly IWebSecurity _webSecurity; public MediaItemSaveValidationFilter( - ILogger logger, + ILoggerFactory loggerFactory, IWebSecurity webSecurity, ILocalizedTextService textService, IMediaService mediaService, IEntityService entityService, IPropertyValidationService propertyValidationService) { - _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _webSecurity = webSecurity ?? throw new ArgumentNullException(nameof(webSecurity)); _textService = textService ?? throw new ArgumentNullException(nameof(textService)); _mediaService = mediaService ?? throw new ArgumentNullException(nameof(mediaService)); @@ -50,7 +50,7 @@ namespace Umbraco.Web.BackOffice.Filters public void OnActionExecuting(ActionExecutingContext context) { var model = (MediaItemSave) context.ActionArguments["contentItem"]; - var contentItemValidator = new MediaSaveModelValidator(_logger, _webSecurity, _textService, _propertyValidationService); + var contentItemValidator = new MediaSaveModelValidator(_loggerFactory.CreateLogger(), _webSecurity, _textService, _propertyValidationService); if (ValidateUserAccess(model, context)) { diff --git a/src/Umbraco.Web.BackOffice/Filters/MediaSaveModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/MediaSaveModelValidator.cs index 4dd9e6592c..e1f4bfb4b0 100644 --- a/src/Umbraco.Web.BackOffice/Filters/MediaSaveModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/MediaSaveModelValidator.cs @@ -1,4 +1,4 @@ -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Web.Models.ContentEditing; @@ -12,7 +12,7 @@ namespace Umbraco.Web.BackOffice.Filters internal class MediaSaveModelValidator : ContentModelValidator> { public MediaSaveModelValidator( - ILogger logger, + ILogger logger, IWebSecurity webSecurity, ILocalizedTextService textService, IPropertyValidationService propertyValidationService) diff --git a/src/Umbraco.Web.BackOffice/Filters/MemberSaveModelValidator.cs b/src/Umbraco.Web.BackOffice/Filters/MemberSaveModelValidator.cs index 208f0eeb07..882cf6ec66 100644 --- a/src/Umbraco.Web.BackOffice/Filters/MemberSaveModelValidator.cs +++ b/src/Umbraco.Web.BackOffice/Filters/MemberSaveModelValidator.cs @@ -4,8 +4,8 @@ using System.Linq; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc.ModelBinding; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Core.Strings; @@ -25,7 +25,7 @@ namespace Umbraco.Web.BackOffice.Filters private readonly IShortStringHelper _shortStringHelper; public MemberSaveModelValidator( - ILogger logger, + ILogger logger, IWebSecurity webSecurity, ILocalizedTextService textService, IMemberTypeService memberTypeService, diff --git a/src/Umbraco.Web.BackOffice/Filters/MemberSaveValidationAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/MemberSaveValidationAttribute.cs index e6f6edb2e3..0a25bd1838 100644 --- a/src/Umbraco.Web.BackOffice/Filters/MemberSaveValidationAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/MemberSaveValidationAttribute.cs @@ -1,7 +1,7 @@ using System; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Services; using Umbraco.Core.Strings; using Umbraco.Web.Models.ContentEditing; @@ -21,7 +21,7 @@ namespace Umbraco.Web.BackOffice.Filters private sealed class MemberSaveValidationFilter : IActionFilter { - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IWebSecurity _webSecurity; private readonly ILocalizedTextService _textService; private readonly IMemberTypeService _memberTypeService; @@ -30,7 +30,7 @@ namespace Umbraco.Web.BackOffice.Filters private readonly IPropertyValidationService _propertyValidationService; public MemberSaveValidationFilter( - ILogger logger, + ILoggerFactory loggerFactory, IWebSecurity webSecurity, ILocalizedTextService textService, IMemberTypeService memberTypeService, @@ -38,7 +38,7 @@ namespace Umbraco.Web.BackOffice.Filters IShortStringHelper shortStringHelper, IPropertyValidationService propertyValidationService) { - _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _webSecurity = webSecurity ?? throw new ArgumentNullException(nameof(webSecurity)); _textService = textService ?? throw new ArgumentNullException(nameof(textService)); _memberTypeService = memberTypeService ?? throw new ArgumentNullException(nameof(memberTypeService)); @@ -50,7 +50,7 @@ namespace Umbraco.Web.BackOffice.Filters public void OnActionExecuting(ActionExecutingContext context) { var model = (MemberSave)context.ActionArguments["contentItem"]; - var contentItemValidator = new MemberSaveModelValidator(_logger, _webSecurity, _textService, _memberTypeService, _memberService, _shortStringHelper, _propertyValidationService); + var contentItemValidator = new MemberSaveModelValidator(_loggerFactory.CreateLogger(), _webSecurity, _textService, _memberTypeService, _memberService, _shortStringHelper, _propertyValidationService); //now do each validation step if (contentItemValidator.ValidateExistingContent(model, context)) if (contentItemValidator.ValidateProperties(model, model, context)) diff --git a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs index 339127953c..556a84e0dc 100644 --- a/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs +++ b/src/Umbraco.Web.BackOffice/Filters/ValidateAngularAntiForgeryTokenAttribute.cs @@ -6,8 +6,8 @@ using Microsoft.AspNetCore.Antiforgery; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Extensions; using Umbraco.Web.BackOffice.Security; @@ -29,11 +29,11 @@ namespace Umbraco.Web.BackOffice.Filters private class ValidateAngularAntiForgeryTokenFilter : IAsyncActionFilter { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IBackOfficeAntiforgery _antiforgery; private readonly ICookieManager _cookieManager; - public ValidateAngularAntiForgeryTokenFilter(ILogger logger, IBackOfficeAntiforgery antiforgery, ICookieManager cookieManager) + public ValidateAngularAntiForgeryTokenFilter(ILogger logger, IBackOfficeAntiforgery antiforgery, ICookieManager cookieManager) { _logger = logger; _antiforgery = antiforgery; diff --git a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs index add187c0d2..99535d3d30 100644 --- a/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs +++ b/src/Umbraco.Web.BackOffice/HealthCheck/HealthCheckController.cs @@ -3,13 +3,13 @@ using System.Collections.Generic; using System.Linq; using Microsoft.AspNetCore.Mvc; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Configuration.HealthChecks; using Umbraco.Web.BackOffice.Filters; using Umbraco.Web.HealthCheck; using Umbraco.Web.Common.Attributes; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; namespace Umbraco.Web.BackOffice.Controllers { @@ -22,9 +22,9 @@ namespace Umbraco.Web.BackOffice.Controllers { private readonly HealthCheckCollection _checks; private readonly IList _disabledCheckIds; - private readonly ILogger _logger; + private readonly ILogger _logger; - public HealthCheckController(HealthCheckCollection checks, ILogger logger, IOptions healthChecksSettings) + public HealthCheckController(HealthCheckCollection checks, ILogger logger, IOptions healthChecksSettings) { _checks = checks ?? throw new ArgumentNullException(nameof(checks)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs index 88b92fc2e2..164864410c 100644 --- a/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs +++ b/src/Umbraco.Web.BackOffice/PropertyEditors/RteEmbedController.cs @@ -1,6 +1,6 @@ using System; using System.Text.RegularExpressions; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Web.BackOffice.Controllers; using Umbraco.Core.Media; using Umbraco.Web.Common.Attributes; @@ -16,9 +16,9 @@ namespace Umbraco.Web.BackOffice.PropertyEditors public class RteEmbedController : UmbracoAuthorizedJsonController { private readonly EmbedProvidersCollection _embedCollection; - private readonly ILogger _logger; + private readonly ILogger _logger; - public RteEmbedController(EmbedProvidersCollection embedCollection, ILogger logger) + public RteEmbedController(EmbedProvidersCollection embedCollection, ILogger logger) { _embedCollection = embedCollection ?? throw new ArgumentNullException(nameof(embedCollection)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); diff --git a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs index d5793ffaac..2c77182f03 100644 --- a/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs +++ b/src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs @@ -1,9 +1,9 @@ using System; using System.ComponentModel.DataAnnotations; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.BackOffice; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Extensions; using Umbraco.Web.Models; @@ -13,9 +13,9 @@ namespace Umbraco.Web.BackOffice.Security { internal class PasswordChanger { - private readonly ILogger _logger; + private readonly ILogger _logger; - public PasswordChanger(ILogger logger) + public PasswordChanger(ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs b/src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs index 44c83e3009..c6e730c1f1 100644 --- a/src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs +++ b/src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Net; using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; @@ -12,7 +13,6 @@ using Umbraco.Web.Models.Trees; using Umbraco.Web.Models.ContentEditing; using Umbraco.Web.Search; using Umbraco.Core.Configuration; -using Umbraco.Core.Logging; using Constants = Umbraco.Core.Constants; using Umbraco.Web.BackOffice.Filters; using Umbraco.Web.BackOffice.Trees; @@ -57,7 +57,7 @@ namespace Umbraco.Web.Trees IMenuItemCollectionFactory menuItemCollectionFactory, IEntityService entityService, IWebSecurity webSecurity, - ILogger logger, + ILogger logger, ActionCollection actionCollection, IUserService userService, IDataTypeService dataTypeService, diff --git a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs index e673ddde96..62a8b98020 100644 --- a/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs @@ -3,9 +3,9 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Net; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Services; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Web.Models.Trees; using Umbraco.Core.Models.Entities; @@ -26,7 +26,7 @@ namespace Umbraco.Web.Trees { private readonly IEntityService _entityService; private readonly IWebSecurity _webSecurity; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ActionCollection _actionCollection; private readonly IUserService _userService; private readonly IDataTypeService _dataTypeService; @@ -39,7 +39,7 @@ namespace Umbraco.Web.Trees IMenuItemCollectionFactory menuItemCollectionFactory, IEntityService entityService, IWebSecurity webSecurity, - ILogger logger, + ILogger logger, ActionCollection actionCollection, IUserService userService, IDataTypeService dataTypeService diff --git a/src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs b/src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs index 46ef45e85d..b960826fd2 100644 --- a/src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs +++ b/src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Net; using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; @@ -11,7 +12,6 @@ using Umbraco.Web.Actions; using Umbraco.Web.Models.Trees; using Umbraco.Web.Models.ContentEditing; using Umbraco.Web.Search; -using Umbraco.Core.Logging; using Constants = Umbraco.Core.Constants; using Umbraco.Web.BackOffice.Filters; using Umbraco.Web.BackOffice.Trees; @@ -47,7 +47,7 @@ namespace Umbraco.Web.Trees IMenuItemCollectionFactory menuItemCollectionFactory, IEntityService entityService, IWebSecurity webSecurity, - ILogger logger, + ILogger logger, ActionCollection actionCollection, IUserService userService, IDataTypeService dataTypeService, diff --git a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs index 9b5b19f2fc..6ccebc9b25 100644 --- a/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs +++ b/src/Umbraco.Web.Common/Install/InstallAuthorizeAttribute.cs @@ -2,8 +2,8 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; namespace Umbraco.Web.Common.Install { @@ -24,7 +24,7 @@ namespace Umbraco.Web.Common.Install var serviceProvider = authorizationFilterContext.HttpContext.RequestServices; var runtimeState = serviceProvider.GetService(); var umbracoContext = serviceProvider.GetService(); - var logger = serviceProvider.GetService(); + var logger = serviceProvider.GetService>(); if (!IsAllowed(runtimeState, umbracoContext, logger)) { @@ -33,7 +33,7 @@ namespace Umbraco.Web.Common.Install } - private static bool IsAllowed(IRuntimeState runtimeState, IUmbracoContext umbracoContext, ILogger logger) + private static bool IsAllowed(IRuntimeState runtimeState, IUmbracoContext umbracoContext, ILogger logger) { try { diff --git a/src/Umbraco.Web.Common/Install/InstallController.cs b/src/Umbraco.Web.Common/Install/InstallController.cs index a8f1801795..d79e813f0f 100644 --- a/src/Umbraco.Web.Common/Install/InstallController.cs +++ b/src/Umbraco.Web.Common/Install/InstallController.cs @@ -2,11 +2,11 @@ using Microsoft.AspNetCore.Http.Extensions; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Routing; +using Microsoft.Extensions.Logging; using System.Threading.Tasks; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.WebAssets; using Umbraco.Extensions; using Umbraco.Web.Common.Filters; @@ -31,7 +31,7 @@ namespace Umbraco.Web.Common.Install private readonly GlobalSettings _globalSettings; private readonly IHostingEnvironment _hostingEnvironment; private readonly IUmbracoVersion _umbracoVersion; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly LinkGenerator _linkGenerator; private readonly IRuntimeMinifier _runtimeMinifier; @@ -43,7 +43,7 @@ namespace Umbraco.Web.Common.Install IRuntimeMinifier runtimeMinifier, IHostingEnvironment hostingEnvironment, IUmbracoVersion umbracoVersion, - ILogger logger, + ILogger logger, LinkGenerator linkGenerator) { _webSecurity = webSecurity; @@ -115,7 +115,7 @@ namespace Umbraco.Web.Common.Install private static bool _reported; private static RuntimeLevel _reportedLevel; - private static void ReportRuntime(ILogger logger, RuntimeLevel level, string message) + private static void ReportRuntime(ILogger logger, RuntimeLevel level, string message) { if (_reported && _reportedLevel == level) return; _reported = true; diff --git a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs index 4612b2845c..e40fcb20e3 100644 --- a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs +++ b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Http; using System; using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Logging; using Umbraco.Net; @@ -17,7 +18,7 @@ namespace Umbraco.Web.Common.Profiler private readonly IUmbracoRequestLifetime _umbracoRequestLifetime; private readonly List _terminate = new List(); - public WebProfilerComponent(IProfiler profiler, ILogger logger, IUmbracoRequestLifetime umbracoRequestLifetime, + public WebProfilerComponent(IProfiler profiler, Microsoft.Extensions.Logging.ILogger logger, IUmbracoRequestLifetime umbracoRequestLifetime, IUmbracoApplicationLifetime umbracoApplicationLifetime) { _umbracoRequestLifetime = umbracoRequestLifetime; diff --git a/src/Umbraco.Web/Logging/WebProfilerComponent.cs b/src/Umbraco.Web/Logging/WebProfilerComponent.cs index 796d86d16f..e71cb3f849 100755 --- a/src/Umbraco.Web/Logging/WebProfilerComponent.cs +++ b/src/Umbraco.Web/Logging/WebProfilerComponent.cs @@ -1,5 +1,6 @@ using System; using System.Web; +using Microsoft.Extensions.Logging; using Umbraco.Core.Composing; using Umbraco.Core.Logging; @@ -10,7 +11,7 @@ namespace Umbraco.Web.Logging private readonly WebProfiler _profiler; private readonly bool _profile; - public WebProfilerComponent(IProfiler profiler, ILogger logger) + public WebProfilerComponent(IProfiler profiler, Microsoft.Extensions.Logging.ILogger logger) { _profile = true; diff --git a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs index b73cee7524..2f427a8949 100644 --- a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs +++ b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyConfiguration.cs @@ -6,11 +6,11 @@ using System.Security.Cryptography; using System.Text; using System.Web; using System.Xml.Linq; +using Microsoft.Extensions.Logging; using ClientDependency.Core.CompositeFiles.Providers; using ClientDependency.Core.Config; using Semver; using Umbraco.Core.IO; -using Umbraco.Core.Logging; namespace Umbraco.Web.WebAssets.CDF { @@ -19,7 +19,7 @@ namespace Umbraco.Web.WebAssets.CDF /// public class ClientDependencyConfiguration { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly string _fileName; private string FileMapDefaultFolder @@ -28,7 +28,7 @@ namespace Umbraco.Web.WebAssets.CDF set => XmlFileMapper.FileMapDefaultFolder = value; } - public ClientDependencyConfiguration(ILogger logger, IIOHelper ioHelper) + public ClientDependencyConfiguration(ILogger logger, IIOHelper ioHelper) { if (logger == null) throw new ArgumentNullException("logger"); _logger = logger; diff --git a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyRuntimeMinifier.cs b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyRuntimeMinifier.cs index 0cd03d2ee6..1bdb1bf945 100644 --- a/src/Umbraco.Web/WebAssets/CDF/ClientDependencyRuntimeMinifier.cs +++ b/src/Umbraco.Web/WebAssets/CDF/ClientDependencyRuntimeMinifier.cs @@ -5,12 +5,12 @@ using System.Linq; using System.Reflection; using System.Threading.Tasks; using System.Web; +using Microsoft.Extensions.Logging; using ClientDependency.Core; using ClientDependency.Core.CompositeFiles; using ClientDependency.Core.Config; using Umbraco.Core.Configuration; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Manifest; using Umbraco.Core.PropertyEditors; using Umbraco.Core.WebAssets; @@ -23,7 +23,8 @@ namespace Umbraco.Web.WebAssets.CDF { private readonly IHttpContextAccessor _httpContextAccessor; private readonly IIOHelper _ioHelper; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; + private readonly ILogger _logger; private readonly IUmbracoVersion _umbracoVersion; public string CacheBuster => ClientDependencySettings.Instance.Version.ToString(); @@ -31,12 +32,13 @@ namespace Umbraco.Web.WebAssets.CDF public ClientDependencyRuntimeMinifier( IHttpContextAccessor httpContextAccessor, IIOHelper ioHelper, - ILogger logger, + ILoggerFactory loggerFactory, IUmbracoVersion umbracoVersion) { _httpContextAccessor = httpContextAccessor; _ioHelper = ioHelper; - _logger = logger; + _loggerFactory = loggerFactory; + _logger = _loggerFactory.CreateLogger(); _umbracoVersion = umbracoVersion; } @@ -107,7 +109,7 @@ namespace Umbraco.Web.WebAssets.CDF public void Reset() { // Update ClientDependency version - var clientDependencyConfig = new ClientDependencyConfiguration(_logger, _ioHelper); + var clientDependencyConfig = new ClientDependencyConfiguration(_loggerFactory.CreateLogger(), _ioHelper); var clientDependencyUpdated = clientDependencyConfig.UpdateVersionNumber( _umbracoVersion.SemanticVersion, DateTime.UtcNow, "yyyyMMdd"); // Delete ClientDependency temp directories to make sure we get fresh caches From a679a1d2c4aff62c9a6e5b7922823c24f16ba8d9 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 11:22:32 +0200 Subject: [PATCH 47/85] Remove unused NullLogger --- src/Umbraco.Core/Logging/NullLogger.cs | 64 -------------------------- 1 file changed, 64 deletions(-) delete mode 100644 src/Umbraco.Core/Logging/NullLogger.cs diff --git a/src/Umbraco.Core/Logging/NullLogger.cs b/src/Umbraco.Core/Logging/NullLogger.cs deleted file mode 100644 index 892675bc47..0000000000 --- a/src/Umbraco.Core/Logging/NullLogger.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - public class NullLogger : ILogger - { - public bool IsEnabled(Type reporting, LogLevel level) => false; - - public void Fatal(Type reporting, Exception exception) - { - - } - - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) - { - - } - - public void LogCritical(string messageTemplate, params object[] propertyValues) - { - - } - - public void LogError(Type reporting, Exception exception) - { - - } - - public void LogError(string message, params object[] propertyValues) - { - - } - - public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) - { - - } - - public void LogWarning(string messageTemplate, params object[] propertyValues) - { - - } - - public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) - { - - } - - public void LogInformation(string messageTemplate, params object[] propertyValues) - { - - } - - public void LogDebug(string messageTemplate, params object[] propertyValues) - { - - } - - public void LogTrace(string messageTemplate, params object[] propertyValues) - { - - } - } -} From dfd5f991a6274d37e876bb1af97e70e1ba08db9d Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 11:30:16 +0200 Subject: [PATCH 48/85] Use Ms ILogger in LogProfiler allowing us to delete ConsoleLogger --- src/Umbraco.Core/Logging/ConsoleLogger.cs | 77 ------------------- src/Umbraco.Core/Logging/LogProfiler.cs | 5 +- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 30 +------- .../UmbracoExamine/ExamineBaseTest.cs | 5 +- 5 files changed, 8 insertions(+), 113 deletions(-) delete mode 100644 src/Umbraco.Core/Logging/ConsoleLogger.cs diff --git a/src/Umbraco.Core/Logging/ConsoleLogger.cs b/src/Umbraco.Core/Logging/ConsoleLogger.cs deleted file mode 100644 index 9f8757916c..0000000000 --- a/src/Umbraco.Core/Logging/ConsoleLogger.cs +++ /dev/null @@ -1,77 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - public class ConsoleLogger : ILogger - { - private readonly IMessageTemplates _messageTemplates; - - public ConsoleLogger(IMessageTemplates messageTemplates) - { - _messageTemplates = messageTemplates; - } - - public bool IsEnabled(Type reporting, LogLevel level) - => true; - - public void Fatal(Type reporting, Exception exception) - { - Console.WriteLine("FATAL {0}", reporting.Name); - Console.WriteLine(exception); - } - - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - Console.WriteLine(exception); - } - - public void LogCritical(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("FATAL {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogError(Type reporting, Exception exception) - { - Console.WriteLine("ERROR {0}", reporting.Name); - Console.WriteLine(exception); - } - - public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - Console.WriteLine(exception); - } - - public void LogError(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("ERROR {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogWarning(string message, params object[] propertyValues) - { - Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); - } - - public void LogWarning(Exception exception, string message, params object[] propertyValues) - { - Console.WriteLine("WARN {0} - {1}", typeof(T).Name, _messageTemplates.Render(message, propertyValues)); - Console.WriteLine(exception); - } - - public void LogInformation(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("INFO {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogDebug(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("DEBUG {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - - public void LogTrace(string messageTemplate, params object[] propertyValues) - { - Console.WriteLine("VERBOSE {0} - {1}", typeof(T).Name, _messageTemplates.Render(messageTemplate, propertyValues)); - } - } -} diff --git a/src/Umbraco.Core/Logging/LogProfiler.cs b/src/Umbraco.Core/Logging/LogProfiler.cs index 23a9cd5d50..1c4b17ee8a 100644 --- a/src/Umbraco.Core/Logging/LogProfiler.cs +++ b/src/Umbraco.Core/Logging/LogProfiler.cs @@ -1,5 +1,6 @@ using System; using System.Diagnostics; +using Microsoft.Extensions.Logging; namespace Umbraco.Core.Logging { @@ -8,9 +9,9 @@ namespace Umbraco.Core.Logging /// public class LogProfiler : IProfiler { - private readonly ILogger _logger; + private readonly Microsoft.Extensions.Logging.ILogger _logger; - public LogProfiler(ILogger logger) + public LogProfiler(Microsoft.Extensions.Logging.ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index ec081926f4..8a00a291df 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -63,8 +63,7 @@ namespace Umbraco.Tests.Runtimes var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); // create the very basic and essential things we need - var logger = new ConsoleLogger(new MessageTemplates()); - var profiler = new LogProfiler(logger); + var profiler = new LogProfiler(loggerFactory.CreateLogger()); var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; var globalSettings = new GlobalSettingsBuilder().Build(); @@ -273,7 +272,6 @@ namespace Umbraco.Tests.Runtimes // create the very basic and essential things we need var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); - var logger = new ConsoleLogger(new MessageTemplates()); var profiler = Mock.Of(); var profilingLogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); var appCaches = AppCaches.Disabled; diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index e92dc0fda0..af8d4c42a2 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -174,8 +174,8 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful - var (logger, profiler) = GetLoggers(Options.Logger); var loggerFactory = GetLoggerFactory(Options.Logger); + var profiler = new LogProfiler(loggerFactory.CreateLogger()); var msLogger = loggerFactory.CreateLogger("msLogger"); var proflogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); IOHelper = TestHelper.IOHelper; @@ -209,7 +209,6 @@ namespace Umbraco.Tests.Testing Composition.RegisterUnique(TypeFinder); Composition.RegisterUnique(LocalizedTextService); Composition.RegisterUnique(typeLoader); - Composition.RegisterUnique(logger); Composition.RegisterUnique(profiler); Composition.RegisterUnique(proflogger); Composition.RegisterUnique(appCaches); @@ -286,33 +285,6 @@ namespace Umbraco.Tests.Testing return factory; } - protected virtual (ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) - { - // TODO: Fix this, give the microsoft loggers a name - ILogger logger; - IProfiler profiler; - - switch (option) - { - case UmbracoTestOptions.Logger.Mock: - logger = Mock.Of(); - profiler = Mock.Of(); - break; - case UmbracoTestOptions.Logger.Serilog: - logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - profiler = new LogProfiler(logger); - break; - case UmbracoTestOptions.Logger.Console: - logger = new ConsoleLogger(new MessageTemplates()); - profiler = new LogProfiler(logger); - break; - default: - throw new NotSupportedException($"Logger option {option} is not supported."); - } - - return (logger, profiler); - } - protected virtual AppCaches GetAppCaches() { return AppCaches.Disabled; diff --git a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs index 15a158196c..68497262ba 100644 --- a/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs +++ b/src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs @@ -1,4 +1,5 @@ using System.IO; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Composing; @@ -20,8 +21,8 @@ namespace Umbraco.Tests.UmbracoExamine public void InitializeFixture() { - var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); - _profilingLogger = new ProfilingLogger(NullLogger.Instance, new LogProfiler(logger)); + // var logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTestFiles("~/unit-test.config"))); + _profilingLogger = new ProfilingLogger(NullLogger.Instance, new LogProfiler(NullLogger.Instance)); } private IProfilingLogger _profilingLogger; From a12ea89517d72fd29982cc68ad1d501ecc5931bd Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 11:43:09 +0200 Subject: [PATCH 49/85] Use MS Ilogger in ExamineExtensions --- src/Umbraco.Examine.Lucene/ExamineExtensions.cs | 6 +++--- src/Umbraco.Examine.Lucene/ExamineLuceneComponent.cs | 12 ++++++------ .../ExamineLuceneFinalComponent.cs | 12 ++++++------ .../Search/BackgroundIndexRebuilder.cs | 1 - 4 files changed, 15 insertions(+), 16 deletions(-) diff --git a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs index 0f8c1ecda9..6f476ec79d 100644 --- a/src/Umbraco.Examine.Lucene/ExamineExtensions.cs +++ b/src/Umbraco.Examine.Lucene/ExamineExtensions.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Examine; using Examine.LuceneEngine.Providers; using Lucene.Net.Analysis; @@ -8,7 +9,6 @@ using Lucene.Net.QueryParsers; using Lucene.Net.Search; using Umbraco.Core; using Version = Lucene.Net.Util.Version; -using Umbraco.Core.Logging; using System.Threading; namespace Umbraco.Examine @@ -29,7 +29,7 @@ namespace Umbraco.Examine /// /// Configures and unlocks all Lucene based indexes registered with the . /// - internal static void ConfigureIndexes(this IExamineManager examineManager, IMainDom mainDom, ILogger logger) + internal static void ConfigureIndexes(this IExamineManager examineManager, IMainDom mainDom, ILogger logger) { LazyInitializer.EnsureInitialized( ref _configuredInit, @@ -71,7 +71,7 @@ namespace Umbraco.Examine /// /// This is not thread safe, use with care /// - private static void ConfigureLuceneIndexes(this IExamineManager examineManager, ILogger logger, bool disableExamineIndexing) + private static void ConfigureLuceneIndexes(this IExamineManager examineManager, ILogger logger, bool disableExamineIndexing) { foreach (var luceneIndexer in examineManager.Indexes.OfType()) { diff --git a/src/Umbraco.Examine.Lucene/ExamineLuceneComponent.cs b/src/Umbraco.Examine.Lucene/ExamineLuceneComponent.cs index 0d701d388d..1bdb579e62 100644 --- a/src/Umbraco.Examine.Lucene/ExamineLuceneComponent.cs +++ b/src/Umbraco.Examine.Lucene/ExamineLuceneComponent.cs @@ -1,8 +1,8 @@ -using Examine; +using Microsoft.Extensions.Logging; +using Examine; using Examine.LuceneEngine.Directories; using Umbraco.Core; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; namespace Umbraco.Examine { @@ -12,14 +12,14 @@ namespace Umbraco.Examine private readonly IndexRebuilder _indexRebuilder; private readonly IExamineManager _examineManager; private readonly IMainDom _mainDom; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; - public ExamineLuceneComponent(IndexRebuilder indexRebuilder, IExamineManager examineManager, IMainDom mainDom, ILogger logger) + public ExamineLuceneComponent(IndexRebuilder indexRebuilder, IExamineManager examineManager, IMainDom mainDom, ILoggerFactory loggerFactory) { _indexRebuilder = indexRebuilder; _examineManager = examineManager; _mainDom = mainDom; - _logger = logger; + _loggerFactory = loggerFactory; } public void Initialize() @@ -41,7 +41,7 @@ namespace Umbraco.Examine /// /// /// - private void IndexRebuilder_RebuildingIndexes(object sender, IndexRebuildingEventArgs e) => _examineManager.ConfigureIndexes(_mainDom, _logger); + private void IndexRebuilder_RebuildingIndexes(object sender, IndexRebuildingEventArgs e) => _examineManager.ConfigureIndexes(_mainDom, _loggerFactory.CreateLogger()); public void Terminate() { diff --git a/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs b/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs index 25e79c6040..745a5fb583 100644 --- a/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs +++ b/src/Umbraco.Examine.Lucene/ExamineLuceneFinalComponent.cs @@ -1,19 +1,19 @@ -using Examine; +using Microsoft.Extensions.Logging; +using Examine; using Umbraco.Core; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; namespace Umbraco.Examine { public class ExamineLuceneFinalComponent : IComponent { - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IExamineManager _examineManager; private readonly IMainDom _mainDom; - public ExamineLuceneFinalComponent(ILogger logger, IExamineManager examineManager, IMainDom mainDom) + public ExamineLuceneFinalComponent(ILoggerFactory loggerFactory, IExamineManager examineManager, IMainDom mainDom) { - _logger = logger; + _loggerFactory = loggerFactory; _examineManager = examineManager; _mainDom = mainDom; } @@ -23,7 +23,7 @@ namespace Umbraco.Examine if (!_mainDom.IsMainDom) return; // Ensures all lucene based indexes are unlocked and ready to go - _examineManager.ConfigureIndexes(_mainDom, _logger); + _examineManager.ConfigureIndexes(_mainDom, _loggerFactory.CreateLogger()); } public void Terminate() diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 474496263e..bdd36f50b2 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -7,7 +7,6 @@ using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Hosting; using Umbraco.Web.Scheduling; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Search { From 581775e08c668d5827779794d6d0b856b70d729d Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 11:46:29 +0200 Subject: [PATCH 50/85] Remove public ILogger from PluginController Having a public ILogger doesn't align with MS ILogger, and the logger is never used --- src/Umbraco.TestData/UmbracoTestDataController.cs | 4 ++-- .../Controllers/SurfaceControllerTests.cs | 2 +- .../Web/Controllers/PluginControllerAreaTests.cs | 8 ++++---- src/Umbraco.Tests/Web/Mvc/SurfaceControllerTests.cs | 2 +- src/Umbraco.Web.Common/Controllers/PluginController.cs | 8 +------- src/Umbraco.Web.Website/Controllers/SurfaceController.cs | 4 ++-- src/Umbraco.Web/Controllers/UmbLoginController.cs | 4 ++-- src/Umbraco.Web/Controllers/UmbLoginStatusController.cs | 4 ++-- src/Umbraco.Web/Controllers/UmbProfileController.cs | 4 ++-- src/Umbraco.Web/Controllers/UmbRegisterController.cs | 4 ++-- src/Umbraco.Web/Mvc/PluginController.cs | 9 +-------- src/Umbraco.Web/Mvc/SurfaceController.cs | 4 ++-- 12 files changed, 22 insertions(+), 35 deletions(-) diff --git a/src/Umbraco.TestData/UmbracoTestDataController.cs b/src/Umbraco.TestData/UmbracoTestDataController.cs index 09f9177982..33c361df2d 100644 --- a/src/Umbraco.TestData/UmbracoTestDataController.cs +++ b/src/Umbraco.TestData/UmbracoTestDataController.cs @@ -33,8 +33,8 @@ namespace Umbraco.TestData private readonly PropertyEditorCollection _propertyEditors; private readonly IShortStringHelper _shortStringHelper; - public UmbracoTestDataController(IScopeProvider scopeProvider, PropertyEditorCollection propertyEditors, IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger, IShortStringHelper shortStringHelper) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + public UmbracoTestDataController(IScopeProvider scopeProvider, PropertyEditorCollection propertyEditors, IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, IShortStringHelper shortStringHelper) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _scopeProvider = scopeProvider; _propertyEditors = propertyEditors; diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Web.Website/Controllers/SurfaceControllerTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Web.Website/Controllers/SurfaceControllerTests.cs index 0d288b6310..ef74957090 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Web.Website/Controllers/SurfaceControllerTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Web.Website/Controllers/SurfaceControllerTests.cs @@ -198,7 +198,7 @@ namespace Umbraco.Tests.Integration private readonly IPublishedContentQuery _publishedContentQuery; public TestSurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IPublishedContentQuery publishedContentQuery, IPublishedUrlProvider publishedUrlProvider) - : base(umbracoContextAccessor, null, ServiceContext.CreatePartial(), AppCaches.Disabled, null, null, publishedUrlProvider) + : base(umbracoContextAccessor, null, ServiceContext.CreatePartial(), AppCaches.Disabled, null, publishedUrlProvider) { _publishedContentQuery = publishedContentQuery; } diff --git a/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs b/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs index 59209f3e7d..bd4d09b30c 100644 --- a/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs +++ b/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs @@ -54,7 +54,7 @@ namespace Umbraco.Tests.Web.Controllers public class Plugin1Controller : PluginController { public Plugin1Controller(IUmbracoContextAccessor umbracoContextAccessor) - : base(umbracoContextAccessor, null, null, null, null, null) + : base(umbracoContextAccessor, null, null, null, null) { } } @@ -63,7 +63,7 @@ namespace Umbraco.Tests.Web.Controllers public class Plugin2Controller : PluginController { public Plugin2Controller(IUmbracoContextAccessor umbracoContextAccessor) - : base(umbracoContextAccessor, null, null, null, null, null) + : base(umbracoContextAccessor, null, null, null, null) { } } @@ -72,7 +72,7 @@ namespace Umbraco.Tests.Web.Controllers public class Plugin3Controller : PluginController { public Plugin3Controller(IUmbracoContextAccessor umbracoContextAccessor) - : base(umbracoContextAccessor, null, null, null, null, null) + : base(umbracoContextAccessor, null, null, null, null) { } } @@ -80,7 +80,7 @@ namespace Umbraco.Tests.Web.Controllers public class Plugin4Controller : PluginController { public Plugin4Controller(IUmbracoContextAccessor umbracoContextAccessor) - : base(umbracoContextAccessor, null, null, null, null, null) + : base(umbracoContextAccessor, null, null, null,null) { } } diff --git a/src/Umbraco.Tests/Web/Mvc/SurfaceControllerTests.cs b/src/Umbraco.Tests/Web/Mvc/SurfaceControllerTests.cs index 8e0c534550..3f5ad58865 100644 --- a/src/Umbraco.Tests/Web/Mvc/SurfaceControllerTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/SurfaceControllerTests.cs @@ -182,7 +182,7 @@ namespace Umbraco.Tests.Web.Mvc private readonly IPublishedContentQuery _publishedContentQuery; public TestSurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IPublishedContentQuery publishedContentQuery) - : base(umbracoContextAccessor, null, ServiceContext.CreatePartial(), AppCaches.Disabled, null, null) + : base(umbracoContextAccessor, null, ServiceContext.CreatePartial(), AppCaches.Disabled, null) { _publishedContentQuery = publishedContentQuery; } diff --git a/src/Umbraco.Web.Common/Controllers/PluginController.cs b/src/Umbraco.Web.Common/Controllers/PluginController.cs index f78fa1a7e4..d5b033c26e 100644 --- a/src/Umbraco.Web.Common/Controllers/PluginController.cs +++ b/src/Umbraco.Web.Common/Controllers/PluginController.cs @@ -49,11 +49,6 @@ namespace Umbraco.Web.Common.Controllers /// public AppCaches AppCaches { get; } - /// - /// Gets or sets the logger. - /// - public ILogger Logger { get; } - /// /// Gets or sets the profiling logger. /// @@ -64,13 +59,12 @@ namespace Umbraco.Web.Common.Controllers /// internal PluginControllerMetadata Metadata => GetMetadata(GetType()); - protected PluginController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger) + protected PluginController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) { UmbracoContextAccessor = umbracoContextAccessor; DatabaseFactory = databaseFactory; Services = services; AppCaches = appCaches; - Logger = logger; ProfilingLogger = profilingLogger; } diff --git a/src/Umbraco.Web.Website/Controllers/SurfaceController.cs b/src/Umbraco.Web.Website/Controllers/SurfaceController.cs index be6ee8ddce..726ce4ab82 100644 --- a/src/Umbraco.Web.Website/Controllers/SurfaceController.cs +++ b/src/Umbraco.Web.Website/Controllers/SurfaceController.cs @@ -39,8 +39,8 @@ namespace Umbraco.Web.Website.Controllers } } - protected SurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger, IPublishedUrlProvider publishedUrlProvider) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + protected SurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, IPublishedUrlProvider publishedUrlProvider) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _publishedUrlProvider = publishedUrlProvider; } diff --git a/src/Umbraco.Web/Controllers/UmbLoginController.cs b/src/Umbraco.Web/Controllers/UmbLoginController.cs index cd0489433c..1f3faf7a43 100644 --- a/src/Umbraco.Web/Controllers/UmbLoginController.cs +++ b/src/Umbraco.Web/Controllers/UmbLoginController.cs @@ -19,9 +19,9 @@ namespace Umbraco.Web.Controllers } public UmbLoginController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, - ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger, + ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, MembershipHelper membershipHelper) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _membershipHelper = membershipHelper; } diff --git a/src/Umbraco.Web/Controllers/UmbLoginStatusController.cs b/src/Umbraco.Web/Controllers/UmbLoginStatusController.cs index 825dd1e904..d7a8601838 100644 --- a/src/Umbraco.Web/Controllers/UmbLoginStatusController.cs +++ b/src/Umbraco.Web/Controllers/UmbLoginStatusController.cs @@ -21,9 +21,9 @@ namespace Umbraco.Web.Controllers } public UmbLoginStatusController(IUmbracoContextAccessor umbracoContextAccessor, - IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, + IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, MembershipHelper membershipHelper) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _membershipHelper = membershipHelper; } diff --git a/src/Umbraco.Web/Controllers/UmbProfileController.cs b/src/Umbraco.Web/Controllers/UmbProfileController.cs index c5a37e7629..88edee26c8 100644 --- a/src/Umbraco.Web/Controllers/UmbProfileController.cs +++ b/src/Umbraco.Web/Controllers/UmbProfileController.cs @@ -21,9 +21,9 @@ namespace Umbraco.Web.Controllers { } public UmbProfileController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, - ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger, + ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, MembershipHelper membershipHelper) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _membershipHelper = membershipHelper; } diff --git a/src/Umbraco.Web/Controllers/UmbRegisterController.cs b/src/Umbraco.Web/Controllers/UmbRegisterController.cs index 1e83fadda6..30720eb776 100644 --- a/src/Umbraco.Web/Controllers/UmbRegisterController.cs +++ b/src/Umbraco.Web/Controllers/UmbRegisterController.cs @@ -21,9 +21,9 @@ namespace Umbraco.Web.Controllers } public UmbRegisterController(IUmbracoContextAccessor umbracoContextAccessor, - IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, + IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger, MembershipHelper membershipHelper) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + : base(umbracoContextAccessor, databaseFactory, services, appCaches, profilingLogger) { _membershipHelper = membershipHelper; } diff --git a/src/Umbraco.Web/Mvc/PluginController.cs b/src/Umbraco.Web/Mvc/PluginController.cs index 9f34de174b..09ed97171e 100644 --- a/src/Umbraco.Web/Mvc/PluginController.cs +++ b/src/Umbraco.Web/Mvc/PluginController.cs @@ -49,11 +49,6 @@ namespace Umbraco.Web.Mvc /// public AppCaches AppCaches { get; } - /// - /// Gets or sets the logger. - /// - public ILogger Logger { get; } - /// /// Gets or sets the profiling logger. /// @@ -75,19 +70,17 @@ namespace Umbraco.Web.Mvc Current.Factory.GetInstance(), Current.Factory.GetInstance(), Current.Factory.GetInstance(), - Current.Factory.GetInstance(), Current.Factory.GetInstance() ) { } - protected PluginController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger) + protected PluginController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) { UmbracoContextAccessor = umbracoContextAccessor; DatabaseFactory = databaseFactory; Services = services; AppCaches = appCaches; - Logger = logger; ProfilingLogger = profilingLogger; } diff --git a/src/Umbraco.Web/Mvc/SurfaceController.cs b/src/Umbraco.Web/Mvc/SurfaceController.cs index 29f2f5c541..cd344ea261 100644 --- a/src/Umbraco.Web/Mvc/SurfaceController.cs +++ b/src/Umbraco.Web/Mvc/SurfaceController.cs @@ -22,8 +22,8 @@ namespace Umbraco.Web.Mvc protected SurfaceController() { } - protected SurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, ILogger logger, IProfilingLogger profilingLogger) - : base(umbracoContextAccessor, databaseFactory, services, appCaches, logger, profilingLogger) + protected SurfaceController(IUmbracoContextAccessor umbracoContextAccessor, IUmbracoDatabaseFactory databaseFactory, ServiceContext services, AppCaches appCaches, IProfilingLogger profilingLogger) + : base(umbracoContextAccessor, databaseFactory, services, appCaches,profilingLogger) { } /// From d3ae921293e75e35ec5a2feaf87414a48f98a114 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 13:04:57 +0200 Subject: [PATCH 51/85] Remove most of the last references and rename LoggerFactory_ to LoggerFactory in UmbracoTestBase --- .../Configuration/Grid/GridConfig.cs | 8 +- .../Configuration/Grid/GridEditorsConfig.cs | 6 +- .../HealthChecks/AbstractConfigCheck.cs | 9 +- .../HealthChecks/CompilationDebugCheck.cs | 6 +- .../HealthChecks/ConfigurationService.cs | 6 +- .../HealthChecks/CustomErrorsCheck.cs | 6 +- .../HealthChecks/MacroErrorsCheck.cs | 6 +- .../HealthChecks/NotificationEmailCheck.cs | 6 +- .../Configuration/HealthChecks/TraceCheck.cs | 6 +- .../TrySkipIisCustomErrorsCheck.cs | 6 +- .../ContentAppFactoryCollection.cs | 6 +- .../ContentAppFactoryCollectionBuilder.cs | 8 +- .../HealthCheck/Checks/Security/HttpsCheck.cs | 10 +- .../Routing/ContentFinderByUrlAlias.cs | 10 +- .../Routing/UrlProviderExtensions.cs | 4 +- .../Implementations/TestHelper.cs | 1 - src/Umbraco.Tests.Integration/RuntimeTests.cs | 5 +- .../Testing/IntegrationTestComposer.cs | 2 - .../Umbraco.Core/Composing/TypeFinderTests.cs | 1 - src/Umbraco.Tests/IO/FileSystemsTests.cs | 4 +- .../Migrations/AdvancedMigrationTests.cs | 4 +- .../Models/ContentExtensionsTests.cs | 2 - src/Umbraco.Tests/Models/ContentTests.cs | 4 +- src/Umbraco.Tests/Models/VariationTests.cs | 1 - .../CreatedPackagesRepositoryTests.cs | 2 +- .../Packaging/PackageDataInstallationTests.cs | 1 - .../NPocoTests/NPocoBulkInsertTests.cs | 2 +- .../Repositories/ContentTypeRepositoryTest.cs | 92 +++++++++---------- .../DataTypeDefinitionRepositoryTest.cs | 56 +++++------ .../Repositories/DocumentRepositoryTest.cs | 74 +++++++-------- .../Repositories/DomainRepositoryTest.cs | 42 ++++----- .../Repositories/MediaRepositoryTest.cs | 56 +++++------ .../Repositories/MediaTypeRepositoryTest.cs | 40 ++++---- .../Repositories/MemberRepositoryTest.cs | 40 ++++---- .../Repositories/MemberTypeRepositoryTest.cs | 28 +++--- .../PartialViewRepositoryTests.cs | 4 +- .../PublicAccessRepositoryTest.cs | 44 ++++----- .../Repositories/RelationRepositoryTest.cs | 28 +++--- .../Repositories/ScriptRepositoryTest.cs | 22 ++--- .../Repositories/StylesheetRepositoryTest.cs | 2 +- .../Repositories/TagRepositoryTest.cs | 72 +++++++-------- .../Repositories/UserRepositoryTest.cs | 30 +++--- .../Persistence/SchemaValidationTest.cs | 2 +- .../Persistence/UnitOfWorkTests.cs | 8 +- .../PropertyEditors/ColorListValidatorTest.cs | 1 - .../EnsureUniqueValuesValidatorTest.cs | 1 - .../MultiValuePropertyEditorTests.cs | 1 - .../PublishedContent/NuCacheChildrenTests.cs | 1 - .../PublishedContent/NuCacheTests.cs | 1 - .../Routing/ContentFinderByAliasTests.cs | 3 +- .../ContentFinderByAliasWithDomainsTests.cs | 3 +- .../Routing/ContentFinderByIdTests.cs | 2 +- .../ContentFinderByUrlAndTemplateTests.cs | 2 +- .../Routing/ContentFinderByUrlTests.cs | 10 +- .../ContentFinderByUrlWithDomainsTests.cs | 4 +- .../Routing/DomainsAndCulturesTests.cs | 6 +- .../Routing/GetContentUrlsTests.cs | 16 ++-- .../Routing/RenderRouteHandlerTests.cs | 7 +- ...oviderWithHideTopLevelNodeFromPathTests.cs | 2 +- ...derWithoutHideTopLevelNodeFromPathTests.cs | 14 +-- .../Routing/UrlsProviderWithDomainsTests.cs | 14 +-- .../Routing/UrlsWithNestedDomains.cs | 4 +- .../Runtimes/CoreRuntimeTests.cs | 1 - .../Services/CachedDataTypeServiceTests.cs | 2 +- .../Services/ContentServicePerformanceTest.cs | 24 ++--- .../Services/ContentServiceTests.cs | 14 +-- .../Services/DataTypeServiceTests.cs | 4 +- .../Services/LocalizedTextServiceTests.cs | 1 - .../Services/MacroServiceTests.cs | 2 +- .../Services/PerformanceTests.cs | 2 +- .../TestHelpers/BaseUsingSqlCeSyntax.cs | 5 +- .../Stubs/TestControllerFactory.cs | 8 +- .../TestHelpers/TestWithDatabaseBase.cs | 4 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 18 ++-- .../UmbracoExamine/IndexInitializer.cs | 1 - .../Mapping/ContentMapDefinition.cs | 10 +- src/Umbraco.Web/Composing/Current.cs | 1 - 77 files changed, 470 insertions(+), 491 deletions(-) diff --git a/src/Umbraco.Core/Configuration/Grid/GridConfig.cs b/src/Umbraco.Core/Configuration/Grid/GridConfig.cs index 363dc7b048..d9816101fd 100644 --- a/src/Umbraco.Core/Configuration/Grid/GridConfig.cs +++ b/src/Umbraco.Core/Configuration/Grid/GridConfig.cs @@ -1,6 +1,6 @@ -using Umbraco.Core.Cache; +using Microsoft.Extensions.Logging; +using Umbraco.Core.Cache; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Manifest; using Umbraco.Core.Serialization; @@ -8,9 +8,9 @@ namespace Umbraco.Core.Configuration.Grid { public class GridConfig : IGridConfig { - public GridConfig(AppCaches appCaches, IManifestParser manifestParser, IJsonSerializer jsonSerializer, IHostingEnvironment hostingEnvironment, ILogger logger) + public GridConfig(AppCaches appCaches, IManifestParser manifestParser, IJsonSerializer jsonSerializer, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) { - EditorsConfig = new GridEditorsConfig(appCaches, hostingEnvironment, manifestParser, jsonSerializer, logger); + EditorsConfig = new GridEditorsConfig(appCaches, hostingEnvironment, manifestParser, jsonSerializer, loggerFactory.CreateLogger()); } public IGridEditorsConfig EditorsConfig { get; } diff --git a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs index f0e4a2c71f..6ee72f1d04 100644 --- a/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs +++ b/src/Umbraco.Core/Configuration/Grid/GridEditorsConfig.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.IO; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.Manifest; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Serialization; @@ -17,9 +17,9 @@ namespace Umbraco.Core.Configuration.Grid private readonly IManifestParser _manifestParser; private readonly IJsonSerializer _jsonSerializer; - private readonly ILogger _logger; + private readonly ILogger _logger; - public GridEditorsConfig(AppCaches appCaches, IHostingEnvironment hostingEnvironment, IManifestParser manifestParser,IJsonSerializer jsonSerializer, ILogger logger) + public GridEditorsConfig(AppCaches appCaches, IHostingEnvironment hostingEnvironment, IManifestParser manifestParser,IJsonSerializer jsonSerializer, ILogger logger) { _appCaches = appCaches; _hostingEnvironment = hostingEnvironment; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/AbstractConfigCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/AbstractConfigCheck.cs index bebde2f99d..f3452131f0 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/AbstractConfigCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/AbstractConfigCheck.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -15,7 +16,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Config private readonly ConfigurationService _configurationService; protected ILocalizedTextService TextService { get; } - protected ILogger Logger { get; } + protected ILoggerFactory LoggerFactory { get; } /// /// Gets the config file path. @@ -55,12 +56,12 @@ namespace Umbraco.Web.HealthCheck.Checks.Config get { return false; } } - protected AbstractConfigCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) + protected AbstractConfigCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) { _hostingEnvironment = hostingEnvironment; TextService = textService; - Logger = logger; - _configurationService = new ConfigurationService(AbsoluteFilePath, XPath, textService, logger); + LoggerFactory = loggerFactory; + _configurationService = new ConfigurationService(AbsoluteFilePath, XPath, textService, loggerFactory.CreateLogger()); } /// diff --git a/src/Umbraco.Core/Configuration/HealthChecks/CompilationDebugCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/CompilationDebugCheck.cs index fe06ccc6f0..b400093a34 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/CompilationDebugCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/CompilationDebugCheck.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -11,8 +11,8 @@ namespace Umbraco.Web.HealthCheck.Checks.Config Group = "Live Environment")] public class CompilationDebugCheck : AbstractConfigCheck { - public CompilationDebugCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) - : base(textService, hostingEnvironment, logger) + public CompilationDebugCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) + : base(textService, hostingEnvironment, loggerFactory) { } public override string FilePath => "~/Web.config"; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs index 557383a8de..396d55b735 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/ConfigurationService.cs @@ -1,7 +1,7 @@ using System; using System.IO; using System.Xml; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -13,14 +13,14 @@ namespace Umbraco.Web.HealthCheck.Checks.Config private readonly string _configFilePath; private readonly string _xPath; private readonly ILocalizedTextService _textService; - private readonly ILogger _logger; + private readonly ILogger _logger; /// The absolute file location of the configuration file /// The XPath to select the value /// /// /// - public ConfigurationService(string configFilePath, string xPath, ILocalizedTextService textService, ILogger logger) + public ConfigurationService(string configFilePath, string xPath, ILocalizedTextService textService, ILogger logger) { _configFilePath = configFilePath; _xPath = xPath; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/CustomErrorsCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/CustomErrorsCheck.cs index 2338daf718..9b14847bdf 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/CustomErrorsCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/CustomErrorsCheck.cs @@ -1,8 +1,8 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -12,8 +12,8 @@ namespace Umbraco.Web.HealthCheck.Checks.Config Group = "Live Environment")] public class CustomErrorsCheck : AbstractConfigCheck { - public CustomErrorsCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) - : base(textService, hostingEnvironment, logger) + public CustomErrorsCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) + : base(textService, hostingEnvironment, loggerFactory) { } public override string FilePath => "~/Web.config"; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/MacroErrorsCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/MacroErrorsCheck.cs index 7e53b87b79..68e76dfc81 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/MacroErrorsCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/MacroErrorsCheck.cs @@ -1,8 +1,8 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -12,8 +12,8 @@ namespace Umbraco.Web.HealthCheck.Checks.Config Group = "Configuration")] public class MacroErrorsCheck : AbstractConfigCheck { - public MacroErrorsCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) - : base(textService, hostingEnvironment, logger) + public MacroErrorsCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) + : base(textService, hostingEnvironment, loggerFactory) { } public override string FilePath => "~/Config/umbracoSettings.config"; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/NotificationEmailCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/NotificationEmailCheck.cs index 9ba88c4a13..bac2cf1c3c 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/NotificationEmailCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/NotificationEmailCheck.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -13,8 +13,8 @@ namespace Umbraco.Web.HealthCheck.Checks.Config { private const string DefaultFromEmail = "your@email.here"; - public NotificationEmailCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) - : base(textService, hostingEnvironment, logger) + public NotificationEmailCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) + : base(textService, hostingEnvironment, loggerFactory) { } public override string FilePath => "~/Config/umbracoSettings.config"; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/TraceCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/TraceCheck.cs index 16702e3a06..a2c5a84c55 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/TraceCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/TraceCheck.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -12,8 +12,8 @@ namespace Umbraco.Web.HealthCheck.Checks.Config public class TraceCheck : AbstractConfigCheck { - public TraceCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILogger logger) - : base(textService, hostingEnvironment, logger) + public TraceCheck(ILocalizedTextService textService, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) + : base(textService, hostingEnvironment, loggerFactory) { } public override string FilePath => "~/Web.config"; diff --git a/src/Umbraco.Core/Configuration/HealthChecks/TrySkipIisCustomErrorsCheck.cs b/src/Umbraco.Core/Configuration/HealthChecks/TrySkipIisCustomErrorsCheck.cs index dc3abbc8a8..76269d961c 100644 --- a/src/Umbraco.Core/Configuration/HealthChecks/TrySkipIisCustomErrorsCheck.cs +++ b/src/Umbraco.Core/Configuration/HealthChecks/TrySkipIisCustomErrorsCheck.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Services; namespace Umbraco.Web.HealthCheck.Checks.Config @@ -15,9 +15,9 @@ namespace Umbraco.Web.HealthCheck.Checks.Config { private readonly Version _iisVersion; - public TrySkipIisCustomErrorsCheck(ILocalizedTextService textService, ILogger logger, + public TrySkipIisCustomErrorsCheck(ILocalizedTextService textService, ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment) - : base(textService, hostingEnvironment, logger) + : base(textService, hostingEnvironment, loggerFactory) { _iisVersion = hostingEnvironment.IISVersion; } diff --git a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs index b4c20ea519..7884126dc8 100644 --- a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs +++ b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollection.cs @@ -1,19 +1,19 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.Models.ContentEditing; -using Umbraco.Core.Logging; using Umbraco.Core.Models.Membership; namespace Umbraco.Web.ContentApps { public class ContentAppFactoryCollection : BuilderCollectionBase { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; - public ContentAppFactoryCollection(IEnumerable items, ILogger logger, IUmbracoContextAccessor umbracoContextAccessor) + public ContentAppFactoryCollection(IEnumerable items, ILogger logger, IUmbracoContextAccessor umbracoContextAccessor) : base(items) { _logger = logger; diff --git a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollectionBuilder.cs b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollectionBuilder.cs index f3d3a149d5..0e2c8e2f55 100644 --- a/src/Umbraco.Core/ContentApps/ContentAppFactoryCollectionBuilder.cs +++ b/src/Umbraco.Core/ContentApps/ContentAppFactoryCollectionBuilder.cs @@ -1,9 +1,9 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Composing; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Manifest; using Umbraco.Core.Models.ContentEditing; using Umbraco.Core.Models.Identity; @@ -17,10 +17,10 @@ namespace Umbraco.Web.ContentApps // need to inject dependencies in the collection, so override creation public override ContentAppFactoryCollection CreateCollection(IFactory factory) { - // get the logger just-in-time - see note below for manifest parser - var logger = factory.GetInstance(); + // get the logger factory just-in-time - see note below for manifest parser + var loggerFactory = factory.GetInstance(); var umbracoContextAccessor = factory.GetInstance(); - return new ContentAppFactoryCollection(CreateItems(factory), logger, umbracoContextAccessor); + return new ContentAppFactoryCollection(CreateItems(factory), loggerFactory.CreateLogger(), umbracoContextAccessor); } protected override IEnumerable CreateItems(IFactory factory) diff --git a/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs b/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs index 7f85d326df..094a28552a 100644 --- a/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs +++ b/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs @@ -2,11 +2,11 @@ using System.Collections.Generic; using System.Net; using System.Security.Cryptography.X509Certificates; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Configuration; using Umbraco.Core.IO; using Umbraco.Core.Services; -using Umbraco.Core.Logging; using Umbraco.Web.HealthCheck.Checks.Config; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; @@ -23,17 +23,17 @@ namespace Umbraco.Web.HealthCheck.Checks.Security private readonly ILocalizedTextService _textService; private readonly GlobalSettings _globalSettings; private readonly IIOHelper _ioHelper; - private readonly ILogger _logger; + private readonly LoggerFactory _loggerFactory; private readonly IRequestAccessor _requestAccessor; private const string FixHttpsSettingAction = "fixHttpsSetting"; - public HttpsCheck(ILocalizedTextService textService, IOptions globalSettings, IIOHelper ioHelper, ILogger logger, IRequestAccessor requestAccessor) + public HttpsCheck(ILocalizedTextService textService, IOptions globalSettings, IIOHelper ioHelper, LoggerFactory loggerFactory, IRequestAccessor requestAccessor) { _textService = textService; _globalSettings = globalSettings.Value; _ioHelper = ioHelper; - _logger = logger; + _loggerFactory = loggerFactory; _requestAccessor = requestAccessor; } @@ -190,7 +190,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Security { var configFile = _ioHelper.MapPath("~/Web.config"); const string xPath = "/configuration/appSettings/add[@key='Umbraco.Core.UseHttps']/@value"; - var configurationService = new ConfigurationService(configFile, xPath, _textService, _logger); + var configurationService = new ConfigurationService(configFile, xPath, _textService, _loggerFactory.CreateLogger()); var updateConfigFile = configurationService.UpdateConfigFile("true"); if (updateConfigFile.Success) diff --git a/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs b/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs index d5010fc14d..cbb93aedb9 100644 --- a/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs +++ b/src/Umbraco.Core/Routing/ContentFinderByUrlAlias.cs @@ -1,7 +1,7 @@ using System; using System.Text; using System.Linq; -using Umbraco.Core.Logging; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Xml; @@ -20,13 +20,13 @@ namespace Umbraco.Web.Routing { private readonly IPublishedValueFallback _publishedValueFallback; private readonly IVariationContextAccessor _variationContextAccessor; - protected ILogger Logger { get; } + private readonly ILogger _logger; - public ContentFinderByUrlAlias(ILogger logger, IPublishedValueFallback publishedValueFallback, IVariationContextAccessor variationContextAccessor) + public ContentFinderByUrlAlias(ILogger logger, IPublishedValueFallback publishedValueFallback, IVariationContextAccessor variationContextAccessor) { _publishedValueFallback = publishedValueFallback; _variationContextAccessor = variationContextAccessor; - Logger = logger; + _logger = logger; } /// @@ -48,7 +48,7 @@ namespace Umbraco.Web.Routing if (node != null) { frequest.PublishedContent = node; - Logger.LogDebug("Path '{UriAbsolutePath}' is an alias for id={PublishedContentId}", frequest.Uri.AbsolutePath, frequest.PublishedContent.Id); + _logger.LogDebug("Path '{UriAbsolutePath}' is an alias for id={PublishedContentId}", frequest.Uri.AbsolutePath, frequest.PublishedContent.Id); } } diff --git a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs index 66cdd61aa6..1dc48be96e 100644 --- a/src/Umbraco.Core/Routing/UrlProviderExtensions.cs +++ b/src/Umbraco.Core/Routing/UrlProviderExtensions.cs @@ -1,10 +1,10 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; namespace Umbraco.Web.Routing @@ -25,7 +25,7 @@ namespace Umbraco.Web.Routing ILocalizedTextService textService, IContentService contentService, IVariationContextAccessor variationContextAccessor, - ILogger logger, + ILogger logger, UriUtility uriUtility, IPublishedUrlProvider publishedUrlProvider) { diff --git a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs index 3c4a2ffbca..9fb28744ab 100644 --- a/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs +++ b/src/Umbraco.Tests.Integration/Implementations/TestHelper.cs @@ -23,7 +23,6 @@ using Umbraco.Web.Common.AspNetCore; using IHostingEnvironment = Umbraco.Core.Hosting.IHostingEnvironment; using Microsoft.Extensions.FileProviders; using Microsoft.Extensions.Logging; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration.Implementations { diff --git a/src/Umbraco.Tests.Integration/RuntimeTests.cs b/src/Umbraco.Tests.Integration/RuntimeTests.cs index 85c5e0e0b6..5c52afe746 100644 --- a/src/Umbraco.Tests.Integration/RuntimeTests.cs +++ b/src/Umbraco.Tests.Integration/RuntimeTests.cs @@ -19,7 +19,6 @@ using Umbraco.Web.Common.AspNetCore; using Umbraco.Extensions; using Umbraco.Tests.Common.Builders; using Microsoft.Extensions.Options; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration { @@ -210,9 +209,9 @@ namespace Umbraco.Tests.Integration public static bool IsInit { get; private set; } public static bool IsTerminated { get; private set; } - private readonly ILogger _logger; + private readonly ILogger _logger; - public MyComponent(ILogger logger) + public MyComponent(ILogger logger) { _logger = logger; } diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index 7d8965be87..3c141a1fb3 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -21,7 +21,6 @@ using Umbraco.Web.Compose; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.Scheduling; using Umbraco.Web.Search; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Integration.Testing { @@ -62,7 +61,6 @@ namespace Umbraco.Tests.Integration.Testing private ILocalizedTextService GetLocalizedTextService(IFactory factory) { var globalSettings = factory.GetInstance>(); - var logger = factory.GetInstance(); var loggerFactory = factory.GetInstance(); var appCaches = factory.GetInstance(); diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index fe9ece6da4..33c10190f9 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -7,7 +7,6 @@ using Umbraco.Core.Composing; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers.Stubs; using Umbraco.Web.BackOffice.Trees; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Composing { diff --git a/src/Umbraco.Tests/IO/FileSystemsTests.cs b/src/Umbraco.Tests/IO/FileSystemsTests.cs index 20f217c1d5..887afbe21f 100644 --- a/src/Umbraco.Tests/IO/FileSystemsTests.cs +++ b/src/Umbraco.Tests/IO/FileSystemsTests.cs @@ -18,7 +18,6 @@ using Umbraco.Tests.TestHelpers; using Umbraco.Core.Composing.CompositionExtensions; using Current = Umbraco.Web.Composing.Current; using FileSystems = Umbraco.Core.IO.FileSystems; -using ILogger = Umbraco.Core.Logging.ILogger; using Umbraco.Tests.Common.Builders; namespace Umbraco.Tests.IO @@ -36,9 +35,8 @@ namespace Umbraco.Tests.IO var composition = new Composition(_register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); - composition.Register(_ => Mock.Of()); composition.Register(_ => Mock.Of()); - composition.Register(new NullLoggerFactory()); + composition.Register(NullLoggerFactory.Instance); composition.Register(typeof(Microsoft.Extensions.Logging.ILogger<>), typeof(Logger<>)); composition.Register(_ => TestHelper.ShortStringHelper); composition.Register(_ => TestHelper.IOHelper); diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 8e08e57f80..8c31f3adaf 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -21,7 +21,7 @@ namespace Umbraco.Tests.Migrations [UmbracoTest(Database = UmbracoTestOptions.Database.NewEmptyPerTest)] public class AdvancedMigrationTests : TestWithDatabaseBase { - private ILoggerFactory _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + private ILoggerFactory _loggerFactory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()); [Test] public void CreateTableOfTDto() @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Migrations upgrader.Execute(ScopeProvider, builder, Mock.Of(), _loggerFactory.CreateLogger(), _loggerFactory); - var helper = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion); + var helper = new DatabaseSchemaCreator(scope.Database, LoggerFactory.CreateLogger(), LoggerFactory, UmbracoVersion); var exists = helper.TableExists("umbracoUser"); Assert.IsTrue(exists); diff --git a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs index 459406f01f..ae59e377d0 100644 --- a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs +++ b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs @@ -6,7 +6,6 @@ using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Composing.CompositionExtensions; using Umbraco.Core.Configuration.UmbracoSettings; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; @@ -26,7 +25,6 @@ namespace Umbraco.Tests.Models { base.Compose(); - Composition.Register(_ => Mock.Of()); Composition.ComposeFileSystems(); Composition.Register(_ => Mock.Of()); diff --git a/src/Umbraco.Tests/Models/ContentTests.cs b/src/Umbraco.Tests/Models/ContentTests.cs index 4166c5e7a2..737323b98e 100644 --- a/src/Umbraco.Tests/Models/ContentTests.cs +++ b/src/Umbraco.Tests/Models/ContentTests.cs @@ -27,7 +27,6 @@ using Umbraco.Tests.TestHelpers.Stubs; using Umbraco.Tests.Testing; using Umbraco.Web.PropertyEditors; using Umbraco.Tests.TestHelpers; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Models { @@ -40,7 +39,6 @@ namespace Umbraco.Tests.Models { base.Compose(); - Composition.Register(_ => Mock.Of()); Composition.ComposeFileSystems(); Composition.Register(_ => Mock.Of()); @@ -241,7 +239,7 @@ namespace Umbraco.Tests.Models private static IProfilingLogger GetTestProfilingLogger() { - var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); + var logger = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Models/VariationTests.cs b/src/Umbraco.Tests/Models/VariationTests.cs index 42e024de35..aa8d834529 100644 --- a/src/Umbraco.Tests/Models/VariationTests.cs +++ b/src/Umbraco.Tests/Models/VariationTests.cs @@ -10,7 +10,6 @@ using Umbraco.Core.PropertyEditors; using Umbraco.Core.Services; using Umbraco.Core.Strings; using Umbraco.Tests.TestHelpers; -using ILogger = Umbraco.Core.Logging.ILogger; using Current = Umbraco.Web.Composing.Current; namespace Umbraco.Tests.Models diff --git a/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs b/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs index c48973740a..7940831f34 100644 --- a/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs +++ b/src/Umbraco.Tests/Packaging/CreatedPackagesRepositoryTests.cs @@ -39,7 +39,7 @@ namespace Umbraco.Tests.Packaging ServiceContext.ContentService, ServiceContext.ContentTypeService, ServiceContext.DataTypeService, ServiceContext.FileService, ServiceContext.MacroService, ServiceContext.LocalizationService, HostingEnvironment, - Factory.GetInstance(), LoggerFactory_, + Factory.GetInstance(), LoggerFactory, UmbracoVersion, Microsoft.Extensions.Options.Options.Create(new GlobalSettingsBuilder().Build()), "createdPackages.config", diff --git a/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs b/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs index 11f3a8d181..0232550bb1 100644 --- a/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs +++ b/src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs @@ -19,7 +19,6 @@ using Umbraco.Tests.Testing; using Umbraco.Core.Composing.CompositionExtensions; using Umbraco.Core.Strings; using Umbraco.Tests.Common.Builders; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Packaging { diff --git a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs index b1fa926643..3eb06fff94 100644 --- a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs +++ b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs @@ -28,7 +28,7 @@ namespace Umbraco.Tests.Persistence.NPocoTests // create the db // prob not what we want, this is not a real database, but hey, the test is ignored anyways // we'll fix this when we have proper testing infrastructure - var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger()); + var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger()); //drop the table dbSqlServer.Execute("DROP TABLE [umbracoServer]"); diff --git a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs index 3a17ac5928..dbcbefa3e3 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs @@ -38,42 +38,42 @@ namespace Umbraco.Tests.Persistence.Repositories private DocumentRepository CreateRepository(IScopeAccessor scopeAccessor, out ContentTypeRepository contentTypeRepository) { - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), _globalSettings); - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), _globalSettings); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), _globalSettings); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, langRepository, ShortStringHelper); + var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), _globalSettings); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } private ContentTypeRepository CreateRepository(IScopeAccessor scopeAccessor) { - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), _globalSettings); - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), _globalSettings); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); + var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, langRepository, ShortStringHelper); return contentTypeRepository; } private MediaTypeRepository CreateMediaTypeRepository(IScopeAccessor scopeAccessor) { - var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), _globalSettings); - var contentTypeRepository = new MediaTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, langRepository, ShortStringHelper); + var langRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), _globalSettings); + var contentTypeRepository = new MediaTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, langRepository, ShortStringHelper); return contentTypeRepository; } private EntityContainerRepository CreateContainerRepository(IScopeAccessor scopeAccessor, Guid containerEntityType) { - return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), containerEntityType); + return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), containerEntityType); } // TODO: Add test to verify SetDefaultTemplates updates both AllowedTemplates and DefaultTemplate(id). @@ -82,10 +82,10 @@ namespace Umbraco.Tests.Persistence.Repositories public void Maps_Templates_Correctly() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var templateRepo = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepo = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var repository = CreateRepository((IScopeAccessor) provider); var templates = new[] { @@ -117,7 +117,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -163,7 +163,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -182,7 +182,7 @@ namespace Umbraco.Tests.Persistence.Repositories { EntityContainer container1, container2, container3; - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -212,7 +212,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.DocumentTypeContainer); @@ -232,7 +232,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.MediaTypeContainer); @@ -253,7 +253,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository((IScopeAccessor) provider, Constants.ObjectTypes.MediaTypeContainer); @@ -284,7 +284,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -319,7 +319,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ContentTypeRepository_After_Model_Mapping() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -371,7 +371,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -447,7 +447,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ContentTypeRepository_After_Model_Mapping() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -510,7 +510,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -534,7 +534,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_With_Heirarchy_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -566,7 +566,7 @@ namespace Umbraco.Tests.Persistence.Repositories IContentType contentType; // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -601,7 +601,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -619,7 +619,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -641,7 +641,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Missing_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -657,7 +657,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -679,7 +679,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_By_Guid_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -702,7 +702,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_ContentTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -719,7 +719,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Update_ContentType_With_PropertyType_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -743,7 +743,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_SimpleTextpage() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -761,7 +761,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_Textpage() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -779,7 +779,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyType_With_No_Group() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -820,7 +820,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_AllowedChildContentTypes_On_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor) provider); @@ -854,7 +854,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Removal_Of_Used_PropertyType_From_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -881,7 +881,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Addition_Of_PropertyType_After_ContentType_Is_Used() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -909,7 +909,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Usage_Of_New_PropertyType_On_Content() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -943,7 +943,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_That_A_Combination_Of_Adding_And_Deleting_PropertyTypes_Doesnt_Cause_Issues_For_Content_And_ContentType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; @@ -983,7 +983,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_Content_Type_Has_Content_Nodes() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository repository; diff --git a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs index 576269bc8b..ec7416d4cd 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs @@ -26,20 +26,20 @@ namespace Umbraco.Tests.Persistence.Repositories private EntityContainerRepository CreateContainerRepository(IScopeAccessor scopeAccessor) { - return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Constants.ObjectTypes.DataTypeContainer); + return new EntityContainerRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Constants.ObjectTypes.DataTypeContainer); } [Test] public void Can_Find_Usages() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var dtRepo = CreateRepository(); - IDataType dataType1 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt1" }; + IDataType dataType1 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt1" }; dtRepo.Save(dataType1); - IDataType dataType2 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt2" }; + IDataType dataType2 = new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) { Name = "dt2" }; dtRepo.Save(dataType2); var ctRepo = Factory.GetInstance(); @@ -94,7 +94,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -107,14 +107,14 @@ namespace Umbraco.Tests.Persistence.Repositories var container2 = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah2", ParentId = container1.Id }; containerRepository.Save(container2); - var dataType = (IDataType) new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container2.Id) + var dataType = (IDataType) new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container2.Id) { Name = "dt1" }; repository.Save(dataType); //create a - var dataType2 = (IDataType)new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), dataType.Id) + var dataType2 = (IDataType)new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), dataType.Id) { Name = "dt2" }; @@ -137,7 +137,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -156,7 +156,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -176,7 +176,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Data_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -186,7 +186,7 @@ namespace Umbraco.Tests.Persistence.Repositories var container = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah" }; containerRepository.Save(container); - var dataTypeDefinition = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; + var dataTypeDefinition = new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; repository.Save(dataTypeDefinition); Assert.AreEqual(container.Id, dataTypeDefinition.ParentId); @@ -196,7 +196,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Data_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var accessor = (IScopeAccessor) provider; using (provider.CreateScope()) @@ -206,7 +206,7 @@ namespace Umbraco.Tests.Persistence.Repositories var container = new EntityContainer(Constants.ObjectTypes.DataType) { Name = "blah" }; containerRepository.Save(container); - IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; + IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper), container.Id) { Name = "test" }; repository.Save(dataType); // Act @@ -224,12 +224,12 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(); - IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) {Name = "test"}; + IDataType dataType = new DataType(new RadioButtonsPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper)) {Name = "test"}; repository.Save(dataType); @@ -249,7 +249,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Get_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { @@ -267,7 +267,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetAll_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { @@ -287,7 +287,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetAll_With_Params_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { @@ -307,7 +307,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_GetByQuery_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { @@ -327,7 +327,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Count_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { @@ -345,12 +345,12 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Add_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper)) + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", @@ -383,12 +383,12 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Update_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new IntegerPropertyEditor(LoggerFactory_, DataTypeService, LocalizationService, ShortStringHelper, LocalizedTextService)) + var dataTypeDefinition = new DataType(new IntegerPropertyEditor(LoggerFactory, DataTypeService, LocalizationService, ShortStringHelper, LocalizedTextService)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", @@ -399,7 +399,7 @@ namespace Umbraco.Tests.Persistence.Repositories // Act var definition = repository.Get(dataTypeDefinition.Id); definition.Name = "AgeDataType Updated"; - definition.Editor = new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper); //change + definition.Editor = new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizedTextService, LocalizationService, ShortStringHelper); //change repository.Save(definition); var definitionUpdated = repository.Get(dataTypeDefinition.Id); @@ -414,12 +414,12 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Delete_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(); - var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { DatabaseType = ValueStorageType.Integer, Name = "AgeDataType", @@ -444,7 +444,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Exists_On_DataTypeDefinitionRepository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { diff --git a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs index af3b6fccbe..3b9cf447a5 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DocumentRepositoryTest.cs @@ -52,7 +52,7 @@ namespace Umbraco.Tests.Persistence.Repositories TemplateRepository tr; var ctRepository = CreateRepository(scopeAccessor, out contentTypeRepository, out tr); var editors = new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty())); - dtdRepository = new DataTypeRepository(scopeAccessor, appCaches, new Lazy(() => editors), LoggerFactory_.CreateLogger(), LoggerFactory_); + dtdRepository = new DataTypeRepository(scopeAccessor, appCaches, new Lazy(() => editors), LoggerFactory.CreateLogger(), LoggerFactory); return ctRepository; } @@ -68,17 +68,17 @@ namespace Umbraco.Tests.Persistence.Repositories appCaches = appCaches ?? AppCaches; - templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger()); + templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, appCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), globalSettings); - contentTypeRepository = new ContentTypeRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), globalSettings); + contentTypeRepository = new ContentTypeRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, + var repository = new DocumentRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } @@ -91,7 +91,7 @@ namespace Umbraco.Tests.Persistence.Repositories new DictionaryAppCache(), new IsolatedCaches(t => new ObjectCacheAppCache())); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, appCaches: realCache); @@ -132,7 +132,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void CreateVersions() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository _); @@ -306,7 +306,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void PropertyDataAssignedCorrectly() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository _); @@ -358,12 +358,12 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void PropertyValuesWithSpecialTypes() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out DataTypeRepository dataTypeDefinitionRepository); - var editor = new DecimalPropertyEditor(LoggerFactory_, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); + var editor = new DecimalPropertyEditor(LoggerFactory, DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper); var dtd = new DataType(editor) { Name = "test", DatabaseType = ValueStorageType.Decimal }; dataTypeDefinitionRepository.Save(dtd); @@ -405,7 +405,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -426,7 +426,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContentWithDefaultTemplate() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository, out TemplateRepository templateRepository); @@ -461,7 +461,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveContentWithAtSignInName() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -494,7 +494,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveContentMultiple() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -523,7 +523,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetContentIsNotDirty() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -538,7 +538,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void UpdateContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -567,7 +567,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void UpdateContentWithNullTemplate() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -586,7 +586,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void DeleteContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out var contentTypeRepository); @@ -610,7 +610,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -631,7 +631,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -648,7 +648,7 @@ namespace Umbraco.Tests.Persistence.Repositories { IContent[] result; - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -761,7 +761,7 @@ namespace Umbraco.Tests.Persistence.Repositories Assert.IsTrue(child1.Name.StartsWith("VAR")); Assert.IsTrue(child1.GetCultureName("en-US").StartsWith("VAR")); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -808,7 +808,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_CustomPropertySort() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -840,7 +840,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FirstPage() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -869,7 +869,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_SecondPage() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -886,7 +886,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_SinglePage() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -903,7 +903,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_DescendingOrder() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -920,7 +920,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FilterMatchingSome() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -939,7 +939,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetPagedResultsByQuery_FilterMatchingAll() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -958,7 +958,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllContentByIds() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -975,7 +975,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -1001,7 +1001,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void ExistContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -1015,7 +1015,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void CountContent() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); @@ -1030,7 +1030,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryContentByUniqueId() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository((IScopeAccessor)provider, out _); diff --git a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs index e65a2f5407..34fc70ab8d 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/DomainRepositoryTest.cs @@ -26,24 +26,24 @@ namespace Umbraco.Tests.Persistence.Repositories var globalSettings = Microsoft.Extensions.Options.Options.Create(new GlobalSettingsBuilder().Build()); var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var templateRepository = new TemplateRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - languageRepository = new LanguageRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), globalSettings); - contentTypeRepository = new ContentTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); + languageRepository = new LanguageRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), globalSettings); + contentTypeRepository = new ContentTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - documentRepository = new DocumentRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); - var domainRepository = new DomainRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory_.CreateLogger()); + documentRepository = new DocumentRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var domainRepository = new DomainRepository(accessor, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger()); return domainRepository; } private int CreateTestData(string isoName, out ContentType ct) { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -71,7 +71,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -105,7 +105,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -137,7 +137,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -164,7 +164,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -195,7 +195,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId1 = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -243,7 +243,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -273,7 +273,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -303,7 +303,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -333,7 +333,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -365,7 +365,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -399,7 +399,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; @@ -448,7 +448,7 @@ namespace Umbraco.Tests.Persistence.Repositories ContentType ct; var contentId = CreateTestData("en-AU", out ct); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { DocumentRepository documentRepo; diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs index 50fa257b60..bc0f54c21d 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs @@ -37,18 +37,18 @@ namespace Umbraco.Tests.Persistence.Repositories appCaches = appCaches ?? AppCaches; var scopeAccessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, appCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - mediaTypeRepository = new MediaTypeRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger()); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + mediaTypeRepository = new MediaTypeRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var tagRepository = new TagRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger()); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(scopeAccessor, appCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(scopeAccessor, appCaches, LoggerFactory.CreateLogger(), LoggerFactory, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } @@ -62,7 +62,7 @@ namespace Umbraco.Tests.Persistence.Repositories new DictionaryAppCache(), new IsolatedCaches(t => new ObjectCacheAppCache())); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out mediaTypeRepository, appCaches: realCache); @@ -104,7 +104,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -131,7 +131,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SaveMediaMultiple() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -160,7 +160,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetMediaIsNotDirty() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -179,7 +179,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void UpdateMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -202,7 +202,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void DeleteMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -225,7 +225,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -252,7 +252,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void QueryMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -272,7 +272,7 @@ namespace Umbraco.Tests.Persistence.Repositories { // Arrange var folderMediaType = ServiceContext.MediaTypeService.Get(1031); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -303,7 +303,7 @@ namespace Umbraco.Tests.Persistence.Repositories // Arrange var folderMediaType = ServiceContext.MediaTypeService.Get(1031); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -329,7 +329,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FirstPage() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out MediaTypeRepository mediaTypeRepository); @@ -350,7 +350,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_SecondPage() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -372,7 +372,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_SinglePage() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -394,7 +394,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_DescendingOrder() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -416,7 +416,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_AlternateOrder() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -437,7 +437,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FilterMatchingSome() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -460,7 +460,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetPagedResultsByQuery_FilterMatchingAll() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out _); @@ -482,7 +482,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetAllMediaByIds() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -502,7 +502,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void GetAllMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -532,7 +532,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void ExistMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; @@ -554,7 +554,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void CountMedia() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MediaTypeRepository mediaTypeRepository; diff --git a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs index 7d11e30585..866cb4f3ed 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs @@ -24,22 +24,22 @@ namespace Umbraco.Tests.Persistence.Repositories { var cacheHelper = AppCaches.Disabled; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository((IScopeAccessor)provider, cacheHelper, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository((IScopeAccessor)provider, cacheHelper, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository((IScopeAccessor)provider, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - return new MediaTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + return new MediaTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); } private EntityContainerRepository CreateContainerRepository(IScopeProvider provider) { - return new EntityContainerRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Constants.ObjectTypes.MediaTypeContainer); + return new EntityContainerRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), Constants.ObjectTypes.MediaTypeContainer); } [Test] public void Can_Move() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -86,7 +86,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -104,7 +104,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -126,7 +126,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -148,7 +148,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Delete_Container_Containing_Media_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var containerRepository = CreateContainerRepository(provider); @@ -180,7 +180,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -208,7 +208,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -246,7 +246,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -271,7 +271,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -290,7 +290,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_By_Guid_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -311,7 +311,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -333,7 +333,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_By_Guid_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -359,7 +359,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_MediaTypeRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -376,7 +376,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Update_MediaType_With_PropertyType_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -404,7 +404,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_Video_MediaType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -426,7 +426,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Verify_PropertyTypes_On_File_MediaType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs index 6299358a36..a60d966832 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs @@ -35,23 +35,23 @@ namespace Umbraco.Tests.Persistence.Repositories var globalSettings = new GlobalSettingsBuilder().Build(); var templateRepository = Mock.Of(); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - memberTypeRepository = new MemberTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - memberGroupRepository = new MemberGroupRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); - var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + memberTypeRepository = new MemberTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + memberGroupRepository = new MemberGroupRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); + var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MemberRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), memberTypeRepository, memberGroupRepository, tagRepo, Mock.Of(), relationRepository, relationTypeRepository, PasswordHasher, propertyEditors, dataValueReferences, DataTypeService); + var repository = new MemberRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), memberTypeRepository, memberGroupRepository, tagRepo, Mock.Of(), relationRepository, relationTypeRepository, PasswordHasher, propertyEditors, dataValueReferences, DataTypeService); return repository; } [Test] public void GetMember() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -70,7 +70,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetMembers() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -93,7 +93,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void GetAllMembers() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -119,7 +119,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void QueryMember() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -142,7 +142,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void SaveMember() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -167,7 +167,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void MemberHasBuiltinProperties() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -199,7 +199,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SavingPreservesPassword() { IMember sut; - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -229,7 +229,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void SavingUpdatesNameAndEmail() { IMember sut; - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -259,7 +259,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void QueryMember_WithSubQuery() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var query = provider.SqlContext.Query().Where(x => ((Member) x).LongStringPropertyValue.Contains("1095") && @@ -279,7 +279,7 @@ namespace Umbraco.Tests.Persistence.Repositories private IMember CreateTestMember(IMemberType memberType = null, string name = null, string email = null, string password = null, string username = null, Guid? key = null) { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -303,7 +303,7 @@ namespace Umbraco.Tests.Persistence.Repositories private IMemberType CreateTestMemberType(string alias = null) { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { MemberTypeRepository memberTypeRepository; @@ -319,7 +319,7 @@ namespace Umbraco.Tests.Persistence.Repositories private Sql GetBaseQuery(bool isCount) { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); if (isCount) { var sqlCount = provider.SqlContext.Sql() @@ -359,7 +359,7 @@ namespace Umbraco.Tests.Persistence.Repositories private Sql GetSubquery() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); var sql = provider.SqlContext.Sql(); sql.Select("umbracoNode.id") .From() diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs index 28ba83440f..e79f483ad3 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs @@ -33,7 +33,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Persist_Member_Type() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -59,7 +59,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Persist_Member_Type_Same_Property_Keys() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -85,7 +85,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Cannot_Persist_Member_Type_Without_Alias() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -101,7 +101,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Member_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -126,7 +126,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Member_Types_By_Guid_Ids() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -151,7 +151,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Types_By_Guid_Id() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -178,7 +178,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_Members_When_No_Properties_Assigned() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -205,7 +205,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Type_By_Id() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -221,7 +221,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Member_Type_By_Guid_Id() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -240,7 +240,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -285,7 +285,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -316,7 +316,7 @@ namespace Umbraco.Tests.Persistence.Repositories { var stubs = ConventionsHelper.GetStandardPropertyTypeStubs(ShortStringHelper); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (provider.CreateScope()) { var repository = CreateRepository(provider); @@ -350,7 +350,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Built_In_Member_Type_Properties_Are_Not_Reused_For_Different_Member_Types() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); @@ -372,7 +372,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Delete_MemberType() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs index e50de3190b..3c1a003a15 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PartialViewRepositoryTests.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Persistence.Repositories { base.SetUp(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), Constants.SystemDirectories.MvcViews + "/Partials/"); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews + "/Partials/"); } protected override void Compose() @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Persistence.Repositories var fileSystems = Mock.Of(); Mock.Get(fileSystems).Setup(x => x.PartialViewsFileSystem).Returns(_fileSystem); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = new PartialViewRepository(fileSystems, IOHelper); diff --git a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs index 24f8b3793f..e2162d6238 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/PublicAccessRepositoryTest.cs @@ -27,10 +27,10 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -56,11 +56,11 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -96,11 +96,11 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { scope.Database.AsUmbracoDatabase().EnableSqlTrace = true; - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -142,10 +142,10 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -180,10 +180,10 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -208,10 +208,10 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(30).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var allEntries = new List(); for (int i = 0; i < 10; i++) @@ -272,10 +272,10 @@ namespace Umbraco.Tests.Persistence.Repositories { var content = CreateTestData(3).ToArray(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { - var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory_.CreateLogger()); + var repo = new PublicAccessRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); var entry1 = new PublicAccessEntry(content[0], content[1], content[2], new[] { @@ -309,23 +309,23 @@ namespace Umbraco.Tests.Persistence.Repositories { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); + var templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } private IEnumerable CreateTestData(int count) { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { ContentTypeRepository ctRepo; diff --git a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs index fc44169a83..9cdd0d7c4a 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/RelationRepositoryTest.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -64,7 +64,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -89,7 +89,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -111,7 +111,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -133,7 +133,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -154,7 +154,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_With_Params_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -176,7 +176,7 @@ namespace Umbraco.Tests.Persistence.Repositories { CreateTestDataForPagingTests(out var createdContent, out var createdMembers, out var createdMedia); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -222,7 +222,7 @@ namespace Umbraco.Tests.Persistence.Repositories var relType = ServiceContext.RelationService.GetRelationTypeByAlias(Constants.Conventions.RelationTypes.RelatedMediaAlias); ServiceContext.RelationService.Relate(media.Id, media.Id, relType); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -244,7 +244,7 @@ namespace Umbraco.Tests.Persistence.Repositories { CreateTestDataForPagingTests(out var createdContent, out var createdMembers, out var createdMedia); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateRepository(provider, out var relationTypeRepository); @@ -325,7 +325,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -345,7 +345,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Count_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -364,7 +364,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetByQuery_On_RelationRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -386,7 +386,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Delete_Content_And_Verify_Relation_Is_Removed() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { RelationTypeRepository repositoryType; @@ -424,7 +424,7 @@ namespace Umbraco.Tests.Persistence.Repositories Constants.ObjectTypes.DocumentType, new Guid("A2CB7800-F571-4787-9638-BC48539A0EFB")); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var accessor = (IScopeAccessor)provider; diff --git a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs index d0ab678c1e..5a4a96f308 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs @@ -33,7 +33,7 @@ namespace Umbraco.Tests.Persistence.Repositories base.SetUp(); _fileSystems = Mock.Of(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), new GlobalSettings().UmbracoScriptsPath); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory.CreateLogger(), new GlobalSettings().UmbracoScriptsPath); Mock.Get(_fileSystems).Setup(x => x.ScriptsFileSystem).Returns(_fileSystem); using (var stream = CreateStream("Umbraco.Sys.registerNamespace(\"Umbraco.Utils\");")) { @@ -58,7 +58,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Instantiate_Repository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { // Act @@ -73,7 +73,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Add_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -92,7 +92,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Update_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -118,7 +118,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Delete_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -138,7 +138,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Get_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -157,7 +157,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -185,7 +185,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_GetAll_With_Params_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -213,7 +213,7 @@ namespace Umbraco.Tests.Persistence.Repositories public void Can_Perform_Exists_On_ScriptRepository() { // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -232,7 +232,7 @@ namespace Umbraco.Tests.Persistence.Repositories const string content = "/// "; // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); @@ -265,7 +265,7 @@ namespace Umbraco.Tests.Persistence.Repositories { // unless noted otherwise, no changes / 7.2.8 - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var repository = CreateRepository(); diff --git a/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs index 196e959ea3..ea25c25435 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs @@ -32,7 +32,7 @@ namespace Umbraco.Tests.Persistence.Repositories base.SetUp(); _fileSystems = Mock.Of(); - _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory_.CreateLogger(), new GlobalSettings().UmbracoCssPath); + _fileSystem = new PhysicalFileSystem(IOHelper, HostingEnvironment, LoggerFactory.CreateLogger(), new GlobalSettings().UmbracoCssPath); Mock.Get(_fileSystems).Setup(x => x.StylesheetsFileSystem).Returns(_fileSystem); var stream = CreateStream("body {background:#EE7600; color:#FFF;}"); _fileSystem.AddFile("styles.css", stream); diff --git a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs index fe7259b777..d6b31b3789 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/TagRepositoryTest.cs @@ -25,7 +25,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Add_On_Repository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var repository = CreateRepository(provider); @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Perform_Multiple_Adds_On_Repository() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var repository = CreateRepository(provider); @@ -75,7 +75,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Create_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -105,7 +105,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Append_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -144,7 +144,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Replace_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -186,7 +186,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Merge_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -226,7 +226,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Clear_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -262,7 +262,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Remove_Specific_Tags_From_Property() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -306,7 +306,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_By_Id() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -350,7 +350,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_By_Key() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -395,7 +395,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -430,7 +430,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_All_With_Ids() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -470,7 +470,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Content_For_Group() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -514,7 +514,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_By_Id() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -558,7 +558,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_By_Key() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -602,7 +602,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Property_For_Group() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -647,7 +647,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Entity_Type() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -704,7 +704,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tags_For_Entity_Type_For_Group() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -756,7 +756,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Cascade_Deletes_Tag_Relations() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -792,7 +792,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tagged_Entities_For_Tag_Group() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -872,7 +872,7 @@ namespace Umbraco.Tests.Persistence.Repositories [Test] public void Can_Get_Tagged_Entities_For_Tag() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (ScopeProvider.CreateScope()) { var contentRepository = CreateDocumentRepository(provider, out var contentTypeRepository); @@ -951,24 +951,24 @@ namespace Umbraco.Tests.Persistence.Repositories private TagRepository CreateRepository(IScopeProvider provider) { - return new TagRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + return new TagRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger()); } private DocumentRepository CreateDocumentRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository) { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } @@ -976,18 +976,18 @@ namespace Umbraco.Tests.Persistence.Repositories { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches.Disabled, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } } diff --git a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs index c8f5314de7..2778db2417 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs @@ -30,18 +30,18 @@ namespace Umbraco.Tests.Persistence.Repositories { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); mediaTypeRepository = new MediaTypeRepository(accessor, AppCaches, Mock.Of>(), commonRepository, languageRepository, ShortStringHelper); var tagRepository = new TagRepository(accessor, AppCaches, Mock.Of>()); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var mediaUrlGenerators = new MediaUrlGeneratorCollection(Enumerable.Empty()); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new MediaRepository(accessor, AppCaches, Mock.Of>(), LoggerFactory_, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); + var repository = new MediaRepository(accessor, AppCaches, Mock.Of>(), LoggerFactory, mediaTypeRepository, tagRepository, Mock.Of(), relationRepository, relationTypeRepository, propertyEditors, mediaUrlGenerators, dataValueReferences, DataTypeService); return repository; } @@ -55,17 +55,17 @@ namespace Umbraco.Tests.Persistence.Repositories { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory_.CreateLogger()); + templateRepository = new TemplateRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } @@ -73,14 +73,14 @@ namespace Umbraco.Tests.Persistence.Repositories { var accessor = (IScopeAccessor) provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var repository = new UserRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Mappers, Microsoft.Extensions.Options.Options.Create(globalSettings), Microsoft.Extensions.Options.Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); + var repository = new UserRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Mappers, Microsoft.Extensions.Options.Options.Create(globalSettings), Microsoft.Extensions.Options.Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); return repository; } private UserGroupRepository CreateUserGroupRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - return new UserGroupRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, ShortStringHelper); + return new UserGroupRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, ShortStringHelper); } [Test] @@ -90,7 +90,7 @@ namespace Umbraco.Tests.Persistence.Repositories var mt = MockedContentTypes.CreateSimpleMediaType("testmedia", "TestMedia"); // Arrange - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var userRepository = CreateRepository(provider); diff --git a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs index 7c5b174208..fe4a1581d1 100644 --- a/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs +++ b/src/Umbraco.Tests/Persistence/SchemaValidationTest.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Persistence using (var scope = ScopeProvider.CreateScope()) { - var schema = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion); + var schema = new DatabaseSchemaCreator(scope.Database, LoggerFactory.CreateLogger(), LoggerFactory, UmbracoVersion); result = schema.ValidateSchema( //TODO: When we remove the xml cache from tests we can remove this too DatabaseSchemaCreator.OrderedTables.Concat(new []{typeof(ContentXmlDto), typeof(PreviewXmlDto)})); diff --git a/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs b/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs index 5e2cf0b82a..68c11e221d 100644 --- a/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs +++ b/src/Umbraco.Tests/Persistence/UnitOfWorkTests.cs @@ -13,7 +13,7 @@ namespace Umbraco.Tests.Persistence [Test] public void ReadLockNonExisting() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); Assert.Throws(() => { using (var scope = provider.CreateScope()) @@ -27,7 +27,7 @@ namespace Umbraco.Tests.Persistence [Test] public void ReadLockExisting() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { scope.ReadLock(Constants.Locks.Servers); @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Persistence [Test] public void WriteLockNonExisting() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); Assert.Throws(() => { using (var scope = provider.CreateScope()) @@ -52,7 +52,7 @@ namespace Umbraco.Tests.Persistence [Test] public void WriteLockExisting() { - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { scope.WriteLock(Constants.Locks.Servers); diff --git a/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs b/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs index feabd09571..2f019c8b52 100644 --- a/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs +++ b/src/Umbraco.Tests/PropertyEditors/ColorListValidatorTest.cs @@ -8,7 +8,6 @@ using NUnit.Framework.Internal; using Umbraco.Core.Services; using Umbraco.Tests.TestHelpers; using Umbraco.Web.PropertyEditors; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PropertyEditors { diff --git a/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs b/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs index e5ad16795c..09570877e6 100644 --- a/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs +++ b/src/Umbraco.Tests/PropertyEditors/EnsureUniqueValuesValidatorTest.cs @@ -7,7 +7,6 @@ using Newtonsoft.Json.Linq; using Umbraco.Core.Services; using Umbraco.Tests.TestHelpers; using Umbraco.Web.PropertyEditors; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PropertyEditors { diff --git a/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs b/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs index 1e0519d2ef..5b195a90b9 100644 --- a/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs +++ b/src/Umbraco.Tests/PropertyEditors/MultiValuePropertyEditorTests.cs @@ -90,7 +90,6 @@ namespace Umbraco.Tests.PropertyEditors { // editor wants ApplicationContext.Current.Services.TextService // (that should be fixed with proper injection) - var logger = Mock.Of(); var textService = new Mock(); textService.Setup(x => x.Localize(It.IsAny(), It.IsAny(), It.IsAny>())).Returns("blah"); //var appContext = new ApplicationContext( diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs index 69ba0f7b2d..90af07a521 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs @@ -31,7 +31,6 @@ using Umbraco.Web.PublishedCache; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.PublishedCache.NuCache.DataSource; using Current = Umbraco.Web.Composing.Current; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PublishedContent { diff --git a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs index 8b9f20db88..fa839b00e5 100644 --- a/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs +++ b/src/Umbraco.Tests/PublishedContent/NuCacheTests.cs @@ -29,7 +29,6 @@ using Umbraco.Web.PublishedCache; using Umbraco.Web.PublishedCache.NuCache; using Umbraco.Web.PublishedCache.NuCache.DataSource; using Current = Umbraco.Web.Composing.Current; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.PublishedContent { diff --git a/src/Umbraco.Tests/Routing/ContentFinderByAliasTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByAliasTests.cs index 09b25a4156..3e3f6163bf 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByAliasTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByAliasTests.cs @@ -2,6 +2,7 @@ using System.Linq; using Moq; using NUnit.Framework; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; @@ -50,7 +51,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); var lookup = - new ContentFinderByUrlAlias(Logger, Mock.Of(), VariationContextAccessor); + new ContentFinderByUrlAlias(LoggerFactory.CreateLogger(), Mock.Of(), VariationContextAccessor); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByAliasWithDomainsTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByAliasWithDomainsTests.cs index 6dca84a85a..9af04cfb18 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByAliasWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByAliasWithDomainsTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -64,7 +65,7 @@ namespace Umbraco.Tests.Routing if (expectedNode > 0) Assert.AreEqual(expectedCulture, request.Culture.Name); - var finder = new ContentFinderByUrlAlias(Logger, Mock.Of(), VariationContextAccessor); + var finder = new ContentFinderByUrlAlias(LoggerFactory.CreateLogger(), Mock.Of(), VariationContextAccessor); var result = finder.TryFindContent(request); if (expectedNode > 0) diff --git a/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs index 6e588ae066..45b7a8edc4 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs @@ -20,7 +20,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); var webRoutingSettings = new WebRoutingSettingsBuilder().Build(); - var lookup = new ContentFinderByIdPath(Microsoft.Extensions.Options.Options.Create(webRoutingSettings), LoggerFactory_.CreateLogger(), Factory.GetInstance()); + var lookup = new ContentFinderByIdPath(Microsoft.Extensions.Options.Options.Create(webRoutingSettings), LoggerFactory.CreateLogger(), Factory.GetInstance()); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs index b7bf248c3f..cea8675c46 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); var webRoutingSettings = new WebRoutingSettingsBuilder().Build(); - var lookup = new ContentFinderByUrlAndTemplate(LoggerFactory_.CreateLogger(), ServiceContext.FileService, ServiceContext.ContentTypeService, Microsoft.Extensions.Options.Options.Create(webRoutingSettings)); + var lookup = new ContentFinderByUrlAndTemplate(LoggerFactory.CreateLogger(), ServiceContext.FileService, ServiceContext.ContentTypeService, Microsoft.Extensions.Options.Options.Create(webRoutingSettings)); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs index 8885780b93..d4bb1d067a 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs @@ -36,7 +36,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings, snapshotService: snapshotService); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); Assert.IsTrue(globalSettings.HideTopLevelNodeFromPath); @@ -70,7 +70,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); Assert.IsFalse(globalSettings.HideTopLevelNodeFromPath); @@ -94,7 +94,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext(urlString, globalSettings:globalSettings); var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); @@ -121,7 +121,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); frequest.Domain = new DomainAndUri(new Domain(1, "mysite", -1, CultureInfo.CurrentCulture, false), new Uri("http://mysite/")); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); @@ -149,7 +149,7 @@ namespace Umbraco.Tests.Routing var publishedRouter = CreatePublishedRouter(); var frequest = publishedRouter.CreateRequest(umbracoContext); frequest.Domain = new DomainAndUri(new Domain(1, "mysite/æøå", -1, CultureInfo.CurrentCulture, false), new Uri("http://mysite/æøå")); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); diff --git a/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs b/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs index 1c6464906a..2a7f78e36d 100644 --- a/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs @@ -138,7 +138,7 @@ namespace Umbraco.Tests.Routing // must lookup domain else lookup by url fails publishedRouter.FindDomain(frequest); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(expectedId, frequest.PublishedContent.Id); @@ -180,7 +180,7 @@ namespace Umbraco.Tests.Routing publishedRouter.FindDomain(frequest); Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(expectedId, frequest.PublishedContent.Id); diff --git a/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs b/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs index b213871c42..b77d3080bc 100644 --- a/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs +++ b/src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs @@ -280,7 +280,7 @@ namespace Umbraco.Tests.Routing Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var finder = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = finder.TryFindContent(frequest); Assert.IsTrue(result); @@ -327,7 +327,7 @@ namespace Umbraco.Tests.Routing publishedRouter.FindDomain(frequest); // find document - var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var finder = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = finder.TryFindContent(frequest); // apply wildcard domain @@ -382,7 +382,7 @@ namespace Umbraco.Tests.Routing Assert.AreEqual(expectedCulture, frequest.Culture.Name); - var finder = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var finder = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = finder.TryFindContent(frequest); Assert.IsTrue(result); diff --git a/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs b/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs index 9d608aa40c..4fc8e23d9d 100644 --- a/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs +++ b/src/Umbraco.Tests/Routing/GetContentUrlsTests.cs @@ -65,12 +65,12 @@ namespace Umbraco.Tests.Routing var umbContext = GetUmbracoContext("http://localhost:8000"); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); + contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory.CreateLogger()) })); var urls = content.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, VariationContextAccessor, - Logger, + LoggerFactory.CreateLogger(), UriUtility, PublishedUrlProvider).ToList(); @@ -92,7 +92,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(_requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -105,12 +105,12 @@ namespace Umbraco.Tests.Routing ); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders:new ContentFinderCollection(new[]{new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); + contentFinders:new ContentFinderCollection(new[]{new ContentFinderByUrl(LoggerFactory.CreateLogger()) })); var urls = content.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, VariationContextAccessor, - Logger, + LoggerFactory.CreateLogger(), UriUtility, publishedUrlProvider).ToList(); @@ -139,7 +139,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(_requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = new UrlProvider( @@ -151,12 +151,12 @@ namespace Umbraco.Tests.Routing ); var publishedRouter = CreatePublishedRouter(Factory, - contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory_.CreateLogger()) })); + contentFinders: new ContentFinderCollection(new[] { new ContentFinderByUrl(LoggerFactory.CreateLogger()) })); var urls = child.GetContentUrls(publishedRouter, umbContext, GetLangService("en-US", "fr-FR"), GetTextService(), ServiceContext.ContentService, VariationContextAccessor, - Logger, + LoggerFactory.CreateLogger(), UriUtility, publishedUrlProvider ).ToList(); diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index d36c4ef17e..0b62e0c1ec 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -32,7 +32,6 @@ using Umbraco.Web.Runtime; using Umbraco.Web.WebApi; using ConnectionStrings = Umbraco.Core.Configuration.Models.ConnectionStrings; using Current = Umbraco.Web.Composing.Current; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Routing { @@ -55,7 +54,7 @@ namespace Umbraco.Tests.Routing public class TestRuntime : CoreRuntime { - public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) : base(globalSettings, connectionStrings,umbracoVersion, ioHelper, Mock.Of(), NullLoggerFactory.Instance, Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } @@ -112,7 +111,7 @@ namespace Umbraco.Tests.Routing frequest.TemplateModel = template; var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); - var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of()), ShortStringHelper); + var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>()), ShortStringHelper); handler.GetHandlerForRoute(httpContext.Request.RequestContext, frequest); Assert.AreEqual("RenderMvc", routeData.Values["controller"].ToString()); @@ -153,7 +152,7 @@ namespace Umbraco.Tests.Routing var type = new AutoPublishedContentType(Guid.NewGuid(), 22, "CustomDocument", new PublishedPropertyType[] { }); ContentTypesCache.GetPublishedContentTypeByAlias = alias => type; - var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of(), context => + var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>(), context => { return new CustomDocumentController(Factory.GetInstance>(), diff --git a/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs b/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs index 9994e1c579..2b09338ff7 100644 --- a/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs +++ b/src/Umbraco.Tests/Routing/UrlProviderWithHideTopLevelNodeFromPathTests.cs @@ -48,7 +48,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); diff --git a/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs b/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs index 720f3179ae..766fa99bca 100644 --- a/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs +++ b/src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs @@ -50,7 +50,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -111,7 +111,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -152,7 +152,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -207,7 +207,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -262,7 +262,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); @@ -283,7 +283,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -300,7 +300,7 @@ namespace Umbraco.Tests.Routing var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build(); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings), new SiteDomainHelper(), UmbracoContextAccessor, UriUtility); var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: _globalSettings); diff --git a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs index f8067ce8a2..254e9f4fcf 100644 --- a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs @@ -185,7 +185,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -219,7 +219,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -246,7 +246,7 @@ namespace Umbraco.Tests.Routing var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: globalSettings); var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -280,7 +280,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -304,7 +304,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -370,7 +370,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -397,7 +397,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); diff --git a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs index b27a7088a4..82a4aece78 100644 --- a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs +++ b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Routing var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); var urlProvider = new DefaultUrlProvider( Microsoft.Extensions.Options.Options.Create(requestHandlerSettings), - LoggerFactory_.CreateLogger(), + LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings), new SiteDomainHelper(), umbracoContextAccessor, UriUtility); var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider); @@ -66,7 +66,7 @@ namespace Umbraco.Tests.Routing Assert.IsTrue(frequest.HasDomain); // check that it's been routed - var lookup = new ContentFinderByUrl(LoggerFactory_.CreateLogger()); + var lookup = new ContentFinderByUrl(LoggerFactory.CreateLogger()); var result = lookup.TryFindContent(frequest); Assert.IsTrue(result); Assert.AreEqual(100111, frequest.PublishedContent.Id); diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 4416647f15..6b7bea2bca 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -24,7 +24,6 @@ using Umbraco.Web.Hosting; using Umbraco.Web.Runtime; using ConnectionStrings = Umbraco.Core.Configuration.Models.ConnectionStrings; using Current = Umbraco.Web.Composing.Current; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Runtimes { diff --git a/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs b/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs index 4449d47135..38252c1faf 100644 --- a/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs +++ b/src/Umbraco.Tests/Services/CachedDataTypeServiceTests.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Services { var dataTypeService = ServiceContext.DataTypeService; - IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; + IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService,LocalizedTextService, LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; dataTypeService.Save(dataType); //Get all the first time (no cache) diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index fd2a4a664b..dde4e6db4a 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -46,17 +46,17 @@ namespace Umbraco.Tests.Services { var accessor = (IScopeAccessor)provider; var globalSettings = new GlobalSettingsBuilder().Build(); - var tRepository = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var tRepository = new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepo = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, tRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - var ctRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + var ctRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, ctRepository, tRepository, tagRepo, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, ctRepository, tRepository, tagRepo, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } @@ -68,7 +68,7 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); + var logger = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } @@ -181,7 +181,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 100); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -210,7 +210,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 1000); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -237,7 +237,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 100); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); @@ -267,7 +267,7 @@ namespace Umbraco.Tests.Services var pages = MockedContent.CreateTextpageContent(contentType, -1, 1000); ServiceContext.ContentService.Save(pages, 0); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = CreateDocumentRepository(provider); diff --git a/src/Umbraco.Tests/Services/ContentServiceTests.cs b/src/Umbraco.Tests/Services/ContentServiceTests.cs index 7efd1478f0..7ba6e100e9 100644 --- a/src/Umbraco.Tests/Services/ContentServiceTests.cs +++ b/src/Umbraco.Tests/Services/ContentServiceTests.cs @@ -3248,17 +3248,17 @@ namespace Umbraco.Tests.Services private DocumentRepository CreateRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository) { var accessor = (IScopeAccessor) provider; - var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); - var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), TestObjects.GetFileSystemsMock(), IOHelper, ShortStringHelper); + var tagRepository = new TagRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings)); - contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger()); + var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings)); + contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(accessor); - var relationRepository = new RelationRepository(accessor, LoggerFactory_.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(accessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory_.CreateLogger(), LoggerFactory_, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); + var repository = new DocumentRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, DataTypeService); return repository; } diff --git a/src/Umbraco.Tests/Services/DataTypeServiceTests.cs b/src/Umbraco.Tests/Services/DataTypeServiceTests.cs index f4443b0c37..3f9755d4f3 100644 --- a/src/Umbraco.Tests/Services/DataTypeServiceTests.cs +++ b/src/Umbraco.Tests/Services/DataTypeServiceTests.cs @@ -24,7 +24,7 @@ namespace Umbraco.Tests.Services var dataTypeService = ServiceContext.DataTypeService; // Act - IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; + IDataType dataType = new DataType(new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = "Testing Textfield", DatabaseType = ValueStorageType.Ntext }; dataTypeService.Save(dataType); // Assert @@ -66,7 +66,7 @@ namespace Umbraco.Tests.Services var dataTypeService = ServiceContext.DataTypeService; // Act - var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory_, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = string.Empty, DatabaseType = ValueStorageType.Ntext }; + var dataTypeDefinition = new DataType(new LabelPropertyEditor(LoggerFactory, IOHelper, DataTypeService, LocalizedTextService,LocalizationService, ShortStringHelper)) { Name = string.Empty, DatabaseType = ValueStorageType.Ntext }; // Act & Assert Assert.Throws(() => dataTypeService.Save(dataTypeDefinition)); diff --git a/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs b/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs index 4aba5384b6..f78008c8c7 100644 --- a/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs +++ b/src/Umbraco.Tests/Services/LocalizedTextServiceTests.cs @@ -11,7 +11,6 @@ using Moq; using NUnit.Framework; using Umbraco.Core.Services; using Umbraco.Core.Services.Implement; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Services { diff --git a/src/Umbraco.Tests/Services/MacroServiceTests.cs b/src/Umbraco.Tests/Services/MacroServiceTests.cs index 0b1527fe74..7679d96f7b 100644 --- a/src/Umbraco.Tests/Services/MacroServiceTests.cs +++ b/src/Umbraco.Tests/Services/MacroServiceTests.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Services { base.CreateTestData(); - var provider = TestObjects.GetScopeProvider(LoggerFactory_); + var provider = TestObjects.GetScopeProvider(LoggerFactory); using (var scope = provider.CreateScope()) { var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, Mock.Of>(), ShortStringHelper); diff --git a/src/Umbraco.Tests/Services/PerformanceTests.cs b/src/Umbraco.Tests/Services/PerformanceTests.cs index 9accbb4387..fcaa083fb7 100644 --- a/src/Umbraco.Tests/Services/PerformanceTests.cs +++ b/src/Umbraco.Tests/Services/PerformanceTests.cs @@ -59,7 +59,7 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var factory = LoggerFactory.Create(builder => builder.AddDebug()); + var factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()); var logger = factory.CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index 1065012e82..251647cbc5 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -3,6 +3,8 @@ using System.IO; using Moq; using NPoco; using NUnit.Framework; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Composing; @@ -48,7 +50,8 @@ namespace Umbraco.Tests.TestHelpers var composition = new Composition(container, typeLoader, Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); - composition.RegisterUnique(_ => Mock.Of()); + composition.RegisterUnique(_ => Mock.Of()); + composition.RegisterUnique(_ => NullLoggerFactory.Instance); composition.RegisterUnique(_ => Mock.Of()); composition.RegisterUnique(typeLoader); diff --git a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs index f5d18e05ba..d0348cf589 100644 --- a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs +++ b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs @@ -5,10 +5,10 @@ using System.Reflection; using System.Web.Mvc; using System.Web.Routing; using System.Web.SessionState; +using Microsoft.Extensions.Logging; using Moq; using Umbraco.Core; using Umbraco.Core.Composing; -using Umbraco.Core.Logging; using Umbraco.Web; using Current = Umbraco.Web.Composing.Current; @@ -20,16 +20,16 @@ namespace Umbraco.Tests.TestHelpers.Stubs internal class TestControllerFactory : IControllerFactory { private readonly IUmbracoContextAccessor _umbracoContextAccessor; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly Func _factory; - public TestControllerFactory(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger) + public TestControllerFactory(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger) { _umbracoContextAccessor = umbracoContextAccessor; _logger = logger; } - public TestControllerFactory(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger, Func factory) + public TestControllerFactory(IUmbracoContextAccessor umbracoContextAccessor, ILogger logger, Func factory) { _umbracoContextAccessor = umbracoContextAccessor; _logger = logger; diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index 831d32667a..c521e56acc 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -301,7 +301,7 @@ namespace Umbraco.Tests.TestHelpers { using (var scope = ScopeProvider.CreateScope()) { - var schemaHelper = new DatabaseSchemaCreator(scope.Database, LoggerFactory_.CreateLogger(), LoggerFactory_, UmbracoVersion); + var schemaHelper = new DatabaseSchemaCreator(scope.Database, LoggerFactory.CreateLogger(), LoggerFactory, UmbracoVersion); //Create the umbraco database and its base data schemaHelper.InitializeDatabaseSchema(); @@ -344,7 +344,7 @@ namespace Umbraco.Tests.TestHelpers } catch (Exception ex) { - Logger.LogError(ex, "Could not remove the old database file"); + LoggerFactory.CreateLogger().LogError(ex, "Could not remove the old database file"); // swallow this exception - that's because a sub class might require further teardown logic onFail?.Invoke(ex); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index af8d4c42a2..a578b693b0 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -65,7 +65,6 @@ using Umbraco.Web.Templates; using Umbraco.Web.Trees; using Current = Umbraco.Web.Composing.Current; using FileSystems = Umbraco.Core.IO.FileSystems; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Tests.Testing { @@ -121,10 +120,8 @@ namespace Umbraco.Tests.Testing #region Accessors protected ServiceContext ServiceContext => Factory.GetInstance(); - - protected ILogger Logger => Factory.GetInstance(); - // TODO: We probably need to do something different with LoggerFactory, but for now this should be ok, and find a better name - protected ILoggerFactory LoggerFactory_ => Factory.GetInstance(); + + protected ILoggerFactory LoggerFactory => Factory.GetInstance(); protected IJsonSerializer JsonNetSerializer { get; } = new JsonNetSerializer(); protected IIOHelper IOHelper { get; private set; } @@ -273,10 +270,10 @@ namespace Umbraco.Tests.Testing factory = NullLoggerFactory.Instance; break; case UmbracoTestOptions.Logger.Serilog: - factory = LoggerFactory.Create(builder => { builder.AddSerilog(); }); + factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddSerilog(); }); break; case UmbracoTestOptions.Logger.Console: - factory = LoggerFactory.Create(builder => { builder.AddConsole(); }); + factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddConsole(); }); break; default: throw new NotSupportedException($"Logger option {option} is not supported."); @@ -454,10 +451,9 @@ namespace Umbraco.Tests.Testing Composition.RegisterUnique(factory => TestObjects.GetFileSystemsMock()); - var logger = Mock.Of(); var scheme = Mock.Of(); - var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, LoggerFactory_.CreateLogger(), TestHelper.ShortStringHelper); + var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, LoggerFactory.CreateLogger(), TestHelper.ShortStringHelper); Composition.RegisterUnique(factory => mediaFileSystem); // no factory (noop) @@ -472,8 +468,8 @@ namespace Umbraco.Tests.Testing var globalSettings = new GlobalSettingsBuilder().Build(); var connectionStrings = new ConnectionStringsBuilder().Build(); - Composition.RegisterUnique(f => new UmbracoDatabaseFactory(LoggerFactory_.CreateLogger(), - LoggerFactory_, + Composition.RegisterUnique(f => new UmbracoDatabaseFactory(LoggerFactory.CreateLogger(), + LoggerFactory, globalSettings, connectionStrings, new Lazy(f.GetInstance), diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index bc6df5d9ad..3ac19fce89 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -24,7 +24,6 @@ using Umbraco.Core.Strings; using Umbraco.Examine; using Umbraco.Tests.TestHelpers; using IContentService = Umbraco.Core.Services.IContentService; -using ILogger = Umbraco.Core.Logging.ILogger; using IMediaService = Umbraco.Core.Services.IMediaService; using Version = Lucene.Net.Util.Version; diff --git a/src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs b/src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs index af8862bdec..8124a91377 100644 --- a/src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs +++ b/src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Dictionary; -using Umbraco.Core.Logging; using Umbraco.Core.Mapping; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; @@ -30,7 +30,7 @@ namespace Umbraco.Web.Models.Mapping private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly IPublishedRouter _publishedRouter; private readonly ILocalizationService _localizationService; - private readonly ILogger _logger; + private readonly ILoggerFactory _loggerFactory; private readonly IUserService _userService; private readonly IEntityService _entityService; private readonly IVariationContextAccessor _variationContextAccessor; @@ -43,7 +43,7 @@ namespace Umbraco.Web.Models.Mapping public ContentMapDefinition(CommonMapper commonMapper, CommonTreeNodeMapper commonTreeNodeMapper, ICultureDictionary cultureDictionary, ILocalizedTextService localizedTextService, IContentService contentService, IContentTypeService contentTypeService, - IFileService fileService, IUmbracoContextAccessor umbracoContextAccessor, IPublishedRouter publishedRouter, ILocalizationService localizationService, ILogger logger, + IFileService fileService, IUmbracoContextAccessor umbracoContextAccessor, IPublishedRouter publishedRouter, ILocalizationService localizationService, ILoggerFactory loggerFactory, IUserService userService, IVariationContextAccessor variationContextAccessor, IContentTypeBaseServiceProvider contentTypeBaseServiceProvider, UriUtility uriUtility, IPublishedUrlProvider publishedUrlProvider, IEntityService entityService) { _commonMapper = commonMapper; @@ -56,7 +56,7 @@ namespace Umbraco.Web.Models.Mapping _umbracoContextAccessor = umbracoContextAccessor; _publishedRouter = publishedRouter; _localizationService = localizationService; - _logger = logger; + _loggerFactory = loggerFactory; _userService = userService; _entityService = entityService; _variationContextAccessor = variationContextAccessor; @@ -188,7 +188,7 @@ namespace Umbraco.Web.Models.Mapping var urls = umbracoContext == null ? new[] { UrlInfo.Message("Cannot generate urls without a current Umbraco Context") } - : source.GetContentUrls(_publishedRouter, umbracoContext, _localizationService, _localizedTextService, _contentService, _variationContextAccessor, _logger, _uriUtility, _publishedUrlProvider).ToArray(); + : source.GetContentUrls(_publishedRouter, umbracoContext, _localizationService, _localizedTextService, _contentService, _variationContextAccessor, _loggerFactory.CreateLogger(), _uriUtility, _publishedUrlProvider).ToArray(); return urls; } diff --git a/src/Umbraco.Web/Composing/Current.cs b/src/Umbraco.Web/Composing/Current.cs index 8b7868cf4a..0a7170063e 100644 --- a/src/Umbraco.Web/Composing/Current.cs +++ b/src/Umbraco.Web/Composing/Current.cs @@ -34,7 +34,6 @@ using Umbraco.Web.Security; using Umbraco.Web.Services; using Umbraco.Web.Trees; using Umbraco.Web.WebApi; -using ILogger = Umbraco.Core.Logging.ILogger; namespace Umbraco.Web.Composing { From ed30cd1800ac53d44dce748fa6812dfe38ef8df5 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 13:09:48 +0200 Subject: [PATCH 52/85] Remove ILogger and its classes implementing it --- .../Composing/ComponentCollection.cs | 1 + .../Logging/DebugDiagnosticsLogger.cs | 86 ----------- src/Umbraco.Core/Logging/ILogger.cs | 93 ----------- .../Logging/Serilog/SerilogLogger.cs | 145 ------------------ .../Components/ComponentTests.cs | 2 - .../Runtimes/CoreRuntimeTests.cs | 1 - src/Umbraco.Web/CdfLogger.cs | 47 ------ src/Umbraco.Web/Umbraco.Web.csproj | 1 - 8 files changed, 1 insertion(+), 375 deletions(-) delete mode 100644 src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs delete mode 100644 src/Umbraco.Core/Logging/ILogger.cs delete mode 100644 src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs delete mode 100644 src/Umbraco.Web/CdfLogger.cs diff --git a/src/Umbraco.Core/Composing/ComponentCollection.cs b/src/Umbraco.Core/Composing/ComponentCollection.cs index 752fbf8614..509962599c 100644 --- a/src/Umbraco.Core/Composing/ComponentCollection.cs +++ b/src/Umbraco.Core/Composing/ComponentCollection.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core.Logging; namespace Umbraco.Core.Composing diff --git a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs b/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs deleted file mode 100644 index 2492dee672..0000000000 --- a/src/Umbraco.Core/Logging/DebugDiagnosticsLogger.cs +++ /dev/null @@ -1,86 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - /// - /// Implements on top of . - /// - public class DebugDiagnosticsLogger : ILogger - { - private readonly IMessageTemplates _messageTemplates; - - public DebugDiagnosticsLogger(IMessageTemplates messageTemplates) - { - _messageTemplates = messageTemplates; - } - - public bool IsEnabled(Type reporting, LogLevel level) - => true; - - /// - public void Fatal(Type reporting, Exception exception) - { - System.Diagnostics.Debug.WriteLine(Environment.NewLine + exception, reporting.FullName); - } - - /// - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, typeof(T).FullName); - } - - /// - public void LogCritical(string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); - } - - /// - public void LogError(Type reporting, Exception exception) - { - System.Diagnostics.Debug.WriteLine(Environment.NewLine + exception, reporting.FullName); - } - - /// - public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues) + Environment.NewLine + exception, typeof(T).FullName); - } - - /// - public void LogError(string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(messageTemplate, propertyValues); - } - - /// - public void LogWarning(string message, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message, propertyValues), typeof(T).FullName); - } - - /// - public void LogWarning(Exception exception, string message, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(message + Environment.NewLine + exception, propertyValues), typeof(T).FullName); - } - - /// - public void LogInformation(string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); - } - - /// - public void LogDebug(string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); - } - - /// - public void LogTrace(string messageTemplate, params object[] propertyValues) - { - System.Diagnostics.Debug.WriteLine(_messageTemplates.Render(messageTemplate, propertyValues), typeof(T).FullName); - } - } -} diff --git a/src/Umbraco.Core/Logging/ILogger.cs b/src/Umbraco.Core/Logging/ILogger.cs deleted file mode 100644 index da590c6bba..0000000000 --- a/src/Umbraco.Core/Logging/ILogger.cs +++ /dev/null @@ -1,93 +0,0 @@ -using System; - -namespace Umbraco.Core.Logging -{ - - public interface ILogger : ILogger { } - - /// - /// Defines the logging service. - /// - /// - /// Message templates in logging methods follow the Message Templates specification - /// available at https://messagetemplates.org/ in order to support structured logging. - /// Implementations must ensure that they support these templates. Note that the - /// specification includes support for traditional C# numeric placeholders. - /// For instance, "Processed {Input} in {Time}ms." - /// - public interface ILogger - { - /// - /// Determines if logging is enabled at a specified level, for a reporting type. - /// - /// The reporting type. - /// The level. - bool IsEnabled(Type reporting, LogLevel level); - - /// - /// Logs a fatal message with an exception. - /// - /// An exception. - /// A message template. - /// Property values. - void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues); - - /// - /// Logs a fatal message. - /// - /// A message template. - /// Property values. - void LogCritical(string messageTemplate, params object[] propertyValues); - - /// - /// Logs an error message with an exception. - /// - /// An exception. - /// A message template. - /// Property values. - void LogError(Exception exception, string messageTemplate, params object[] propertyValues); - - /// - /// Logs an error message. - /// - /// A message template. - /// Property values. - void LogError(string messageTemplate, params object[] propertyValues); - - /// - /// Logs a warning message. - /// - /// A message template. - /// Property values. - void LogWarning(string messageTemplate, params object[] propertyValues); - - /// - /// Logs a warning message with an exception. - /// - /// An exception. - /// A message template. - /// Property values. - void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues); - - /// - /// Logs a info message. - /// - /// A message template. - /// Property values. - void LogInformation(string messageTemplate, params object[] propertyValues); - - /// - /// Logs a debug message. - /// - /// A message template. - /// Property values. - void LogDebug(string messageTemplate, params object[] propertyValues); - - /// - /// Logs a verbose message. - /// - /// A message template. - /// Property values. - void LogTrace(string messageTemplate, params object[] propertyValues); - } -} diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs deleted file mode 100644 index 95bf17cb23..0000000000 --- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs +++ /dev/null @@ -1,145 +0,0 @@ -using System; -using System.IO; -using Org.BouncyCastle.Asn1.X509.Qualified; -using Serilog; -using Serilog.Events; -using Umbraco.Core.Hosting; - -namespace Umbraco.Core.Logging.Serilog -{ - - /// - /// Implements on top of Serilog. - /// - public class SerilogLogger : ILogger, IDisposable - { - public global::Serilog.ILogger SerilogLog { get; } - - /// - /// Initialize a new instance of the class with a configuration file. - /// - /// - public SerilogLogger(FileInfo logConfigFile) - { - SerilogLog = new LoggerConfiguration() - .ReadFrom.AppSettings(filePath: logConfigFile.FullName) - .CreateLogger(); - } - - public SerilogLogger(LoggerConfiguration logConfig) - { - //Configure Serilog static global logger with config passed in - SerilogLog = logConfig.CreateLogger(); - } - - /// - /// Creates a logger with some pre-defined configuration and remainder from config file - /// - /// Used by UmbracoApplicationBase to get its logger. - public static SerilogLogger CreateWithDefaultConfiguration(IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration) - { - var loggerConfig = new LoggerConfiguration(); - loggerConfig - .MinimalConfiguration(hostingEnvironment, loggingConfiguration) - .ReadFromConfigFile(loggingConfiguration) - .ReadFromUserConfigFile(loggingConfiguration); - - return new SerilogLogger(loggerConfig); - } - - /// - /// Gets a contextualized logger. - /// - private global::Serilog.ILogger LoggerFor(Type reporting) - => SerilogLog.ForContext(reporting); - - /// - /// Maps Umbraco's log level to Serilog's. - /// - private LogEventLevel MapLevel(LogLevel level) - { - switch (level) - { - case LogLevel.Debug: - return LogEventLevel.Debug; - case LogLevel.Error: - return LogEventLevel.Error; - case LogLevel.Fatal: - return LogEventLevel.Fatal; - case LogLevel.Information: - return LogEventLevel.Information; - case LogLevel.Verbose: - return LogEventLevel.Verbose; - case LogLevel.Warning: - return LogEventLevel.Warning; - } - - throw new NotSupportedException($"LogLevel \"{level}\" is not supported."); - } - - /// - public bool IsEnabled(Type reporting, LogLevel level) - => LoggerFor(reporting).IsEnabled(MapLevel(level)); - - /// - public void LogCritical(string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Fatal(messageTemplate, propertyValues); - } - - /// - public void LogCritical(Exception exception, string messageTemplate, params object[] propertyValues) - { - var logger = LoggerFor(typeof(T)); - logger.Fatal(exception, messageTemplate, propertyValues); - } - - /// - public void LogError(string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Error(messageTemplate, propertyValues); - } - - /// - public void LogError(Exception exception, string messageTemplate, params object[] propertyValues) - { - var logger = LoggerFor(typeof(T)); - logger.Error(exception, messageTemplate, propertyValues); - } - - /// - public void LogWarning(string message, params object[] propertyValues) - { - LoggerFor(typeof(T)).Warning(message, propertyValues); - } - - /// - public void LogWarning(Exception exception, string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Warning(exception, messageTemplate, propertyValues); - } - - /// - public void LogInformation(string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Information(messageTemplate, propertyValues); - } - - /// - public void LogDebug(string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Debug(messageTemplate, propertyValues); - } - - /// - public void LogTrace(string messageTemplate, params object[] propertyValues) - { - LoggerFor(typeof(T)).Verbose(messageTemplate, propertyValues); - } - - public void Dispose() - { - SerilogLog.DisposeIfDisposable(); - } - } -} diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index bfc3066590..9e209f633f 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -46,7 +46,6 @@ namespace Umbraco.Tests.Components var p = new ScopeProvider(f, fs, Microsoft.Extensions.Options.Options.Create(coreDebug), mediaFileSystem, loggerFactory.CreateLogger(), loggerFactory, typeFinder, NoAppCache.Instance); mock.Setup(x => x.GetInstance(typeof (ILogger))).Returns(logger); - mock.Setup(x => x.GetInstance(typeof (Umbraco.Core.Logging.ILogger))).Returns(Mock.Of()); mock.Setup(x => x.GetInstance(typeof(ILoggerFactory))).Returns(loggerFactory); mock.Setup(x => x.GetInstance(typeof (IProfilingLogger))).Returns(new ProfilingLogger(logger, Mock.Of())); mock.Setup(x => x.GetInstance(typeof (IUmbracoDatabaseFactory))).Returns(f); @@ -99,7 +98,6 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); - if (type == typeof(Core.Logging.ILogger)) return Mock.Of(); throw new NotSupportedException(type.FullName); }); }); diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 6b7bea2bca..36ad2998ac 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -70,7 +70,6 @@ namespace Umbraco.Tests.Runtimes Assert.IsTrue(TestComponent.Ctored); Assert.IsNotNull(TestComponent.ProfilingLogger); Assert.IsInstanceOf(TestComponent.ProfilingLogger); - Assert.IsInstanceOf>(((ProfilingLogger) TestComponent.ProfilingLogger).Logger); // note: components are NOT disposed after boot diff --git a/src/Umbraco.Web/CdfLogger.cs b/src/Umbraco.Web/CdfLogger.cs deleted file mode 100644 index c0cf2129fc..0000000000 --- a/src/Umbraco.Web/CdfLogger.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Microsoft.Extensions.Logging; -using Umbraco.Web.Composing; -using ICdfLogger = ClientDependency.Core.Logging.ILogger; -using ICoreLogger = Umbraco.Core.Logging.ILogger; - -namespace Umbraco.Web -{ - /// - /// A logger for ClientDependency - /// - public class CdfLogger : ICdfLogger - { - private readonly ILogger _logger; - - // Client Dependency doesn't know how to inject - public CdfLogger(/*ICoreLogger logger*/) - { - _logger = Current.Logger; - } - - public void Debug(string msg) - { - _logger.LogDebug(msg); - } - - public void Info(string msg) - { - _logger.LogInformation(msg); - } - - public void Warn(string msg) - { - _logger.LogWarning(msg); - } - - public void Error(string msg, Exception ex) - { - _logger.LogError(ex, msg); - } - - public void Fatal(string msg, Exception ex) - { - _logger.LogError(ex, msg); - } - } -} diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index ffc5da3b21..3dcacb9ee0 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -322,7 +322,6 @@ - From d512a43ba6c0be9eb8104e06cffc871af3f05fc8 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 14:35:28 +0200 Subject: [PATCH 53/85] Make majority of unit tests pass --- src/Umbraco.Core/Logging/ProfilingLogger.cs | 6 ++++-- .../Components/ComponentTests.cs | 2 +- .../TestHelpers/TestWithDatabaseBase.cs | 2 +- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 19 ++++++++++++------- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index 386fcda619..da3efdb5bf 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -1,5 +1,6 @@ using System; using Microsoft.Extensions.Logging; +using Umbraco.Core.Models; namespace Umbraco.Core.Logging @@ -12,7 +13,7 @@ namespace Umbraco.Core.Logging /// /// Gets the underlying implementation. /// - public Microsoft.Extensions.Logging.ILogger Logger { get; } + public ILogger Logger { get; } /// /// Gets the underlying implementation. @@ -22,8 +23,9 @@ namespace Umbraco.Core.Logging /// /// Initializes a new instance of the class. /// - public ProfilingLogger(Microsoft.Extensions.Logging.ILogger logger, IProfiler profiler) + public ProfilingLogger(ILogger logger, IProfiler profiler) { + // TODO: Use typed logger Logger = logger ?? throw new ArgumentNullException(nameof(logger)); Profiler = profiler ?? throw new ArgumentNullException(nameof(profiler)); } diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index 9e209f633f..e800d5a8a2 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -18,7 +18,6 @@ using Umbraco.Core.Persistence.Mappers; using Umbraco.Core.Scoping; using Umbraco.Tests.Common.Builders; using Umbraco.Tests.TestHelpers; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Components { @@ -98,6 +97,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(ILogger)) return Mock.Of(); throw new NotSupportedException(type.FullName); }); }); diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index c521e56acc..e658f10bd1 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -91,7 +91,7 @@ namespace Umbraco.Tests.TestHelpers return TestObjects.GetDatabaseFactoryMock(); var lazyMappers = new Lazy(f.GetInstance); - var factory = new UmbracoDatabaseFactory(f.GetInstance>(), NullLoggerFactory.Instance, GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); + var factory = new UmbracoDatabaseFactory(f.GetInstance>(), f.GetInstance(), GetDbConnectionString(), GetDbProviderName(), lazyMappers, TestHelper.DbProviderFactoryCreator); factory.ResetForTests(); return factory; }); diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index a578b693b0..3bf528aaa9 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -120,8 +120,9 @@ namespace Umbraco.Tests.Testing #region Accessors protected ServiceContext ServiceContext => Factory.GetInstance(); - + protected ILoggerFactory LoggerFactory => Factory.GetInstance(); + protected IJsonSerializer JsonNetSerializer { get; } = new JsonNetSerializer(); protected IIOHelper IOHelper { get; private set; } @@ -154,6 +155,7 @@ namespace Umbraco.Tests.Testing protected UmbracoMapper Mapper => Factory.GetInstance(); protected IHttpContextAccessor HttpContextAccessor => Factory.GetInstance(); protected IRuntimeState RuntimeState => ComponentTests.MockRuntimeState(RuntimeLevel.Run); + private ILoggerFactory _loggerFactory; #endregion @@ -172,6 +174,7 @@ namespace Umbraco.Tests.Testing // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful var loggerFactory = GetLoggerFactory(Options.Logger); + _loggerFactory = loggerFactory; var profiler = new LogProfiler(loggerFactory.CreateLogger()); var msLogger = loggerFactory.CreateLogger("msLogger"); var proflogger = new ProfilingLogger(loggerFactory.CreateLogger("ProfilingLogger"), profiler); @@ -198,15 +201,17 @@ namespace Umbraco.Tests.Testing //TestHelper.GetConfigs().RegisterWith(register); - Composition.Register(new NullLoggerFactory()); - Composition.Register(typeof(Microsoft.Extensions.Logging.ILogger<>), typeof(Logger<>)); + Composition.RegisterUnique(typeof(ILoggerFactory), loggerFactory); + Composition.Register(typeof(ILogger<>), typeof(Logger<>)); + // TODO Remove this at some point + Composition.Register(typeof(Microsoft.Extensions.Logging.ILogger), msLogger); Composition.RegisterUnique(IOHelper); Composition.RegisterUnique(UriUtility); Composition.RegisterUnique(UmbracoVersion); Composition.RegisterUnique(TypeFinder); Composition.RegisterUnique(LocalizedTextService); Composition.RegisterUnique(typeLoader); - Composition.RegisterUnique(profiler); + Composition.RegisterUnique(profiler); Composition.RegisterUnique(proflogger); Composition.RegisterUnique(appCaches); Composition.RegisterUnique(HostingEnvironment); @@ -453,7 +458,7 @@ namespace Umbraco.Tests.Testing var scheme = Mock.Of(); - var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, LoggerFactory.CreateLogger(), TestHelper.ShortStringHelper); + var mediaFileSystem = new MediaFileSystem(Mock.Of(), scheme, _loggerFactory.CreateLogger(), TestHelper.ShortStringHelper); Composition.RegisterUnique(factory => mediaFileSystem); // no factory (noop) @@ -468,7 +473,7 @@ namespace Umbraco.Tests.Testing var globalSettings = new GlobalSettingsBuilder().Build(); var connectionStrings = new ConnectionStringsBuilder().Build(); - Composition.RegisterUnique(f => new UmbracoDatabaseFactory(LoggerFactory.CreateLogger(), + Composition.RegisterUnique(f => new UmbracoDatabaseFactory(_loggerFactory.CreateLogger(), LoggerFactory, globalSettings, connectionStrings, @@ -480,7 +485,7 @@ namespace Umbraco.Tests.Testing Composition.WithCollectionBuilder(); // empty Composition.RegisterUnique(factory - => TestObjects.GetScopeProvider(factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance())); + => TestObjects.GetScopeProvider(_loggerFactory, factory.TryGetInstance(), factory.TryGetInstance(), factory.TryGetInstance())); Composition.RegisterUnique(factory => (IScopeAccessor) factory.GetInstance()); Composition.ComposeServices(); From 5c9a681566c2c1201f8d985825243b9ebe073526 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 15:11:40 +0200 Subject: [PATCH 54/85] Use typed logger for XmlPublishedSnapshotService --- .../PublishedCache/PublishedContentTypeCache.cs | 8 +++----- .../PublishedSnapshotService.cs | 2 +- .../XmlPublishedSnapshotService.cs | 10 +++++----- src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs | 4 ++-- src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs | 2 +- 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs index 6ca37e6979..4c1482c82c 100644 --- a/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs +++ b/src/Umbraco.Infrastructure/PublishedCache/PublishedContentTypeCache.cs @@ -2,12 +2,10 @@ using System.Collections.Generic; using System.Linq; using System.Threading; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.PublishedCache { @@ -25,11 +23,11 @@ namespace Umbraco.Web.PublishedCache private readonly IMediaTypeService _mediaTypeService; private readonly IMemberTypeService _memberTypeService; private readonly IPublishedContentTypeFactory _publishedContentTypeFactory; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ReaderWriterLockSlim _lock = new ReaderWriterLockSlim(); // default ctor - public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) + public PublishedContentTypeCache(IContentTypeService contentTypeService, IMediaTypeService mediaTypeService, IMemberTypeService memberTypeService, IPublishedContentTypeFactory publishedContentTypeFactory, ILogger logger) { _contentTypeService = contentTypeService; _mediaTypeService = mediaTypeService; @@ -39,7 +37,7 @@ namespace Umbraco.Web.PublishedCache } // for unit tests ONLY - internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) + internal PublishedContentTypeCache(ILogger logger, IPublishedContentTypeFactory publishedContentTypeFactory) { _logger = logger; _publishedContentTypeFactory = publishedContentTypeFactory; diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index 7dc1be3b66..a1234b08a1 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -1240,7 +1240,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshotCache = new DictionaryAppCache(); - var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _loggerFactory.CreateLogger("PublishedContentTypeCache")); + var memberTypeCache = new PublishedContentTypeCache(null, null, _serviceContext.MemberTypeService, _publishedContentTypeFactory, _loggerFactory.CreateLogger()); var defaultCulture = _defaultCultureAccessor.DefaultCulture; var domainCache = new DomainCache(domainSnap, defaultCulture); diff --git a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs index c02c795f85..2bc89e0842 100644 --- a/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs +++ b/src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs @@ -1,12 +1,12 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Membership; using Umbraco.Core.Models.PublishedContent; @@ -56,7 +56,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache IUmbracoContextAccessor umbracoContextAccessor, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, - Microsoft.Extensions.Logging.ILogger logger, + ILoggerFactory loggerFactory, GlobalSettings globalSettings, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, @@ -70,7 +70,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache publishedSnapshotAccessor, variationContextAccessor, umbracoContextAccessor, documentRepository, mediaRepository, memberRepository, defaultCultureAccessor, - logger, globalSettings, hostingEnvironment, hostingLifetime, shortStringHelper, siteDomainHelper, entitySerializer, null, mainDom, testing, enableRepositoryEvents) + loggerFactory, globalSettings, hostingEnvironment, hostingLifetime, shortStringHelper, siteDomainHelper, entitySerializer, null, mainDom, testing, enableRepositoryEvents) { _umbracoContextAccessor = umbracoContextAccessor; } @@ -84,7 +84,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache IUmbracoContextAccessor umbracoContextAccessor, IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository, IDefaultCultureAccessor defaultCultureAccessor, - Microsoft.Extensions.Logging.ILogger logger, + ILoggerFactory loggerFactory, GlobalSettings globalSettings, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, @@ -99,7 +99,7 @@ namespace Umbraco.Tests.LegacyXmlPublishedCache _routesCache = new RoutesCache(); _publishedContentTypeFactory = publishedContentTypeFactory; _contentTypeCache = contentTypeCache - ?? new PublishedContentTypeCache(serviceContext.ContentTypeService, serviceContext.MediaTypeService, serviceContext.MemberTypeService, publishedContentTypeFactory, logger); + ?? new PublishedContentTypeCache(serviceContext.ContentTypeService, serviceContext.MediaTypeService, serviceContext.MemberTypeService, publishedContentTypeFactory, loggerFactory.CreateLogger()); _xmlStore = new XmlStore(serviceContext.ContentTypeService, serviceContext.ContentService, scopeProvider, _routesCache, _contentTypeCache, publishedSnapshotAccessor, mainDom, testing, enableRepositoryEvents, diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index e658f10bd1..e76a55dc17 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -246,7 +246,7 @@ namespace Umbraco.Tests.TestHelpers Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), - Factory.GetInstance()); + Factory.GetInstance>()); // testing=true so XmlStore will not use the file nor the database @@ -260,7 +260,7 @@ namespace Umbraco.Tests.TestHelpers Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), Factory.GetInstance(), DefaultCultureAccessor, - Factory.GetInstance(), + Factory.GetInstance(), globalSettings ?? TestObjects.GetGlobalSettings(), HostingEnvironment, HostingLifetime, diff --git a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs index 5542e34547..f04e6e752f 100644 --- a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs @@ -424,7 +424,7 @@ namespace Umbraco.Tests.Web.Mvc null, null, umbracoContextAccessor, null, null, null, new TestDefaultCultureAccessor(), - Current.LoggerFactory.CreateLogger("XmlPublishedSnapshotService"), TestObjects.GetGlobalSettings(), + Current.LoggerFactory, TestObjects.GetGlobalSettings(), TestHelper.GetHostingEnvironment(), TestHelper.GetHostingEnvironmentLifetime(), ShortStringHelper, From 3be396f38442e385e0ae0afdf481cc42d090a367 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 15:12:14 +0200 Subject: [PATCH 55/85] Use Factory.GetInstance in Current --- src/Umbraco.Core/Composing/Current.cs | 6 +++--- src/Umbraco.Web/Composing/Current.cs | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 2a4559c652..40fc979590 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -14,7 +14,7 @@ namespace Umbraco.Composing { public static class Current { - private static Microsoft.Extensions.Logging.ILogger _logger = new NullLogger(); + private static ILogger _logger = new NullLogger(); private static ILoggerFactory _loggerFactory; private static IIOHelper _ioHelper; private static IHostingEnvironment _hostingEnvironment; @@ -23,7 +23,7 @@ namespace Umbraco.Composing private static SecuritySettings _securitySettings; private static GlobalSettings _globalSettings; - public static Microsoft.Extensions.Logging.ILogger Logger => EnsureInitialized(_logger); + public static ILogger Logger => EnsureInitialized(_logger); public static IIOHelper IOHelper => EnsureInitialized(_ioHelper); public static IHostingEnvironment HostingEnvironment => EnsureInitialized(_hostingEnvironment); public static IBackOfficeInfo BackOfficeInfo => EnsureInitialized(_backOfficeInfo); @@ -44,7 +44,7 @@ namespace Umbraco.Composing } public static void Initialize( - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, SecuritySettings securitySettings, GlobalSettings globalSettings, IIOHelper ioHelper, diff --git a/src/Umbraco.Web/Composing/Current.cs b/src/Umbraco.Web/Composing/Current.cs index 0a7170063e..a940cd3657 100644 --- a/src/Umbraco.Web/Composing/Current.cs +++ b/src/Umbraco.Web/Composing/Current.cs @@ -244,9 +244,10 @@ namespace Umbraco.Web.Composing public static IShortStringHelper ShortStringHelper => Factory.GetInstance(); - public static Microsoft.Extensions.Logging.ILogger Logger => Umbraco.Composing.Current.Logger; + // TODO: Use LoggerFactory instead of shared Logger + public static ILogger Logger => Factory.GetInstance>(); - public static ILoggerFactory LoggerFactory => Umbraco.Composing.Current.LoggerFactory; + public static ILoggerFactory LoggerFactory => Factory.GetInstance(); public static IProfiler Profiler => Factory.GetInstance(); From 5dae6235c5defc88485857601fc8fd0f751bf7a9 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 15:16:25 +0200 Subject: [PATCH 56/85] Initialize ILoggerFactory in Current --- src/Umbraco.Core/Composing/Current.cs | 2 ++ .../Composing/UmbracoServiceProviderFactory.cs | 4 +++- src/Umbraco.Web/UmbracoApplicationBase.cs | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 40fc979590..098f176ee3 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -45,6 +45,7 @@ namespace Umbraco.Composing public static void Initialize( ILogger logger, + ILoggerFactory loggerFactory, SecuritySettings securitySettings, GlobalSettings globalSettings, IIOHelper ioHelper, @@ -58,6 +59,7 @@ namespace Umbraco.Composing } _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper)); _hostingEnvironment = hostingEnvironment ?? throw new ArgumentNullException(nameof(hostingEnvironment)); _backOfficeInfo = backOfficeInfo ?? throw new ArgumentNullException(nameof(backOfficeInfo)); diff --git a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs index ec7c76634e..5defb6b69a 100644 --- a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs +++ b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs @@ -2,6 +2,7 @@ using LightInject.Microsoft.DependencyInjection; using Microsoft.Extensions.DependencyInjection; using System; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Umbraco.Composing; using Umbraco.Core.Composing.LightInject; @@ -87,7 +88,8 @@ namespace Umbraco.Core.Composing { // after cross wiring, configure "Current" Current.Initialize( - _container.GetInstance>(), + _container.GetInstance>(), + _container.GetInstance(), _container.GetInstance>().Value, _container.GetInstance>().Value, _container.GetInstance(), diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 2a477b620c..94d732ad4b 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -74,6 +74,7 @@ namespace Umbraco.Web var backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, ioHelper, _loggerFactory.CreateLogger(), Options.Create(webRoutingSettings)); var profiler = GetWebProfiler(hostingEnvironment); Umbraco.Composing.Current.Initialize(logger, + _loggerFactory, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); @@ -97,7 +98,7 @@ namespace Umbraco.Web return webProfiler; } - protected UmbracoApplicationBase(Microsoft.Extensions.Logging.ILogger logger, SecuritySettings securitySettings, GlobalSettings globalSettings, ConnectionStrings connectionStrings, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected UmbracoApplicationBase(ILogger logger, SecuritySettings securitySettings, GlobalSettings globalSettings, ConnectionStrings connectionStrings, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { _securitySettings = securitySettings; _globalSettings = globalSettings; @@ -106,7 +107,7 @@ namespace Umbraco.Web if (!Umbraco.Composing.Current.IsInitialized) { Logger = logger; - Umbraco.Composing.Current.Initialize(logger, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); + Umbraco.Composing.Current.Initialize(logger, _loggerFactory, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); } } From 49170253274d9459fea69ef4bded677ba7052226 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 21 Sep 2020 15:26:10 +0200 Subject: [PATCH 57/85] Change some Microsoft.Extensions.Logging.ILogger to just ILogger --- .../Logging/Viewer/SerilogJsonLogViewer.cs | 4 ++-- src/Umbraco.Tests/Logging/LogviewerTests.cs | 4 ++-- src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 2 +- src/Umbraco.Web/UmbracoApplicationBase.cs | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs index 16c9077bd1..8e74dbe194 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/SerilogJsonLogViewer.cs @@ -12,10 +12,10 @@ namespace Umbraco.Core.Logging.Viewer internal class SerilogJsonLogViewer : SerilogLogViewerSourceBase { private readonly string _logsPath; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; public SerilogJsonLogViewer( - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, ILogViewerConfig logViewerConfig, ILoggingConfiguration loggingConfiguration, global::Serilog.ILogger serilogLog) diff --git a/src/Umbraco.Tests/Logging/LogviewerTests.cs b/src/Umbraco.Tests/Logging/LogviewerTests.cs index 3e2771a907..04d0150f75 100644 --- a/src/Umbraco.Tests/Logging/LogviewerTests.cs +++ b/src/Umbraco.Tests/Logging/LogviewerTests.cs @@ -4,8 +4,8 @@ using Serilog; using System; using System.IO; using System.Linq; +using Microsoft.Extensions.Logging; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Logging.Viewer; using Umbraco.Tests.TestHelpers; @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Logging File.Copy(exampleLogfilePath, _newLogfilePath, true); File.Copy(exampleSearchfilePath, _newSearchfilePath, true); - var logger = Mock.Of>(); + var logger = Mock.Of>(); var logViewerConfig = new LogViewerConfig(hostingEnv); _logViewer = new SerilogJsonLogViewer(logger, logViewerConfig, loggingConfiguration, Log.Logger); } diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 36ad2998ac..676e5590fe 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -94,7 +94,7 @@ namespace Umbraco.Tests.Runtimes } private static ILoggerFactory _loggerFactory; - private static Microsoft.Extensions.Logging.ILogger _logger; + private static ILogger _logger; private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; private static readonly IProfiler _profiler = new TestProfiler(); private static readonly GlobalSettings _globalSettings = new GlobalSettings(); diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 94d732ad4b..fa54222a3d 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -111,7 +111,7 @@ namespace Umbraco.Web } } - protected Microsoft.Extensions.Logging.ILogger Logger { get; } + protected ILogger Logger { get; } /// /// Gets a From 6cce7ef3f20f0ded7f492bdf1292298c4be45381 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 08:56:23 +0200 Subject: [PATCH 58/85] Make internals visible to Moq, otherwise we cannot mock ILogger For some reason adding the assembly attribute doesn't work for the test project, I need to look into this. --- src/Umbraco.Core/Umbraco.Core.csproj | 3 +++ src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj | 3 +++ .../Umbraco.PublishedCache.NuCache.csproj | 3 +++ src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs | 2 ++ 4 files changed, 11 insertions(+) diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index 6fa21130fc..fadf6b592d 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -39,5 +39,8 @@ <_Parameter1>Umbraco.Tests.Integration + + <_Parameter1>DynamicProxyGenAssembly2 + diff --git a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj index 2b663431ae..5c27322a68 100644 --- a/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj +++ b/src/Umbraco.Infrastructure/Umbraco.Infrastructure.csproj @@ -90,6 +90,9 @@ <_Parameter1>Umbraco.Tests.UnitTests + + <_Parameter1>DynamicProxyGenAssembly2 + diff --git a/src/Umbraco.PublishedCache.NuCache/Umbraco.PublishedCache.NuCache.csproj b/src/Umbraco.PublishedCache.NuCache/Umbraco.PublishedCache.NuCache.csproj index 4a7733a810..a44ffcadb7 100644 --- a/src/Umbraco.PublishedCache.NuCache/Umbraco.PublishedCache.NuCache.csproj +++ b/src/Umbraco.PublishedCache.NuCache/Umbraco.PublishedCache.NuCache.csproj @@ -27,6 +27,9 @@ <_Parameter1>Umbraco.Tests.Benchmarks + + <_Parameter1>DynamicProxyGenAssembly2 + diff --git a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs index d0348cf589..c2bb9032d2 100644 --- a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs +++ b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; +using System.Runtime.CompilerServices; using System.Web.Mvc; using System.Web.Routing; using System.Web.SessionState; @@ -12,6 +13,7 @@ using Umbraco.Core.Composing; using Umbraco.Web; using Current = Umbraco.Web.Composing.Current; +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")] namespace Umbraco.Tests.TestHelpers.Stubs { /// From 7e3b213c94fdea0f4f36b395f261d650281f524c Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 09:33:30 +0200 Subject: [PATCH 59/85] Mock ILogger not Logger --- src/Umbraco.Tests/Migrations/AlterMigrationTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs index fffdcddd52..2d8dd7d18e 100644 --- a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs @@ -32,7 +32,7 @@ namespace Umbraco.Tests.Migrations var dbProviderFactory = DbProviderFactories.GetFactory(Constants.DbProviderNames.SqlServer); var sqlContext = new SqlContext(_sqlSyntax, DatabaseType.SqlServer2008, Mock.Of()); - _database = new UmbracoDatabase("cstr", sqlContext, dbProviderFactory, Mock.Of>(), TestHelper.BulkSqlInsertProvider); + _database = new UmbracoDatabase("cstr", sqlContext, dbProviderFactory, Mock.Of>(), TestHelper.BulkSqlInsertProvider); } [Test] From 5cf06c2c9a6a2cc5e5177b409701c3d671b83edf Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 09:33:57 +0200 Subject: [PATCH 60/85] Register ILogger in ComponentTests --- src/Umbraco.Tests/Components/ComponentTests.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index e800d5a8a2..0c9e1d62cc 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -97,7 +97,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Composer5)) return new Composer5(); if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); - if (type == typeof(ILogger)) return Mock.Of(); + if (type == typeof(ILogger)) return Mock.Of>(); throw new NotSupportedException(type.FullName); }); }); @@ -221,6 +221,7 @@ namespace Umbraco.Tests.Components if (type == typeof(Component5)) return new Component5(new SomeResource()); if (type == typeof(Component5a)) return new Component5a(); if (type == typeof(IProfilingLogger)) return new ProfilingLogger(Mock.Of(), Mock.Of()); + if (type == typeof(ILogger)) return Mock.Of>(); throw new NotSupportedException(type.FullName); }); }); From e22bbc46a79cca44b3cd2756cf70c851252b26d4 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 09:41:42 +0200 Subject: [PATCH 61/85] Register ILogger<> and ILoggerFactory in CompositionExtensions_Essentials --- .../CompositionExtensions_Essentials.cs | 5 ++++- src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs | 2 +- src/Umbraco.Tests.Integration/ContainerTests.cs | 2 +- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs index aba46baf8f..803a6d1d0e 100644 --- a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs +++ b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs @@ -5,6 +5,7 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; +using Umbraco.Core.Migrations; using Umbraco.Core.Persistence; using ILogger = Microsoft.Extensions.Logging.ILogger; @@ -26,7 +27,7 @@ namespace Umbraco.Core // then we pre-resolve them which means that the instance re-resolved later is different... BUT if we register that // pre-resolved instance here again, then it will be the same instance re-resolved later, just like we are doing with // IDbProviderFactoryCreator. - ILogger logger, IProfiler profiler, IProfilingLogger profilingLogger, + ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IProfilingLogger profilingLogger, IMainDom mainDom, AppCaches appCaches, IUmbracoDatabaseFactory databaseFactory, @@ -41,6 +42,8 @@ namespace Umbraco.Core IBackOfficeInfo backOfficeInfo) { composition.RegisterUnique(logger); + composition.Register(typeof(ILogger<>), typeof(Logger<>)); + composition.RegisterUnique(loggerFactory); composition.RegisterUnique(profiler); composition.RegisterUnique(profilingLogger); composition.RegisterUnique(mainDom); diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index b1411dc383..2055ae83f9 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -184,7 +184,7 @@ namespace Umbraco.Core.Runtime // create the composition composition = new Composition(register, typeLoader, ProfilingLogger, _state, IOHelper, AppCaches); - composition.RegisterEssentials(Logger, Profiler, ProfilingLogger, MainDom, AppCaches, databaseFactory, typeLoader, _state, TypeFinder, IOHelper, UmbracoVersion, DbProviderFactoryCreator, HostingEnvironment, BackOfficeInfo); + composition.RegisterEssentials(Logger, RuntimeLoggerFactory, Profiler, ProfilingLogger, MainDom, AppCaches, databaseFactory, typeLoader, _state, TypeFinder, IOHelper, UmbracoVersion, DbProviderFactoryCreator, HostingEnvironment, BackOfficeInfo); // register ourselves (TODO: Should we put this in RegisterEssentials?) composition.Register(_ => this, Lifetime.Singleton); diff --git a/src/Umbraco.Tests.Integration/ContainerTests.cs b/src/Umbraco.Tests.Integration/ContainerTests.cs index 9f666eb37e..50661b7f4e 100644 --- a/src/Umbraco.Tests.Integration/ContainerTests.cs +++ b/src/Umbraco.Tests.Integration/ContainerTests.cs @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Integration // Register in the container var composition = new Composition(umbracoContainer, typeLoader, testHelper.ProfilingLogger, runtimeState, testHelper.IOHelper, testHelper.AppCaches); - composition.RegisterEssentials(testHelper.ConsoleLoggerFactory.CreateLogger("RegisterEssentials"), testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, + composition.RegisterEssentials(testHelper.ConsoleLoggerFactory.CreateLogger("RegisterEssentials"), testHelper.ConsoleLoggerFactory, testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(), testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo()); diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 8a00a291df..ae0006c847 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -82,7 +82,7 @@ namespace Umbraco.Tests.Runtimes // create the register and the composition var register = TestHelper.GetRegister(); var composition = new Composition(register, typeLoader, profilingLogger, runtimeState, ioHelper, appCaches); - composition.RegisterEssentials(loggerFactory.CreateLogger("Essentials"), profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); + composition.RegisterEssentials(loggerFactory.CreateLogger("Essentials"), loggerFactory, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, loggerFactory.CreateLogger("CoreRunTime"), loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); @@ -290,7 +290,7 @@ namespace Umbraco.Tests.Runtimes var register = TestHelper.GetRegister(); var composition = new Composition(register, typeLoader, profilingLogger, runtimeState, ioHelper, appCaches); var umbracoVersion = TestHelper.GetUmbracoVersion(); - composition.RegisterEssentials(loggerFactory.CreateLogger("RegisterEssentials"), profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); + composition.RegisterEssentials(loggerFactory.CreateLogger("RegisterEssentials"), loggerFactory, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself var globalSettings = new GlobalSettingsBuilder().Build(); From 561108180372b90a4e1bdc77318f3674f4b962f3 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 09:42:11 +0200 Subject: [PATCH 62/85] Initialize LoggerFactory before trying to pass to to UmbracoApplicationBase --- src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 18 +++++++++++++++--- src/Umbraco.Web/UmbracoApplicationBase.cs | 3 ++- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 676e5590fe..ed5e281378 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -83,16 +83,28 @@ namespace Umbraco.Tests.Runtimes // test application public class TestUmbracoApplication : UmbracoApplicationBase { - public TestUmbracoApplication() : base(_logger, + public TestUmbracoApplication() : base(CreateLoggerFactory().CreateLogger(), + CreateLoggerFactory(), new SecuritySettings(), new GlobalSettings(), new ConnectionStrings(), - _ioHelper, _profiler, new AspNetHostingEnvironment(Options.Create(new HostingSettings())), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, _loggerFactory.CreateLogger(), Options.Create(new WebRoutingSettings()))) + _ioHelper, _profiler, new AspNetHostingEnvironment(Options.Create(new HostingSettings())), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, CreateLoggerFactory().CreateLogger(), Options.Create(new WebRoutingSettings()))) { - _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + _loggerFactory = CreateLoggerFactory(); _logger = _loggerFactory.CreateLogger(); } + // Since we can't pass ILoggerFactory before it's created this will take care of it. + private static ILoggerFactory CreateLoggerFactory() + { + if (_loggerFactory is null) + { + _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + } + + return _loggerFactory; + } + private static ILoggerFactory _loggerFactory; private static ILogger _logger; private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index fa54222a3d..a58a5b0987 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -98,11 +98,12 @@ namespace Umbraco.Web return webProfiler; } - protected UmbracoApplicationBase(ILogger logger, SecuritySettings securitySettings, GlobalSettings globalSettings, ConnectionStrings connectionStrings, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected UmbracoApplicationBase(ILogger logger, ILoggerFactory loggerFactory, SecuritySettings securitySettings, GlobalSettings globalSettings, ConnectionStrings connectionStrings, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { _securitySettings = securitySettings; _globalSettings = globalSettings; _connectionStrings = connectionStrings; + _loggerFactory = loggerFactory; if (!Umbraco.Composing.Current.IsInitialized) { From d8c4107c932d9bce04e0905f41964e9d471bbc69 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 09:54:39 +0200 Subject: [PATCH 63/85] Remove unused logger from CoreRuntimeTests --- src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index ed5e281378..13ed2cb8cd 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -91,7 +91,6 @@ namespace Umbraco.Tests.Runtimes _ioHelper, _profiler, new AspNetHostingEnvironment(Options.Create(new HostingSettings())), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, CreateLoggerFactory().CreateLogger(), Options.Create(new WebRoutingSettings()))) { _loggerFactory = CreateLoggerFactory(); - _logger = _loggerFactory.CreateLogger(); } // Since we can't pass ILoggerFactory before it's created this will take care of it. @@ -106,14 +105,13 @@ namespace Umbraco.Tests.Runtimes } private static ILoggerFactory _loggerFactory; - private static ILogger _logger; private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; private static readonly IProfiler _profiler = new TestProfiler(); private static readonly GlobalSettings _globalSettings = new GlobalSettings(); public IRuntime Runtime { get; private set; } - protected override IRuntime GetRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Microsoft.Extensions.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + protected override IRuntime GetRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { return Runtime = new TestRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, logger, loggerFactory, profiler, hostingEnvironment, backOfficeInfo); } @@ -122,7 +120,7 @@ namespace Umbraco.Tests.Runtimes // test runtime public class TestRuntime : CoreRuntime { - public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, Microsoft.Extensions.Logging.ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) + public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) :base(globalSettings, connectionStrings,umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { From dae7f0a1a7a2025de898109e5b0f5e9b3f70e48b Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 10:15:45 +0200 Subject: [PATCH 64/85] Register logging ASAP in UmbracoIntegrationTest pretty much everything needs it --- .../Testing/UmbracoIntegrationTest.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index c00c2dde81..05e20d003b 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -219,6 +219,9 @@ namespace Umbraco.Tests.Integration.Testing public virtual void ConfigureServices(IServiceCollection services) { + services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger("ConsoleLogger")); + services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole())); + services.AddSingleton(TestHelper.DbProviderFactoryCreator); var webHostEnvironment = TestHelper.GetWebHostEnvironment(); services.AddRequiredNetCoreServices(TestHelper, webHostEnvironment); @@ -241,9 +244,6 @@ namespace Umbraco.Tests.Integration.Testing services.AddMvc(); - services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger("ConsoleLogger")); - services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole())); - CustomTestSetup(services); } From 9dc17b0873b04359c214f9ea283b37be62726eec Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 10:16:38 +0200 Subject: [PATCH 65/85] Use serviceProvider instead of Current when creating TypeFinder in CollectionExtensions Current hasn't been initialized at this point --- .../Extensions/UmbracoCoreServiceCollectionExtensions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 815a413cb0..8b756e2f3a 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -270,7 +270,7 @@ namespace Umbraco.Extensions out var logger, out var ioHelper, out var hostingEnvironment, out var backOfficeInfo, out var profiler); var umbracoVersion = new UmbracoVersion(); - var typeFinder = CreateTypeFinder(Current.LoggerFactory, profiler, webHostEnvironment, entryAssembly, typeFinderSettings); + var typeFinder = CreateTypeFinder(serviceProvider.GetService(), profiler, webHostEnvironment, entryAssembly, typeFinderSettings); var coreRuntime = getRuntime( globalSettings.CurrentValue, From beb0d038a77f9db6d0cc5905bc4ad365929d4b0c Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 10:35:58 +0200 Subject: [PATCH 66/85] Move InernalsVisibleTo into AssemblyInfo instead of TestControllerFactory --- src/Umbraco.Tests/Properties/AssemblyInfo.cs | 5 +++++ src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs | 1 - 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Tests/Properties/AssemblyInfo.cs b/src/Umbraco.Tests/Properties/AssemblyInfo.cs index 610ff433ee..ec1ddca2f8 100644 --- a/src/Umbraco.Tests/Properties/AssemblyInfo.cs +++ b/src/Umbraco.Tests/Properties/AssemblyInfo.cs @@ -34,3 +34,8 @@ using System.Runtime.InteropServices; // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")] + +// Internals must be visible to DynamicProxyGenAssembly2 +// in order to mock loggers loggers with types from the assembly +// I.E. Mock.Of>() +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")] diff --git a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs index c2bb9032d2..3e53c0a182 100644 --- a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs +++ b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs @@ -13,7 +13,6 @@ using Umbraco.Core.Composing; using Umbraco.Web; using Current = Umbraco.Web.Composing.Current; -[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")] namespace Umbraco.Tests.TestHelpers.Stubs { /// From b7cbbf8c28def63787ce69348523ec6fd1737fb1 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 13:00:39 +0200 Subject: [PATCH 67/85] Use ConfigureLogging instead of trying to add logging manually --- .../Testing/UmbracoIntegrationTest.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 05e20d003b..6f6e51b262 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -116,6 +116,11 @@ namespace Umbraco.Tests.Integration.Testing Configuration = context.Configuration; configBuilder.AddInMemoryCollection(InMemoryConfiguration); }) + .ConfigureLogging(logging => + { + logging.ClearProviders(); + logging.AddConsole(); + }) .ConfigureServices((hostContext, services) => { ConfigureServices(services); @@ -219,9 +224,6 @@ namespace Umbraco.Tests.Integration.Testing public virtual void ConfigureServices(IServiceCollection services) { - services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole()).CreateLogger("ConsoleLogger")); - services.AddSingleton(LoggerFactory.Create(builder => builder.AddConsole())); - services.AddSingleton(TestHelper.DbProviderFactoryCreator); var webHostEnvironment = TestHelper.GetWebHostEnvironment(); services.AddRequiredNetCoreServices(TestHelper, webHostEnvironment); From a91f6f6a29cb1c8db6c98783141b92369712199e Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 13:22:44 +0200 Subject: [PATCH 68/85] Clean PublishedSnapshotService a bit --- src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs index a1234b08a1..688515ad33 100644 --- a/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs +++ b/src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs @@ -45,7 +45,7 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly IProfilingLogger _profilingLogger; private readonly IScopeProvider _scopeProvider; private readonly IDataSource _dataSource; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IDocumentRepository _documentRepository; private readonly IMediaRepository _mediaRepository; From 9d9d1955e9217eabac953e1674741fa558f34c24 Mon Sep 17 00:00:00 2001 From: Mole Date: Tue, 22 Sep 2020 15:28:44 +0200 Subject: [PATCH 69/85] Fix merge --- src/Umbraco.Tests/Umbraco.Tests.csproj | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index 0a526ea30d..176530ae5d 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -105,10 +105,6 @@ 3.1.8 - - - - @@ -564,4 +560,4 @@ - \ No newline at end of file + From 28df8d086b9199dbcaa0dd0c12c0c0e0be917941 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Wed, 23 Sep 2020 08:40:05 +0200 Subject: [PATCH 70/85] Injecting a logger instead of logger factory Signed-off-by: Bjarke Berg --- .../HealthCheck/Checks/Security/HttpsCheck.cs | 12 ++++++++---- src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs b/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs index 094a28552a..3f788f7460 100644 --- a/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs +++ b/src/Umbraco.Core/HealthCheck/Checks/Security/HttpsCheck.cs @@ -23,18 +23,22 @@ namespace Umbraco.Web.HealthCheck.Checks.Security private readonly ILocalizedTextService _textService; private readonly GlobalSettings _globalSettings; private readonly IIOHelper _ioHelper; - private readonly LoggerFactory _loggerFactory; private readonly IRequestAccessor _requestAccessor; + private readonly ILogger _logger; private const string FixHttpsSettingAction = "fixHttpsSetting"; - public HttpsCheck(ILocalizedTextService textService, IOptions globalSettings, IIOHelper ioHelper, LoggerFactory loggerFactory, IRequestAccessor requestAccessor) + public HttpsCheck(ILocalizedTextService textService, + IOptions globalSettings, + IIOHelper ioHelper, + IRequestAccessor requestAccessor, + ILogger logger) { _textService = textService; _globalSettings = globalSettings.Value; _ioHelper = ioHelper; - _loggerFactory = loggerFactory; _requestAccessor = requestAccessor; + _logger = logger; } /// @@ -190,7 +194,7 @@ namespace Umbraco.Web.HealthCheck.Checks.Security { var configFile = _ioHelper.MapPath("~/Web.config"); const string xPath = "/configuration/appSettings/add[@key='Umbraco.Core.UseHttps']/@value"; - var configurationService = new ConfigurationService(configFile, xPath, _textService, _loggerFactory.CreateLogger()); + var configurationService = new ConfigurationService(configFile, xPath, _textService, _logger); var updateConfigFile = configurationService.UpdateConfigFile("true"); if (updateConfigFile.Success) diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index a704468f7d..42431e0240 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -66,7 +66,7 @@ namespace Umbraco.Examine { populator.Populate(indexes); } - catch (Exception e) + catch (Exception) { _logger.LogError("Index populating failed for populator {Populator}", populator.GetType()); } From f61796c265adc321d7d7eeb5a14150bcff9a4551 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Wed, 23 Sep 2020 08:58:11 +0200 Subject: [PATCH 71/85] revert appsettings Signed-off-by: Bjarke Berg --- src/Umbraco.Web.UI.NetCore/appsettings.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.NetCore/appsettings.json b/src/Umbraco.Web.UI.NetCore/appsettings.json index 1601899797..3d9560dd9a 100644 --- a/src/Umbraco.Web.UI.NetCore/appsettings.json +++ b/src/Umbraco.Web.UI.NetCore/appsettings.json @@ -1,6 +1,6 @@ { "ConnectionStrings": { - "umbracoDbDSN": "Data Source=|DataDirectory|\\Umbraco.sdf;Flush Interval=1;" + "umbracoDbDSN": "" }, "Serilog": { "MinimumLevel": { @@ -71,4 +71,4 @@ } } } -} \ No newline at end of file +} From 0e737c09031942904cad5569bb1f0bb37ff85677 Mon Sep 17 00:00:00 2001 From: Mole Date: Wed, 23 Sep 2020 15:37:19 +0200 Subject: [PATCH 72/85] Use a SiriLogger that logs to console in UmbracoIntegrationTest AFAIK ConsoleLoggerFactory gets disposed when host is disposed causing all tests but the ones from the first test fixture to fail. As far as I'm aware it's not possible to make it not dispose ConsoleLoggerFactory, however it is possible with Sirilog --- .../Testing/UmbracoIntegrationTest.cs | 11 ++++++----- .../Umbraco.Tests.Integration.csproj | 1 + 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index d1ee70b1fc..91b90c040f 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -31,6 +31,8 @@ using System.IO; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; +using Serilog; +using Umbraco.Core.Logging.Serilog; using ConnectionStrings = Umbraco.Core.Configuration.Models.ConnectionStrings; using ILogger = Microsoft.Extensions.Logging.ILogger; @@ -102,6 +104,9 @@ namespace Umbraco.Tests.Integration.Testing { UmbracoContainer = CreateUmbracoContainer(out var serviceProviderFactory); _serviceProviderFactory = serviceProviderFactory; + // TODO: Is this the right way to do this? + var loggerConfig = new LoggerConfiguration().WriteTo.Console(); + var logger = new SerilogLogger(loggerConfig); var hostBuilder = Host.CreateDefaultBuilder() // IMPORTANT: We Cannot use UseStartup, there's all sorts of threads about this with testing. Although this can work @@ -116,11 +121,7 @@ namespace Umbraco.Tests.Integration.Testing Configuration = context.Configuration; configBuilder.AddInMemoryCollection(InMemoryConfiguration); }) - .ConfigureLogging(logging => - { - logging.ClearProviders(); - logging.AddConsole(); - }) + .UseSerilog(logger.SerilogLog, false) .ConfigureServices((hostContext, services) => { ConfigureServices(services); diff --git a/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj b/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj index 1bfbd8afe8..4a3bea5962 100644 --- a/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj +++ b/src/Umbraco.Tests.Integration/Umbraco.Tests.Integration.csproj @@ -30,6 +30,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + From 25f13629cb4dd831a84f6ce2357a9fa0244ac856 Mon Sep 17 00:00:00 2001 From: Mole Date: Thu, 24 Sep 2020 09:39:48 +0200 Subject: [PATCH 73/85] Register logging before trying to use ILoggerFactory in UmbracoCoreServiceCollectionExtensions Before we used serviceProvider.GetService() with a service provider that were build before logging was configured, therefore the loggerfactory was empty and a lot of logs were missing --- .../UmbracoCoreServiceCollectionExtensions.cs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 564c1418dc..c28e59b196 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -266,8 +266,6 @@ namespace Umbraco.Extensions var hostingSettings = serviceProvider.GetService>(); var typeFinderSettings = serviceProvider.GetService>(); - var loggerFactory = serviceProvider.GetService(); - var dbProviderFactoryCreator = serviceProvider.GetRequiredService(); CreateCompositionRoot(services, @@ -276,10 +274,10 @@ namespace Umbraco.Extensions webHostEnvironment, loggingConfiguration, configuration, - out var logger, out var ioHelper, out var hostingEnvironment, out var backOfficeInfo, out var profiler); + out var logger, out var loggerFactory, out var ioHelper, out var hostingEnvironment, out var backOfficeInfo, out var profiler); var umbracoVersion = new UmbracoVersion(); - var typeFinder = CreateTypeFinder(serviceProvider.GetService(), profiler, webHostEnvironment, entryAssembly, typeFinderSettings); + var typeFinder = CreateTypeFinder(loggerFactory, profiler, webHostEnvironment, entryAssembly, typeFinderSettings); var coreRuntime = getRuntime( globalSettings.CurrentValue, @@ -357,6 +355,7 @@ namespace Umbraco.Extensions ILoggingConfiguration loggingConfiguration, IConfiguration configuration, out ILogger logger, + out ILoggerFactory loggerFactory, out IIOHelper ioHelper, out Core.Hosting.IHostingEnvironment hostingEnvironment, out IBackOfficeInfo backOfficeInfo, @@ -367,7 +366,7 @@ namespace Umbraco.Extensions hostingEnvironment = new AspNetCoreHostingEnvironment(hostingSettings, webHostEnvironment); ioHelper = new IOHelper(hostingEnvironment); - logger = AddLogger(services, hostingEnvironment, loggingConfiguration, configuration); + logger = AddLogger(services, hostingEnvironment, loggingConfiguration, configuration, out loggerFactory); backOfficeInfo = new AspNetCoreBackOfficeInfo(globalSettings); profiler = GetWebProfiler(hostingEnvironment); @@ -378,7 +377,12 @@ namespace Umbraco.Extensions /// Create and configure the logger /// /// - private static ILogger AddLogger(IServiceCollection services, Core.Hosting.IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration, IConfiguration configuration) + private static ILogger AddLogger( + IServiceCollection services, + Core.Hosting.IHostingEnvironment hostingEnvironment, + ILoggingConfiguration loggingConfiguration, + IConfiguration configuration, + out ILoggerFactory loggerFactory) { // Create a serilog logger var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration, configuration); @@ -413,7 +417,8 @@ namespace Umbraco.Extensions // // Consumed by user code // services.AddSingleton(diagnosticContext); var serviceProvider = services.BuildServiceProvider(); - return serviceProvider.GetRequiredService().CreateLogger("Generic Logger"); + loggerFactory = serviceProvider.GetRequiredService(); + return loggerFactory.CreateLogger("Generic Logger"); } private static IProfiler GetWebProfiler(Umbraco.Core.Hosting.IHostingEnvironment hostingEnvironment) From 2779b19737b661f28c0a0e34a321308f766a990c Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 24 Sep 2020 10:13:22 +0200 Subject: [PATCH 74/85] Fixed test Signed-off-by: Bjarke Berg --- .../CompositionExtensions_Essentials.cs | 2 - .../ContainerTests.cs | 102 +++++++++--------- src/Umbraco.Tests.Integration/RuntimeTests.cs | 2 +- .../Runtimes/CoreRuntimeTests.cs | 2 + 4 files changed, 56 insertions(+), 52 deletions(-) diff --git a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs index 803a6d1d0e..615c352d49 100644 --- a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs +++ b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs @@ -34,7 +34,6 @@ namespace Umbraco.Core TypeLoader typeLoader, IRuntimeState state, ITypeFinder typeFinder, - IIOHelper ioHelper, IUmbracoVersion umbracoVersion, IDbProviderFactoryCreator dbProviderFactoryCreator, @@ -42,7 +41,6 @@ namespace Umbraco.Core IBackOfficeInfo backOfficeInfo) { composition.RegisterUnique(logger); - composition.Register(typeof(ILogger<>), typeof(Logger<>)); composition.RegisterUnique(loggerFactory); composition.RegisterUnique(profiler); composition.RegisterUnique(profilingLogger); diff --git a/src/Umbraco.Tests.Integration/ContainerTests.cs b/src/Umbraco.Tests.Integration/ContainerTests.cs index 50661b7f4e..6b4026057b 100644 --- a/src/Umbraco.Tests.Integration/ContainerTests.cs +++ b/src/Umbraco.Tests.Integration/ContainerTests.cs @@ -3,6 +3,7 @@ using LightInject; using LightInject.Microsoft.DependencyInjection; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -21,55 +22,6 @@ namespace Umbraco.Tests.Integration [TestFixture] public class ContainerTests { - [Test] - public void CrossWire() - { - // MSDI - var services = new ServiceCollection(); - services.AddSingleton(); - var msdiServiceProvider = services.BuildServiceProvider(); - - // LightInject / Umbraco - var container = UmbracoServiceProviderFactory.CreateServiceContainer(); - var serviceProviderFactory = new UmbracoServiceProviderFactory(container, false); - var umbracoContainer = serviceProviderFactory.GetContainer(); - serviceProviderFactory.CreateBuilder(services); // called during Host Builder, needed to capture services - - // Dependencies needed for creating composition/register essentials - var testHelper = new TestHelper(); - var runtimeState = Mock.Of(); - var umbracoDatabaseFactory = Mock.Of(); - var dbProviderFactoryCreator = Mock.Of(); - var typeLoader = testHelper.GetMockedTypeLoader(); - - // Register in the container - var composition = new Composition(umbracoContainer, typeLoader, - testHelper.ProfilingLogger, runtimeState, testHelper.IOHelper, testHelper.AppCaches); - composition.RegisterEssentials(testHelper.ConsoleLoggerFactory.CreateLogger("RegisterEssentials"), testHelper.ConsoleLoggerFactory, testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, - testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(), - testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator, - testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo()); - - // Cross wire - this would be called by the Host Builder at the very end of ConfigureServices - var lightInjectServiceProvider = serviceProviderFactory.CreateServiceProvider(umbracoContainer.Container); - - // From MSDI - var foo1 = msdiServiceProvider.GetService(); - var foo2 = lightInjectServiceProvider.GetService(); - var foo3 = umbracoContainer.GetInstance(); - - Assert.IsNotNull(foo1); - Assert.IsNotNull(foo2); - Assert.IsNotNull(foo3); - - // These are not the same because cross wiring means copying the container, not falling back to a container - Assert.AreNotSame(foo1, foo2); - // These are the same because the umbraco container wraps the light inject container - Assert.AreSame(foo2, foo3); - - Assertions.AssertContainer(umbracoContainer.Container); - } - [Explicit("This test just shows that resolving services from the container before the host is done resolves 2 different instances")] [Test] public async Task BuildServiceProvider_Before_Host_Is_Configured() @@ -110,6 +62,58 @@ namespace Umbraco.Tests.Integration } + [Test] + public void CrossWire() + { + // MSDI + var services = new ServiceCollection(); + services.AddSingleton(); + var msdiServiceProvider = services.BuildServiceProvider(); + + // LightInject / Umbraco + var container = UmbracoServiceProviderFactory.CreateServiceContainer(); + var serviceProviderFactory = new UmbracoServiceProviderFactory(container, false); + var umbracoContainer = serviceProviderFactory.GetContainer(); + + serviceProviderFactory.CreateBuilder(services); // called during Host Builder, needed to capture services + + // Dependencies needed for creating composition/register essentials + var testHelper = new TestHelper(); + var runtimeState = Mock.Of(); + var umbracoDatabaseFactory = Mock.Of(); + var dbProviderFactoryCreator = Mock.Of(); + var typeLoader = testHelper.GetMockedTypeLoader(); + var loggerFactory = testHelper.ConsoleLoggerFactory; + var logger = testHelper.ConsoleLoggerFactory.CreateLogger("RegisterEssentials"); + + // Register in the container + var composition = new Composition(umbracoContainer, typeLoader, + testHelper.ProfilingLogger, runtimeState, testHelper.IOHelper, testHelper.AppCaches); + composition.RegisterEssentials(logger, loggerFactory, testHelper.Profiler, testHelper.ProfilingLogger, testHelper.MainDom, + testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(), + testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator, + testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo()); + + // Cross wire - this would be called by the Host Builder at the very end of ConfigureServices + var lightInjectServiceProvider = serviceProviderFactory.CreateServiceProvider(umbracoContainer.Container); + + // From MSDI + var foo1 = msdiServiceProvider.GetService(); + var foo2 = lightInjectServiceProvider.GetService(); + var foo3 = umbracoContainer.GetInstance(); + + Assert.IsNotNull(foo1); + Assert.IsNotNull(foo2); + Assert.IsNotNull(foo3); + + // These are not the same because cross wiring means copying the container, not falling back to a container + Assert.AreNotSame(foo1, foo2); + // These are the same because the umbraco container wraps the light inject container + Assert.AreSame(foo2, foo3); + + Assertions.AssertContainer(umbracoContainer.Container); + } + private class Foo { public Foo() diff --git a/src/Umbraco.Tests.Integration/RuntimeTests.cs b/src/Umbraco.Tests.Integration/RuntimeTests.cs index bc4965fc51..3bfaab8c07 100644 --- a/src/Umbraco.Tests.Integration/RuntimeTests.cs +++ b/src/Umbraco.Tests.Integration/RuntimeTests.cs @@ -88,7 +88,7 @@ namespace Umbraco.Tests.Integration umbracoContainer.Register(x => Options.Create(requestHandlerSettings)); umbracoContainer.Register(x => Options.Create(userPasswordConfigurationSettings)); umbracoContainer.Register(x => Options.Create(webRoutingSettings)); - + umbracoContainer.Register(typeof(ILogger<>), typeof(Logger<>), Lifetime.Singleton); coreRuntime.Start(); Assert.IsTrue(MyComponent.IsInit); diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index 13ed2cb8cd..b269258920 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -140,6 +140,8 @@ namespace Umbraco.Tests.Runtimes { container.Register(Lifetime.Singleton); container.Register(Lifetime.Singleton); + container.Register(typeof(ILogger<>), typeof(Logger<>), Lifetime.Singleton); + var factory = base.Configure(container); return factory; From 7369ffc5fddddeaadaa6b951409132299f1f7415 Mon Sep 17 00:00:00 2001 From: Mole Date: Thu, 24 Sep 2020 10:29:53 +0200 Subject: [PATCH 75/85] Change name of ContentApp back --- .../ContentApps/ContentInfoContentAppFactory.cs | 6 +++--- src/Umbraco.Core/IO/FileSystems.cs | 11 ++++++----- src/Umbraco.Core/Logging/DisposableTimer.cs | 4 ++-- src/Umbraco.Core/Logging/LogProfiler.cs | 4 ++-- 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs b/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs index 56774d652d..abad7f4bf8 100644 --- a/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs +++ b/src/Umbraco.Core/ContentApps/ContentInfoContentAppFactory.cs @@ -23,7 +23,7 @@ namespace Umbraco.Web.ContentApps return _contentApp ?? (_contentApp = new ContentApp { Alias = "umbInfo", - Name = "LogInformation", + Name = "Info", Icon = "icon-info", View = "views/content/apps/info/info.html", Weight = Weight @@ -33,7 +33,7 @@ namespace Umbraco.Web.ContentApps return _mediaApp ?? (_mediaApp = new ContentApp { Alias = "umbInfo", - Name = "LogInformation", + Name = "Info", Icon = "icon-info", View = "views/media/apps/info/info.html", Weight = Weight @@ -42,7 +42,7 @@ namespace Umbraco.Web.ContentApps return _memberApp ?? (_memberApp = new ContentApp { Alias = "umbInfo", - Name = "LogInformation", + Name = "Info", Icon = "icon-info", View = "views/member/apps/info/info.html", Weight = Weight diff --git a/src/Umbraco.Core/IO/FileSystems.cs b/src/Umbraco.Core/IO/FileSystems.cs index 75a43c068f..2ff0e88281 100644 --- a/src/Umbraco.Core/IO/FileSystems.cs +++ b/src/Umbraco.Core/IO/FileSystems.cs @@ -130,11 +130,12 @@ namespace Umbraco.Core.IO // but it does not really matter what we return - here, null private object CreateWellKnownFileSystems() { - var macroPartialFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.MacroPartials); - var partialViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.PartialViews); - var stylesheetsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), _globalSettings.UmbracoCssPath); - var scriptsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), _globalSettings.UmbracoScriptsPath); - var mvcViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, _loggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); + var logger = _loggerFactory.CreateLogger(); + var macroPartialFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, Constants.SystemDirectories.MacroPartials); + var partialViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, Constants.SystemDirectories.PartialViews); + var stylesheetsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, _globalSettings.UmbracoCssPath); + var scriptsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, _globalSettings.UmbracoScriptsPath); + var mvcViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, Constants.SystemDirectories.MvcViews); _macroPartialFileSystem = new ShadowWrapper(macroPartialFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"macro-partials", IsScoped); _partialViewsFileSystem = new ShadowWrapper(partialViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"partials", IsScoped); diff --git a/src/Umbraco.Core/Logging/DisposableTimer.cs b/src/Umbraco.Core/Logging/DisposableTimer.cs index a076d15fae..9fdb93c057 100644 --- a/src/Umbraco.Core/Logging/DisposableTimer.cs +++ b/src/Umbraco.Core/Logging/DisposableTimer.cs @@ -9,7 +9,7 @@ namespace Umbraco.Core.Logging /// public class DisposableTimer : DisposableObjectSlim { - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly LogLevel _level; private readonly Type _loggerType; private readonly int _thresholdMilliseconds; @@ -21,7 +21,7 @@ namespace Umbraco.Core.Logging private readonly string _timingId; // internal - created by profiling logger - internal DisposableTimer(Microsoft.Extensions.Logging.ILogger logger, LogLevel level, IProfiler profiler, Type loggerType, + internal DisposableTimer(ILogger logger, LogLevel level, IProfiler profiler, Type loggerType, string startMessage, string endMessage, string failMessage = null, int thresholdMilliseconds = 0) { diff --git a/src/Umbraco.Core/Logging/LogProfiler.cs b/src/Umbraco.Core/Logging/LogProfiler.cs index 1c4b17ee8a..047331fd3a 100644 --- a/src/Umbraco.Core/Logging/LogProfiler.cs +++ b/src/Umbraco.Core/Logging/LogProfiler.cs @@ -9,9 +9,9 @@ namespace Umbraco.Core.Logging /// public class LogProfiler : IProfiler { - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; - public LogProfiler(Microsoft.Extensions.Logging.ILogger logger) + public LogProfiler(ILogger logger) { _logger = logger; } From b5aedde616eed6e09073baaa091eee4360db3966 Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 28 Sep 2020 08:26:21 +0200 Subject: [PATCH 76/85] Do some ILogger cleaning --- src/Umbraco.Core/Routing/PublishedRouter.cs | 4 ++-- src/Umbraco.Core/Scheduling/KeepAlive.cs | 4 ++-- src/Umbraco.Core/Templates/HtmlUrlParser.cs | 4 ++-- src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs | 1 - .../BatchedDatabaseServerMessenger.cs | 2 +- src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs | 4 ++-- .../Logging/Viewer/LogViewerComposer.cs | 3 ++- .../Persistence/SqlSyntax/SqlServerSyntaxProvider.cs | 2 +- .../Runtime/CoreInitialComposer.cs | 3 ++- .../Scheduling/HealthCheckNotifier.cs | 5 ++--- src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs | 5 ++--- .../Search/BackgroundIndexRebuilder.cs | 6 +++--- src/Umbraco.Infrastructure/Search/ExamineComponent.cs | 4 ++-- .../Sync/DatabaseServerMessenger.cs | 4 ++-- .../PureLiveModelFactory.cs | 4 ++-- src/Umbraco.Tests.Common/TestHelperBase.cs | 2 +- .../Umbraco.Core/Composing/TypeFinderTests.cs | 2 +- .../Umbraco.Core/Published/NestedContentTests.cs | 3 ++- src/Umbraco.Tests/Composing/ComposingTestBase.cs | 2 +- src/Umbraco.Tests/Composing/CompositionTests.cs | 2 +- src/Umbraco.Tests/Composing/TypeLoaderTests.cs | 2 +- src/Umbraco.Tests/IO/FileSystemsTests.cs | 2 +- src/Umbraco.Tests/Persistence/DatabaseContextTests.cs | 4 ++-- .../PublishedContentSnapshotTestBase.cs | 3 ++- .../PublishedContent/PublishedContentTests.cs | 2 +- src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs | 6 +++--- src/Umbraco.Tests/Routing/UmbracoModuleTests.cs | 3 ++- src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs | 2 +- src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs | 6 +++--- src/Umbraco.Tests/TestHelpers/BaseWebTest.cs | 5 +++-- src/Umbraco.Tests/TestHelpers/TestHelper.cs | 3 ++- src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs | 3 ++- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 10 +++++----- src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs | 6 +++--- src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs | 1 - src/Umbraco.Tests/Web/UmbracoHelperTests.cs | 5 +++-- .../UmbracoCoreServiceCollectionExtensions.cs | 2 +- src/Umbraco.Web.Common/Install/InstallApiController.cs | 4 ++-- src/Umbraco.Web.Common/Macros/MacroRenderer.cs | 4 ++-- .../Middleware/UmbracoRequestMiddleware.cs | 6 +++--- .../Profiler/WebProfilerComponent.cs | 2 +- src/Umbraco.Web/Editors/AuthenticationController.cs | 4 ++-- src/Umbraco.Web/Logging/WebProfilerComponent.cs | 2 +- src/Umbraco.Web/Macros/MacroRenderer.cs | 4 ++-- src/Umbraco.Web/Mvc/RenderMvcController.cs | 2 +- src/Umbraco.Web/UmbracoWebService.cs | 2 +- 46 files changed, 83 insertions(+), 78 deletions(-) diff --git a/src/Umbraco.Core/Routing/PublishedRouter.cs b/src/Umbraco.Core/Routing/PublishedRouter.cs index d0f3d73019..21f760f5a0 100644 --- a/src/Umbraco.Core/Routing/PublishedRouter.cs +++ b/src/Umbraco.Core/Routing/PublishedRouter.cs @@ -26,7 +26,7 @@ namespace Umbraco.Web.Routing private readonly IContentLastChanceFinder _contentLastChanceFinder; private readonly IProfilingLogger _profilingLogger; private readonly IVariationContextAccessor _variationContextAccessor; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IPublishedUrlProvider _publishedUrlProvider; private readonly IRequestAccessor _requestAccessor; private readonly IPublishedValueFallback _publishedValueFallback; @@ -44,7 +44,7 @@ namespace Umbraco.Web.Routing IContentLastChanceFinder contentLastChanceFinder, IVariationContextAccessor variationContextAccessor, IProfilingLogger proflog, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IPublishedUrlProvider publishedUrlProvider, IRequestAccessor requestAccessor, IPublishedValueFallback publishedValueFallback, diff --git a/src/Umbraco.Core/Scheduling/KeepAlive.cs b/src/Umbraco.Core/Scheduling/KeepAlive.cs index 957b25b632..9b09a81cc3 100644 --- a/src/Umbraco.Core/Scheduling/KeepAlive.cs +++ b/src/Umbraco.Core/Scheduling/KeepAlive.cs @@ -16,13 +16,13 @@ namespace Umbraco.Web.Scheduling private readonly IRequestAccessor _requestAccessor; private readonly IMainDom _mainDom; private readonly KeepAliveSettings _keepAliveSettings; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _profilingLogger; private readonly IServerRegistrar _serverRegistrar; private static HttpClient _httpClient; public KeepAlive(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IRequestAccessor requestAccessor, IMainDom mainDom, IOptions keepAliveSettings, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger profilingLogger, IServerRegistrar serverRegistrar) + IRequestAccessor requestAccessor, IMainDom mainDom, IOptions keepAliveSettings, ILogger logger, IProfilingLogger profilingLogger, IServerRegistrar serverRegistrar) : base(runner, delayMilliseconds, periodMilliseconds) { _requestAccessor = requestAccessor; diff --git a/src/Umbraco.Core/Templates/HtmlUrlParser.cs b/src/Umbraco.Core/Templates/HtmlUrlParser.cs index 8ebe270437..7f7db6130c 100644 --- a/src/Umbraco.Core/Templates/HtmlUrlParser.cs +++ b/src/Umbraco.Core/Templates/HtmlUrlParser.cs @@ -10,14 +10,14 @@ namespace Umbraco.Web.Templates public sealed class HtmlUrlParser { private readonly ContentSettings _contentSettings; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IIOHelper _ioHelper; private readonly IProfilingLogger _profilingLogger; private static readonly Regex ResolveUrlPattern = new Regex("(=[\"\']?)(\\W?\\~(?:.(?![\"\']?\\s+(?:\\S+)=|[>\"\']))+.)[\"\']?", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace); - public HtmlUrlParser(IOptions contentSettings, Microsoft.Extensions.Logging.ILogger logger ,IProfilingLogger profilingLogger, IIOHelper ioHelper) + public HtmlUrlParser(IOptions contentSettings, ILogger logger ,IProfilingLogger profilingLogger, IIOHelper ioHelper) { _contentSettings = contentSettings.Value; _logger = logger; diff --git a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs index 83f6362f0c..a2b86ba9e5 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs @@ -12,7 +12,6 @@ using Umbraco.Core.IO; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { diff --git a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs index 30b8917d05..693246257a 100644 --- a/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/BatchedDatabaseServerMessenger.cs @@ -33,7 +33,7 @@ namespace Umbraco.Web IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IServerRegistrar serverRegistrar, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index 42431e0240..3ab54e554d 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -16,11 +16,11 @@ namespace Umbraco.Examine public class IndexRebuilder { private readonly IProfilingLogger _pLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IEnumerable _populators; public IExamineManager ExamineManager { get; } - public IndexRebuilder(IProfilingLogger pLogger, Microsoft.Extensions.Logging.ILogger logger, IExamineManager examineManager, IEnumerable populators) + public IndexRebuilder(IProfilingLogger pLogger, ILogger logger, IExamineManager examineManager, IEnumerable populators) { _pLogger = pLogger; _populators = populators; diff --git a/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs b/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs index 4a2aa63c69..797e353fcf 100644 --- a/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs +++ b/src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs @@ -1,4 +1,5 @@ using System.IO; +using Microsoft.Extensions.Logging; using Serilog; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; @@ -16,7 +17,7 @@ namespace Umbraco.Core.Logging.Viewer composition.RegisterUnique(factory => { - return new SerilogJsonLogViewer(factory.GetInstance>(), + return new SerilogJsonLogViewer(factory.GetInstance>(), factory.GetInstance(), factory.GetInstance(), Log.Logger); diff --git a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs index a87c9bdfa6..c24aaf3f7a 100644 --- a/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs +++ b/src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs @@ -106,7 +106,7 @@ namespace Umbraco.Core.Persistence.SqlSyntax } } - internal ServerVersionInfo GetSetVersion(string connectionString, string providerName, Microsoft.Extensions.Logging.ILogger logger) + internal ServerVersionInfo GetSetVersion(string connectionString, string providerName, ILogger logger) { //var factory = DbProviderFactories.GetFactory(providerName); var factory = SqlClientFactory.Instance; diff --git a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs index ec59876655..4eb4d185e7 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreInitialComposer.cs @@ -57,6 +57,7 @@ using IntegerValidator = Umbraco.Core.PropertyEditors.Validators.IntegerValidato using TextStringValueConverter = Umbraco.Core.PropertyEditors.ValueConverters.TextStringValueConverter; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Web.Media; namespace Umbraco.Core.Runtime @@ -148,7 +149,7 @@ namespace Umbraco.Core.Runtime factory.GetInstance(), factory.GetInstance(), factory.GetInstance(), - factory.GetInstance>(), + factory.GetInstance>(), factory.GetInstance(), true, new DatabaseServerMessengerOptions(), factory.GetInstance(), diff --git a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs index 8ed834dd4c..994045404f 100644 --- a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs +++ b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs @@ -8,7 +8,6 @@ using Umbraco.Core.Scoping; using Umbraco.Core.Sync; using Umbraco.Web.HealthCheck; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -19,7 +18,7 @@ namespace Umbraco.Web.Scheduling private readonly HealthCheckNotificationMethodCollection _notifications; private readonly IScopeProvider _scopeProvider; private readonly IProfilingLogger _pLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly HealthChecksSettings _healthChecksSettings; private readonly IServerRegistrar _serverRegistrar; private readonly IRuntimeState _runtimeState; @@ -32,7 +31,7 @@ namespace Umbraco.Web.Scheduling HealthCheckNotificationMethodCollection notifications, IMainDom mainDom, IProfilingLogger pLogger, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, HealthChecksSettings healthChecksSettings, IServerRegistrar serverRegistrar, IRuntimeState runtimeState, diff --git a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs index 7fd8e99a4a..8b5370d755 100644 --- a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs +++ b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs @@ -8,7 +8,6 @@ using Umbraco.Core.Scoping; using Umbraco.Core.Services; using Umbraco.Core.Sync; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -19,11 +18,11 @@ namespace Umbraco.Web.Scheduling private readonly IAuditService _auditService; private readonly LoggingSettings _settings; private readonly IProfilingLogger _pLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IScopeProvider _scopeProvider; public LogScrubber(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, IOptions settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, Microsoft.Extensions.Logging.ILogger logger) + IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, IOptions settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { _mainDom = mainDom; diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index bdd36f50b2..3b76589f01 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -20,7 +20,7 @@ namespace Umbraco.Web.Search private readonly IMainDom _mainDom; // TODO: Remove unused ProfilingLogger? private readonly IProfilingLogger _pLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _hostingEnvironment; private static BackgroundTaskRunner _rebuildOnStartupRunner; @@ -72,12 +72,12 @@ namespace Umbraco.Web.Search private readonly IMainDom _mainDom; private readonly IndexRebuilder _indexRebuilder; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly bool _onlyEmptyIndexes; private readonly int _waitMilliseconds; public RebuildOnStartupTask(IMainDom mainDom, - IndexRebuilder indexRebuilder, Microsoft.Extensions.Logging.ILogger logger, bool onlyEmptyIndexes, int waitMilliseconds = 0) + IndexRebuilder indexRebuilder, ILogger logger, bool onlyEmptyIndexes, int waitMilliseconds = 0) { _mainDom = mainDom; _indexRebuilder = indexRebuilder ?? throw new ArgumentNullException(nameof(indexRebuilder)); diff --git a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs index 184f148069..101d5ffc58 100644 --- a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs +++ b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs @@ -33,7 +33,7 @@ namespace Umbraco.Web.Search private readonly ServiceContext _services; private readonly IMainDom _mainDom; private readonly IProfilingLogger _pLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoIndexesCreator _indexCreator; private readonly BackgroundTaskRunner _indexItemTaskRunner; @@ -43,7 +43,7 @@ namespace Umbraco.Web.Search private const int EnlistPriority = 80; public ExamineComponent(IMainDom mainDom, - IExamineManager examineManager, IProfilingLogger profilingLogger, + IExamineManager examineManager, IProfilingLogger profilingLogger, ILoggerFactory loggerFactory, IScopeProvider scopeProvider, IUmbracoIndexesCreator indexCreator, ServiceContext services, diff --git a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs index 491836567c..16a83f45fe 100644 --- a/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs +++ b/src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs @@ -48,7 +48,7 @@ namespace Umbraco.Core.Sync public DatabaseServerMessengerOptions Options { get; } public DatabaseServerMessenger( - IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, Microsoft.Extensions.Logging.ILogger logger, IServerRegistrar serverRegistrar, + IMainDom mainDom, IScopeProvider scopeProvider, ISqlContext sqlContext, IProfilingLogger proflog, ILogger logger, IServerRegistrar serverRegistrar, bool distributedEnabled, DatabaseServerMessengerOptions options, IHostingEnvironment hostingEnvironment, CacheRefresherCollection cacheRefreshers) : base(distributedEnabled) { @@ -73,7 +73,7 @@ namespace Umbraco.Core.Sync + "] " + Guid.NewGuid().ToString("N").ToUpper(); // make it truly unique } - protected Microsoft.Extensions.Logging.ILogger Logger { get; } + protected ILogger Logger { get; } protected IScopeProvider ScopeProvider { get; } diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index 18a103d4d2..9a732f865f 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -28,7 +28,7 @@ namespace Umbraco.ModelsBuilder.Embedded private volatile bool _hasModels; // volatile 'cos reading outside lock private bool _pendingRebuild; private readonly IProfilingLogger _profilingLogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly FileSystemWatcher _watcher; private int _ver, _skipver; private readonly int _debugLevel; @@ -49,7 +49,7 @@ namespace Umbraco.ModelsBuilder.Embedded public PureLiveModelFactory( Lazy umbracoServices, IProfilingLogger profilingLogger, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IOptions config, IHostingEnvironment hostingEnvironment, IApplicationShutdownRegistry hostingLifetime, diff --git a/src/Umbraco.Tests.Common/TestHelperBase.cs b/src/Umbraco.Tests.Common/TestHelperBase.cs index 6a6b464089..20e660a33d 100644 --- a/src/Umbraco.Tests.Common/TestHelperBase.cs +++ b/src/Umbraco.Tests.Common/TestHelperBase.cs @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Common public TypeLoader GetMockedTypeLoader() { - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); } // public Configs GetConfigs() => GetConfigsFactory().Create(); diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index 33c10190f9..c1deb358a2 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -68,7 +68,7 @@ namespace Umbraco.Tests.Composing // TODO: Is console logger the type of logger we want? private static ILoggerFactory _factory = LoggerFactory.Create(builder => { builder.AddConsole(); }); - private static Microsoft.Extensions.Logging.ILogger GetLogger() + private static ILogger GetLogger() { return _factory.CreateLogger(); } diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/NestedContentTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/NestedContentTests.cs index 7c87ad645c..a3aae7b7dc 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/NestedContentTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/NestedContentTests.cs @@ -2,6 +2,7 @@ using System.Collections; using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; @@ -25,7 +26,7 @@ namespace Umbraco.Tests.Published { private (IPublishedContentType, IPublishedContentType) CreateContentTypes() { - var logger = Mock.Of(); + var logger = Mock.Of(); var loggerFactory = NullLoggerFactory.Instance; var profiler = Mock.Of(); var proflog = new ProfilingLogger(logger, profiler); diff --git a/src/Umbraco.Tests/Composing/ComposingTestBase.cs b/src/Umbraco.Tests/Composing/ComposingTestBase.cs index 22d808bb2a..cc04a235a8 100644 --- a/src/Umbraco.Tests/Composing/ComposingTestBase.cs +++ b/src/Umbraco.Tests/Composing/ComposingTestBase.cs @@ -25,7 +25,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), ProfilingLogger, false, AssembliesToScan); + TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), ProfilingLogger, false, AssembliesToScan); } [TearDown] diff --git a/src/Umbraco.Tests/Composing/CompositionTests.cs b/src/Umbraco.Tests/Composing/CompositionTests.cs index e9b24f1038..1b988ac327 100644 --- a/src/Umbraco.Tests/Composing/CompositionTests.cs +++ b/src/Umbraco.Tests/Composing/CompositionTests.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Composing var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), logger); + var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), logger); var composition = new Composition(mockedRegister, typeLoader, logger, Mock.Of(), TestHelper.IOHelper, AppCaches.NoCache); // create the factory, ensure it is the mocked factory diff --git a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs index 5653887af3..8f11254738 100644 --- a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs +++ b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs @@ -32,7 +32,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); _typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(TestHelper.IOHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), new ProfilingLogger(Mock.Of(), Mock.Of()), false, + Mock.Of(), new ProfilingLogger(Mock.Of(), Mock.Of()), false, // for testing, we'll specify which assemblies are scanned for the PluginTypeResolver // TODO: Should probably update this so it only searches this assembly and add custom types to be found diff --git a/src/Umbraco.Tests/IO/FileSystemsTests.cs b/src/Umbraco.Tests/IO/FileSystemsTests.cs index 15ddc94ae5..bdad3bd0ff 100644 --- a/src/Umbraco.Tests/IO/FileSystemsTests.cs +++ b/src/Umbraco.Tests/IO/FileSystemsTests.cs @@ -36,7 +36,7 @@ namespace Umbraco.Tests.IO composition.Register(_ => Mock.Of()); composition.Register(NullLoggerFactory.Instance); - composition.Register(typeof(Microsoft.Extensions.Logging.ILogger<>), typeof(Logger<>)); + composition.Register(typeof(ILogger<>), typeof(Logger<>)); composition.Register(_ => TestHelper.ShortStringHelper); composition.Register(_ => TestHelper.IOHelper); composition.RegisterUnique(); diff --git a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs index a32c78a1b4..a69eaf849f 100644 --- a/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs +++ b/src/Umbraco.Tests/Persistence/DatabaseContextTests.cs @@ -26,7 +26,7 @@ namespace Umbraco.Tests.Persistence public class DatabaseContextTests { private IUmbracoDatabaseFactory _databaseFactory; - private Microsoft.Extensions.Logging.ILogger _logger; + private ILogger _logger; private ILoggerFactory _loggerFactory; private SqlCeSyntaxProvider _sqlCeSyntaxProvider; private ISqlSyntaxProvider[] _sqlSyntaxProviders; @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Persistence // create the database factory and database context _sqlCeSyntaxProvider = new SqlCeSyntaxProvider(); _sqlSyntaxProviders = new[] { (ISqlSyntaxProvider) _sqlCeSyntaxProvider }; - _logger = Mock.Of>(); + _logger = Mock.Of>(); _loggerFactory = NullLoggerFactory.Instance; _umbracoVersion = TestHelper.GetUmbracoVersion(); var globalSettings = new GlobalSettings(); diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index 91d455ff2d..797f8110e4 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -2,6 +2,7 @@ using System.IO; using System.Linq; using System.Web.Routing; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using Umbraco.Core; @@ -47,7 +48,7 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(f => new PublishedModelFactory(f.GetInstance().GetTypes(), f.GetInstance())); } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index dd4474f169..b63d506cf7 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -97,7 +97,7 @@ namespace Umbraco.Tests.PublishedContent } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index f9046f5298..9b930133cc 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Routing public class TestRuntime : CoreRuntime { public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - : base(globalSettings, connectionStrings,umbracoVersion, ioHelper, Mock.Of(), NullLoggerFactory.Instance, Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + : base(globalSettings, connectionStrings,umbracoVersion, ioHelper, Mock.Of(), NullLoggerFactory.Instance, Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } @@ -111,7 +111,7 @@ namespace Umbraco.Tests.Routing frequest.TemplateModel = template; var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext); - var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>()), ShortStringHelper); + var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>()), ShortStringHelper); handler.GetHandlerForRoute(httpContext.Request.RequestContext, frequest); Assert.AreEqual("RenderMvc", routeData.Values["controller"].ToString()); @@ -152,7 +152,7 @@ namespace Umbraco.Tests.Routing var type = new AutoPublishedContentType(Guid.NewGuid(), 22, "CustomDocument", new PublishedPropertyType[] { }); ContentTypesCache.GetPublishedContentTypeByAlias = alias => type; - var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>(), context => + var handler = new RenderRouteHandler(umbracoContext, new TestControllerFactory(umbracoContextAccessor, Mock.Of>(), context => { return new CustomDocumentController(Factory.GetInstance>(), diff --git a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs index f27b7f5410..5719883a86 100644 --- a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs +++ b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs @@ -1,5 +1,6 @@ using System; using System.Threading; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -23,7 +24,7 @@ namespace Umbraco.Tests.Routing // FIXME: be able to get the UmbracoModule from the container. any reason settings were from testobjects? //create the module - var logger = Mock.Of(); + var logger = Mock.Of(); var globalSettings = new GlobalSettings { ReservedPaths = GlobalSettings.StaticReservedPaths + "~/umbraco" }; var runtime = Umbraco.Core.RuntimeState.Booting(); diff --git a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs index 5973905781..ae93352c09 100644 --- a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Scoping _testObjects = new TestObjects(register); var globalSettings = new GlobalSettings(); - composition.RegisterUnique(factory => new FileSystems(factory, factory.TryGetInstance>(), factory.TryGetInstance(), TestHelper.IOHelper, Microsoft.Extensions.Options.Options.Create(globalSettings), TestHelper.GetHostingEnvironment())); + composition.RegisterUnique(factory => new FileSystems(factory, factory.TryGetInstance>(), factory.TryGetInstance(), TestHelper.IOHelper, Microsoft.Extensions.Options.Options.Create(globalSettings), TestHelper.GetHostingEnvironment())); composition.WithCollectionBuilder(); Current.Reset(); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index 251647cbc5..de6b62fbbf 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -40,17 +40,17 @@ namespace Umbraco.Tests.TestHelpers var container = TestHelper.GetRegister(); var ioHelper = TestHelper.IOHelper; - var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); + var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); var typeFinder = TestHelper.GetTypeFinder(); var typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), + Mock.Of(), logger, false); var composition = new Composition(container, typeLoader, Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); - composition.RegisterUnique(_ => Mock.Of()); + composition.RegisterUnique(_ => Mock.Of()); composition.RegisterUnique(_ => NullLoggerFactory.Instance); composition.RegisterUnique(_ => Mock.Of()); diff --git a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs index 626fc29ad4..51836502fb 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseWebTest.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using System.Threading; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; @@ -105,8 +106,8 @@ namespace Umbraco.Tests.TestHelpers contentFinders ?? new ContentFinderCollection(Enumerable.Empty()), new TestLastChanceFinder(), new TestVariationContextAccessor(), - new ProfilingLogger(Mock.Of(), Mock.Of()), - Mock.Of>(), + new ProfilingLogger(Mock.Of(), Mock.Of()), + Mock.Of>(), Mock.Of(), Mock.Of(), container?.GetInstance() ?? Current.Factory.GetInstance(), diff --git a/src/Umbraco.Tests/TestHelpers/TestHelper.cs b/src/Umbraco.Tests/TestHelpers/TestHelper.cs index 91fcb03e0d..b016b4ebe6 100644 --- a/src/Umbraco.Tests/TestHelpers/TestHelper.cs +++ b/src/Umbraco.Tests/TestHelpers/TestHelper.cs @@ -35,6 +35,7 @@ using Umbraco.Web.Routing; using File = System.IO.File; using Umbraco.Tests.Common.Builders; using Microsoft.Extensions.Options; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration.Models; namespace Umbraco.Tests.TestHelpers @@ -63,7 +64,7 @@ namespace Umbraco.Tests.TestHelpers public override IBackOfficeInfo GetBackOfficeInfo() => new AspNetBackOfficeInfo( new GlobalSettings(), - TestHelper.IOHelper, Mock.Of>(), Options.Create(new WebRoutingSettings())); + TestHelper.IOHelper, Mock.Of>(), Options.Create(new WebRoutingSettings())); public override IHostingEnvironment GetHostingEnvironment() => new AspNetHostingEnvironment(Options.Create(new HostingSettings())); diff --git a/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs b/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs index b26a0e24d8..671af42ef0 100644 --- a/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs +++ b/src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs @@ -4,6 +4,7 @@ using System.Data; using System.Data.Common; using System.Linq; using System.Linq.Expressions; +using Microsoft.Extensions.Logging; using Moq; using Umbraco.Core; using Umbraco.Core.Composing; @@ -44,7 +45,7 @@ namespace Umbraco.Tests.TestHelpers // can create a database - but don't try to use it! if (configured && canConnect) - databaseFactoryMock.Setup(x => x.CreateDatabase()).Returns(GetUmbracoSqlCeDatabase(Mock.Of>())); + databaseFactoryMock.Setup(x => x.CreateDatabase()).Returns(GetUmbracoSqlCeDatabase(Mock.Of>())); return databaseFactoryMock.Object; } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index c44e33755a..1a8912c180 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -65,6 +65,7 @@ using Umbraco.Web.Templates; using Umbraco.Web.Trees; using Current = Umbraco.Web.Composing.Current; using FileSystems = Umbraco.Core.IO.FileSystems; +using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Testing { @@ -205,8 +206,7 @@ namespace Umbraco.Tests.Testing Composition.RegisterUnique(typeof(ILoggerFactory), loggerFactory); Composition.Register(typeof(ILogger<>), typeof(Logger<>)); - // TODO Remove this at some point - Composition.Register(typeof(Microsoft.Extensions.Logging.ILogger), msLogger); + Composition.Register(typeof(ILogger), msLogger); Composition.RegisterUnique(IOHelper); Composition.RegisterUnique(UriUtility); Composition.RegisterUnique(UmbracoVersion); @@ -381,7 +381,7 @@ namespace Umbraco.Tests.Testing .ComposeCoreMappingProfiles(); } - protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) + protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) { switch (option) { @@ -396,13 +396,13 @@ namespace Umbraco.Tests.Testing } } - protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); } // common to all tests = cannot be overriden - private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, Microsoft.Extensions.Logging.ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, new[] { diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index 3ac19fce89..ad4a3d0cca 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -56,7 +56,7 @@ namespace Umbraco.Tests.UmbracoExamine public static MediaIndexPopulator GetMediaIndexRebuilder(PropertyEditorCollection propertyEditors, IMediaService mediaService) { - var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), Mock.Of>(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); + var mediaValueSetBuilder = new MediaValueSetBuilder(propertyEditors, new UrlSegmentProviderCollection(new[] { new DefaultUrlSegmentProvider(TestHelper.ShortStringHelper) }), GetMockUserService(), Mock.Of>(), TestHelper.ShortStringHelper, TestHelper.JsonSerializer); var mediaIndexDataSource = new MediaIndexPopulator(null, mediaService, mediaValueSetBuilder); return mediaIndexDataSource; } @@ -159,7 +159,7 @@ namespace Umbraco.Tests.UmbracoExamine public static IProfilingLogger GetMockProfilingLogger() { - return new ProfilingLogger(Mock.Of(), Mock.Of()); + return new ProfilingLogger(Mock.Of(), Mock.Of()); } public static UmbracoContentIndex GetUmbracoIndexer( @@ -186,7 +186,7 @@ namespace Umbraco.Tests.UmbracoExamine new UmbracoFieldDefinitionCollection(), analyzer, profilingLogger, - Mock.Of(), + Mock.Of(), Mock.Of(), hostingEnvironment, runtimeState, diff --git a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs index 24ff3e6064..c7ab297076 100644 --- a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs @@ -8,7 +8,6 @@ using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Services; using Umbraco.Tests.Common; diff --git a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs index 9485fc5a89..22f891dcec 100644 --- a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs +++ b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs @@ -1,6 +1,7 @@ using System; using System.IO; using System.Text; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -37,8 +38,8 @@ namespace Umbraco.Tests.Web typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), - new ProfilingLogger(Mock.Of(), Mock.Of()) + Mock.Of(), + new ProfilingLogger(Mock.Of(), Mock.Of()) ) ); diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index c28e59b196..607b07a748 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -418,7 +418,7 @@ namespace Umbraco.Extensions // services.AddSingleton(diagnosticContext); var serviceProvider = services.BuildServiceProvider(); loggerFactory = serviceProvider.GetRequiredService(); - return loggerFactory.CreateLogger("Generic Logger"); + return loggerFactory.CreateLogger("Global Logger"); } private static IProfiler GetWebProfiler(Umbraco.Core.Hosting.IHostingEnvironment hostingEnvironment) diff --git a/src/Umbraco.Web.Common/Install/InstallApiController.cs b/src/Umbraco.Web.Common/Install/InstallApiController.cs index 697a110080..8c32796ad8 100644 --- a/src/Umbraco.Web.Common/Install/InstallApiController.cs +++ b/src/Umbraco.Web.Common/Install/InstallApiController.cs @@ -32,10 +32,10 @@ namespace Umbraco.Web.Common.Install private readonly InstallStatusTracker _installStatusTracker; private readonly IUmbracoApplicationLifetime _umbracoApplicationLifetime; private readonly InstallStepCollection _installSteps; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _proflog; - public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, Microsoft.Extensions.Logging.ILogger logger, + public InstallApiController(DatabaseBuilder databaseBuilder, IProfilingLogger proflog, ILogger logger, InstallHelper installHelper, InstallStepCollection installSteps, InstallStatusTracker installStatusTracker, IUmbracoApplicationLifetime umbracoApplicationLifetime) { diff --git a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs index e40917b36d..3c165bfcba 100644 --- a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs @@ -23,7 +23,7 @@ namespace Umbraco.Web.Macros public class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -38,7 +38,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, ILocalizedTextService textService, diff --git a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs index cd52325c76..3544465dfe 100644 --- a/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs +++ b/src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs @@ -22,14 +22,14 @@ namespace Umbraco.Web.Common.Middleware /// public class UmbracoRequestMiddleware : IMiddleware { - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoRequestLifetimeManager _umbracoRequestLifetimeManager; private readonly IUmbracoContextFactory _umbracoContextFactory; private readonly IRequestCache _requestCache; private readonly IBackofficeSecurityFactory _backofficeSecurityFactory; public UmbracoRequestMiddleware( - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IUmbracoRequestLifetimeManager umbracoRequestLifetimeManager, IUmbracoContextFactory umbracoContextFactory, IRequestCache requestCache, @@ -110,7 +110,7 @@ namespace Umbraco.Web.Common.Middleware /// /// /// - private static void DisposeRequestCacheItems(Microsoft.Extensions.Logging.ILogger logger, IRequestCache requestCache, Uri requestUri) + private static void DisposeRequestCacheItems(ILogger logger, IRequestCache requestCache, Uri requestUri) { // do not process if client-side request if (requestUri.IsClientSideRequest()) diff --git a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs index e40fcb20e3..0c10b7d95a 100644 --- a/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs +++ b/src/Umbraco.Web.Common/Profiler/WebProfilerComponent.cs @@ -18,7 +18,7 @@ namespace Umbraco.Web.Common.Profiler private readonly IUmbracoRequestLifetime _umbracoRequestLifetime; private readonly List _terminate = new List(); - public WebProfilerComponent(IProfiler profiler, Microsoft.Extensions.Logging.ILogger logger, IUmbracoRequestLifetime umbracoRequestLifetime, + public WebProfilerComponent(IProfiler profiler, ILogger logger, IUmbracoRequestLifetime umbracoRequestLifetime, IUmbracoApplicationLifetime umbracoApplicationLifetime) { _umbracoRequestLifetime = umbracoRequestLifetime; diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index 1ccb9619d6..b693619d92 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -49,7 +49,7 @@ namespace Umbraco.Web.Editors private BackOfficeSignInManager _signInManager; private readonly IUserPasswordConfiguration _passwordConfiguration; private readonly IHostingEnvironment _hostingEnvironment; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IRuntimeState _runtimeState; private readonly SecuritySettings _securitySettings; private readonly IRequestAccessor _requestAccessor; @@ -64,7 +64,7 @@ namespace Umbraco.Web.Editors ServiceContext services, AppCaches appCaches, IProfilingLogger pLogger, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IRuntimeState runtimeState, UmbracoMapper umbracoMapper, IOptions securitySettings, diff --git a/src/Umbraco.Web/Logging/WebProfilerComponent.cs b/src/Umbraco.Web/Logging/WebProfilerComponent.cs index 692fda5173..0f9eb37138 100755 --- a/src/Umbraco.Web/Logging/WebProfilerComponent.cs +++ b/src/Umbraco.Web/Logging/WebProfilerComponent.cs @@ -13,7 +13,7 @@ namespace Umbraco.Web.Logging private readonly bool _profile; private readonly List _terminate = new List(); - public WebProfilerComponent(IProfiler profiler, Microsoft.Extensions.Logging.ILogger logger) + public WebProfilerComponent(IProfiler profiler, ILogger logger) { _profile = true; diff --git a/src/Umbraco.Web/Macros/MacroRenderer.cs b/src/Umbraco.Web/Macros/MacroRenderer.cs index 77321edbdf..991e314291 100644 --- a/src/Umbraco.Web/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web/Macros/MacroRenderer.cs @@ -22,7 +22,7 @@ namespace Umbraco.Web.Macros internal class MacroRenderer : IMacroRenderer { private readonly IProfilingLogger _plogger; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; private readonly ILocalizedTextService _textService; @@ -38,7 +38,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( IProfilingLogger plogger, - Microsoft.Extensions.Logging.ILogger logger, + ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, ILocalizedTextService textService, diff --git a/src/Umbraco.Web/Mvc/RenderMvcController.cs b/src/Umbraco.Web/Mvc/RenderMvcController.cs index 5d9f916582..42fef69f0f 100644 --- a/src/Umbraco.Web/Mvc/RenderMvcController.cs +++ b/src/Umbraco.Web/Mvc/RenderMvcController.cs @@ -22,7 +22,7 @@ namespace Umbraco.Web.Mvc public class RenderMvcController : UmbracoController, IRenderMvcController { private IPublishedRequest _publishedRequest; - private readonly Microsoft.Extensions.Logging.ILogger _logger; + private readonly ILogger _logger; public RenderMvcController() { diff --git a/src/Umbraco.Web/UmbracoWebService.cs b/src/Umbraco.Web/UmbracoWebService.cs index 6f45ef9f2d..285c9f1803 100644 --- a/src/Umbraco.Web/UmbracoWebService.cs +++ b/src/Umbraco.Web/UmbracoWebService.cs @@ -1,11 +1,11 @@ using System.Web.Mvc; using System.Web.Services; +using Microsoft.Extensions.Logging; using Umbraco.Core.Configuration.Models; using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Web.Composing; using Umbraco.Web.Security; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { From d750d2c2c12a4811cb7ea2e022d7fb7a748535ac Mon Sep 17 00:00:00 2001 From: Mole Date: Mon, 28 Sep 2020 14:59:17 +0200 Subject: [PATCH 77/85] Use generic logger more places and clean up --- src/Umbraco.Core/Composing/Composers.cs | 5 +-- src/Umbraco.Core/Composing/TypeLoader.cs | 7 ++- src/Umbraco.Core/IO/FileSystems.cs | 10 ++--- src/Umbraco.Core/Logging/ProfilingLogger.cs | 1 - .../Scheduling/TempFileCleanup.cs | 5 +-- .../LuceneIndexDiagnostics.cs | 8 ++-- .../LuceneIndexDiagnosticsFactory.cs | 3 +- .../UmbracoContentIndex.cs | 7 ++- .../UmbracoExamineIndex.cs | 7 ++- .../UmbracoExamineIndexDiagnostics.cs | 6 +-- .../UmbracoIndexesCreator.cs | 6 +-- .../UmbracoMemberIndex.cs | 3 +- .../CompositionExtensions_Essentials.cs | 2 - .../Runtime/CoreRuntime.cs | 5 +-- .../Scheduling/SchedulerComponent.cs | 2 +- .../ContentStore.cs | 17 ++++--- src/Umbraco.Tests.Common/TestHelperBase.cs | 2 +- src/Umbraco.Tests/App.config | 2 +- .../Components/ComponentTests.cs | 44 +++++++++---------- .../Composing/ComposingTestBase.cs | 4 +- .../Composing/CompositionTests.cs | 3 +- .../Composing/TypeLoaderTests.cs | 3 +- .../NPocoTests/NPocoBulkInsertTests.cs | 1 - .../PublishedContentSnapshotTestBase.cs | 2 +- .../PublishedContent/PublishedContentTests.cs | 2 +- .../Routing/UmbracoModuleTests.cs | 1 - src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 8 ++-- .../TestHelpers/BaseUsingSqlCeSyntax.cs | 2 +- .../Stubs/TestControllerFactory.cs | 1 - src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 8 ++-- .../UmbracoExamine/IndexInitializer.cs | 4 +- .../Controllers/PluginControllerAreaTests.cs | 2 +- src/Umbraco.Tests/Web/UmbracoHelperTests.cs | 2 +- .../Controllers/ContentControllerBase.cs | 1 - .../Umbraco.Web.BackOffice.csproj | 1 - .../Umbraco.Web.Common.csproj | 1 - src/Umbraco.Web/Composing/Current.cs | 1 - src/Umbraco.Web/Umbraco.Web.csproj | 6 +-- src/Umbraco.Web/UmbracoApplication.cs | 1 - src/Umbraco.Web/UmbracoHttpHandler.cs | 2 +- 40 files changed, 86 insertions(+), 112 deletions(-) diff --git a/src/Umbraco.Core/Composing/Composers.cs b/src/Umbraco.Core/Composing/Composers.cs index eec355e9e7..880b91c61b 100644 --- a/src/Umbraco.Core/Composing/Composers.cs +++ b/src/Umbraco.Core/Composing/Composers.cs @@ -6,7 +6,6 @@ using System.Text; using Umbraco.Core.Collections; using Umbraco.Core.Logging; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Composing { @@ -18,7 +17,7 @@ namespace Umbraco.Core.Composing public class Composers { private readonly Composition _composition; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _profileLogger; private readonly IEnumerable _composerTypes; private readonly IEnumerable _enableDisableAttributes; @@ -40,7 +39,7 @@ namespace Umbraco.Core.Composing /// enableDisableAttributes /// or /// logger - public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, ILogger logger, IProfilingLogger profileLogger) + public Composers(Composition composition, IEnumerable composerTypes, IEnumerable enableDisableAttributes, ILogger logger, IProfilingLogger profileLogger) { _composition = composition ?? throw new ArgumentNullException(nameof(composition)); _composerTypes = composerTypes ?? throw new ArgumentNullException(nameof(composerTypes)); diff --git a/src/Umbraco.Core/Composing/TypeLoader.cs b/src/Umbraco.Core/Composing/TypeLoader.cs index 3e814a054a..c7bac236a6 100644 --- a/src/Umbraco.Core/Composing/TypeLoader.cs +++ b/src/Umbraco.Core/Composing/TypeLoader.cs @@ -12,7 +12,6 @@ using Umbraco.Core.IO; using Umbraco.Core.Logging; using File = System.IO.File; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Composing { @@ -30,7 +29,7 @@ namespace Umbraco.Core.Composing private const string CacheKey = "umbraco-types.list"; private readonly IAppPolicyCache _runtimeCache; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IProfilingLogger _profilingLogger; private readonly Dictionary _types = new Dictionary(); @@ -54,7 +53,7 @@ namespace Umbraco.Core.Composing /// Files storage location. /// A profiling logger. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, IEnumerable assembliesToScan = null) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, IEnumerable assembliesToScan = null) : this(typeFinder, runtimeCache, localTempPath, logger, profilingLogger, true, assembliesToScan) { } @@ -67,7 +66,7 @@ namespace Umbraco.Core.Composing /// A profiling logger. /// Whether to detect changes using hashes. /// - public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, bool detectChanges, IEnumerable assembliesToScan = null) + public TypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, DirectoryInfo localTempPath, ILogger logger, IProfilingLogger profilingLogger, bool detectChanges, IEnumerable assembliesToScan = null) { TypeFinder = typeFinder ?? throw new ArgumentNullException(nameof(typeFinder)); _runtimeCache = runtimeCache ?? throw new ArgumentNullException(nameof(runtimeCache)); diff --git a/src/Umbraco.Core/IO/FileSystems.cs b/src/Umbraco.Core/IO/FileSystems.cs index 2ff0e88281..e5c8caffe7 100644 --- a/src/Umbraco.Core/IO/FileSystems.cs +++ b/src/Umbraco.Core/IO/FileSystems.cs @@ -137,11 +137,11 @@ namespace Umbraco.Core.IO var scriptsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, _globalSettings.UmbracoScriptsPath); var mvcViewsFileSystem = new PhysicalFileSystem(_ioHelper, _hostingEnvironment, logger, Constants.SystemDirectories.MvcViews); - _macroPartialFileSystem = new ShadowWrapper(macroPartialFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"macro-partials", IsScoped); - _partialViewsFileSystem = new ShadowWrapper(partialViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"partials", IsScoped); - _stylesheetsFileSystem = new ShadowWrapper(stylesheetsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"css", IsScoped); - _scriptsFileSystem = new ShadowWrapper(scriptsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"scripts", IsScoped); - _mvcViewsFileSystem = new ShadowWrapper(mvcViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory,"views", IsScoped); + _macroPartialFileSystem = new ShadowWrapper(macroPartialFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory, "macro-partials", IsScoped); + _partialViewsFileSystem = new ShadowWrapper(partialViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory, "partials", IsScoped); + _stylesheetsFileSystem = new ShadowWrapper(stylesheetsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory, "css", IsScoped); + _scriptsFileSystem = new ShadowWrapper(scriptsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory, "scripts", IsScoped); + _mvcViewsFileSystem = new ShadowWrapper(mvcViewsFileSystem, _ioHelper, _hostingEnvironment, _loggerFactory, "views", IsScoped); // TODO: do we need a lock here? _shadowWrappers.Add(_macroPartialFileSystem); diff --git a/src/Umbraco.Core/Logging/ProfilingLogger.cs b/src/Umbraco.Core/Logging/ProfilingLogger.cs index da3efdb5bf..7bf04e3d77 100644 --- a/src/Umbraco.Core/Logging/ProfilingLogger.cs +++ b/src/Umbraco.Core/Logging/ProfilingLogger.cs @@ -25,7 +25,6 @@ namespace Umbraco.Core.Logging /// public ProfilingLogger(ILogger logger, IProfiler profiler) { - // TODO: Use typed logger Logger = logger ?? throw new ArgumentNullException(nameof(logger)); Profiler = profiler ?? throw new ArgumentNullException(nameof(profiler)); } diff --git a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs index 5bd2f667ee..1a8ece78d1 100644 --- a/src/Umbraco.Core/Scheduling/TempFileCleanup.cs +++ b/src/Umbraco.Core/Scheduling/TempFileCleanup.cs @@ -5,7 +5,6 @@ using System.Linq; using Umbraco.Core; using Umbraco.Core.Logging; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.Scheduling { @@ -18,11 +17,11 @@ namespace Umbraco.Web.Scheduling private readonly TimeSpan _age; private readonly IMainDom _mainDom; private readonly IProfilingLogger _profilingLogger; - private readonly ILogger _logger; + private readonly ILogger _logger; public TempFileCleanup(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, IEnumerable tempFolders, TimeSpan age, - IMainDom mainDom, IProfilingLogger profilingLogger, ILogger logger) + IMainDom mainDom, IProfilingLogger profilingLogger, ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { //SystemDirectories.TempFileUploads diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs index 24457e2753..525f7372bf 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs @@ -1,14 +1,12 @@ using System.Collections.Generic; +using Microsoft.Extensions.Logging; using Examine.LuceneEngine.Providers; using Umbraco.Core; -using Umbraco.Core.Logging; using Lucene.Net.Store; using Umbraco.Core.IO; using System.Linq; using Umbraco.Core.Composing; using Umbraco.Core.Hosting; -using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -16,7 +14,7 @@ namespace Umbraco.Examine { private readonly IHostingEnvironment _hostingEnvironment; - public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public LuceneIndexDiagnostics(LuceneIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; Index = index; @@ -24,7 +22,7 @@ namespace Umbraco.Examine } public LuceneIndex Index { get; } - public ILogger Logger { get; } + public ILogger Logger { get; } public int DocumentCount { diff --git a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs index 4c64263041..feeac4bf77 100644 --- a/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs +++ b/src/Umbraco.Examine.Lucene/LuceneIndexDiagnosticsFactory.cs @@ -2,7 +2,6 @@ using Examine.LuceneEngine.Providers; using Microsoft.Extensions.Logging; using Umbraco.Core.Hosting; -using Umbraco.Core.Logging; using Umbraco.Core.IO; namespace Umbraco.Examine @@ -27,7 +26,7 @@ namespace Umbraco.Examine if (!(index is IIndexDiagnostics indexDiag)) { if (index is LuceneIndex luceneIndex) - indexDiag = new LuceneIndexDiagnostics(luceneIndex, _loggerFactory.CreateLogger("LuceneIndexDiagnostics"), _hostingEnvironment); + indexDiag = new LuceneIndexDiagnostics(luceneIndex, _loggerFactory.CreateLogger(), _hostingEnvironment); else indexDiag = base.Create(index); } diff --git a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs index 15ad2f4ebc..0dcf269902 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoContentIndex.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Collections.Specialized; using System.ComponentModel; using System.Linq; +using Microsoft.Extensions.Logging; using Examine; using Umbraco.Core; using Umbraco.Core.Services; @@ -13,8 +14,6 @@ using Umbraco.Core.Logging; using Examine.LuceneEngine; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -23,7 +22,7 @@ namespace Umbraco.Examine /// public class UmbracoContentIndex : UmbracoExamineIndex, IUmbracoContentIndex, IDisposable { - private readonly ILogger _logger; + private readonly ILogger _logger; protected ILocalizationService LanguageService { get; } #region Constructors @@ -49,7 +48,7 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, - ILogger logger, + ILogger logger, ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs index ac5a3f6e56..ceec013eaa 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs @@ -14,7 +14,6 @@ using Umbraco.Core.IO; using Umbraco.Core.Logging; using Directory = Lucene.Net.Store.Directory; using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -24,7 +23,7 @@ namespace Umbraco.Examine /// public abstract class UmbracoExamineIndex : LuceneIndex, IUmbracoIndex, IIndexDiagnostics { - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IRuntimeState _runtimeState; @@ -55,7 +54,7 @@ namespace Umbraco.Examine FieldDefinitionCollection fieldDefinitions, Analyzer defaultAnalyzer, IProfilingLogger profilingLogger, - ILogger logger, + ILogger logger, ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, @@ -72,7 +71,7 @@ namespace Umbraco.Examine if (luceneDirectory is FSDirectory fsDir) LuceneIndexFolder = fsDir.Directory; - _diagnostics = new UmbracoExamineIndexDiagnostics(this, _loggerFactory.CreateLogger("UmbracoExamineIndexDiagnostics"), hostingEnvironment); + _diagnostics = new UmbracoExamineIndexDiagnostics(this, _loggerFactory.CreateLogger(), hostingEnvironment); } private readonly bool _configBased = false; diff --git a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs index 5ee808f315..5952f410fc 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoExamineIndexDiagnostics.cs @@ -1,12 +1,10 @@ using System.Collections.Generic; using System.Linq; +using Microsoft.Extensions.Logging; using Lucene.Net.Store; using Umbraco.Core; using Umbraco.Core.Hosting; using Umbraco.Core.IO; -using Umbraco.Core.Logging; -using Microsoft.Extensions.Logging; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -14,7 +12,7 @@ namespace Umbraco.Examine { private readonly UmbracoExamineIndex _index; - public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) + public UmbracoExamineIndexDiagnostics(UmbracoExamineIndex index, ILogger logger, IHostingEnvironment hostingEnvironment) : base(index, logger, hostingEnvironment) { _index = index; diff --git a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs index a2b86ba9e5..2184108b4a 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoIndexesCreator.cs @@ -79,7 +79,7 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, - LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory.CreateLogger(), LoggerFactory, HostingEnvironment, RuntimeState, @@ -97,7 +97,7 @@ namespace Umbraco.Examine new UmbracoFieldDefinitionCollection(), new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30), ProfilingLogger, - LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory.CreateLogger(), LoggerFactory, HostingEnvironment, RuntimeState, @@ -114,7 +114,7 @@ namespace Umbraco.Examine DirectoryFactory.CreateDirectory(Constants.UmbracoIndexes.MembersIndexPath), new CultureInvariantWhitespaceAnalyzer(), ProfilingLogger, - LoggerFactory.CreateLogger("UmbracoContentIndex"), + LoggerFactory.CreateLogger(), LoggerFactory, HostingEnvironment, RuntimeState, diff --git a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs index 744ef3d333..a753df15ee 100644 --- a/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs +++ b/src/Umbraco.Examine.Lucene/UmbracoMemberIndex.cs @@ -6,7 +6,6 @@ using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Directory = Lucene.Net.Store.Directory; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Examine { @@ -33,7 +32,7 @@ namespace Umbraco.Examine Directory luceneDirectory, Analyzer analyzer, IProfilingLogger profilingLogger, - ILogger logger, + ILogger logger, ILoggerFactory loggerFactory, IHostingEnvironment hostingEnvironment, IRuntimeState runtimeState, diff --git a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs index 615c352d49..a7e7981daf 100644 --- a/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs +++ b/src/Umbraco.Infrastructure/CompositionExtensions_Essentials.cs @@ -5,9 +5,7 @@ using Umbraco.Core.Configuration; using Umbraco.Core.Hosting; using Umbraco.Core.IO; using Umbraco.Core.Logging; -using Umbraco.Core.Migrations; using Umbraco.Core.Persistence; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core { diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index 2055ae83f9..a732fe265a 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -15,7 +15,6 @@ using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Mappers; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Core.Runtime { @@ -176,7 +175,7 @@ namespace Umbraco.Core.Runtime var databaseFactory = CreateDatabaseFactory(); // type finder/loader - var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), RuntimeLoggerFactory.CreateLogger("TypeLoader"), ProfilingLogger); + var typeLoader = new TypeLoader(TypeFinder, AppCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), RuntimeLoggerFactory.CreateLogger(), ProfilingLogger); // re-create the state object with the essential services _state = new RuntimeState(_globalSettings, UmbracoVersion, databaseFactory, RuntimeLoggerFactory.CreateLogger()); @@ -296,7 +295,7 @@ namespace Umbraco.Core.Runtime enableDisableAttributes = typeLoader.GetAssemblyAttributes(typeof(EnableComposerAttribute), typeof(DisableComposerAttribute)); } - var composers = new Composers(composition, composerTypes, enableDisableAttributes, RuntimeLoggerFactory.CreateLogger("Composers"), ProfilingLogger); + var composers = new Composers(composition, composerTypes, enableDisableAttributes, RuntimeLoggerFactory.CreateLogger(), ProfilingLogger); composers.Compose(); } diff --git a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs index bbb0d64de4..41fada0fe2 100644 --- a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs +++ b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs @@ -218,7 +218,7 @@ namespace Umbraco.Web.Scheduling var task = new TempFileCleanup(_fileCleanupRunner, DefaultDelayMilliseconds, OneHourMilliseconds, tempFolderPaths.Select(x=>new DirectoryInfo(x)), TimeSpan.FromDays(1), //files that are over a day old - _mainDom, _pLogger, _loggerFactory.CreateLogger("TempFileCleanup")); + _mainDom, _pLogger, _loggerFactory.CreateLogger()); _scrubberRunner.TryAdd(task); return task; } diff --git a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs index 5a6d2bd9f7..e33381d858 100644 --- a/src/Umbraco.PublishedCache.NuCache/ContentStore.cs +++ b/src/Umbraco.PublishedCache.NuCache/ContentStore.cs @@ -11,7 +11,6 @@ using Umbraco.Core.Exceptions; using Umbraco.Core.Models.PublishedContent; using Umbraco.Core.Scoping; using Umbraco.Web.PublishedCache.NuCache.Snap; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web.PublishedCache.NuCache { @@ -44,7 +43,7 @@ namespace Umbraco.Web.PublishedCache.NuCache // We must keep separate dictionaries for by id and by alias because we track these in snapshot/layers // and it is possible that the alias of a content type can be different for the same id in another layer // whereas the GUID -> INT cross reference can never be different - private readonly ConcurrentDictionary> _contentTypesById; + private readonly ConcurrentDictionary> _contentTypesById; private readonly ConcurrentDictionary> _contentTypesByAlias; private readonly ConcurrentDictionary _contentTypeKeyToIdMap; private readonly ConcurrentDictionary _contentKeyToIdMap; @@ -1063,7 +1062,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var parent = parentLink.Value; // We are doing a null check here but this should no longer be possible because we have a null check in BuildKit - // for the parent.Value property and we'll output a warning. However I'll leave this additional null check in place. + // for the parent.Value property and we'll output a warning. However I'll leave this additional null check in place. // see https://github.com/umbraco/Umbraco-CMS/issues/7868 if (parent == null) throw new PanicException($"A null Value was returned on the {nameof(parentLink)} LinkedNode with id={content.ParentContentId}, potentially your database paths are corrupted."); @@ -1312,7 +1311,7 @@ namespace Umbraco.Web.PublishedCache.NuCache if (_nextGen == false && _genObj != null) return new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _loggerFactory.CreateLogger("Snapshot") + , _loggerFactory.CreateLogger() #endif ); @@ -1348,7 +1347,7 @@ namespace Umbraco.Web.PublishedCache.NuCache var snapshot = new Snapshot(this, _genObj.GetGenRef() #if DEBUG - , _loggerFactory.CreateLogger("Snapshot") + , _loggerFactory.CreateLogger() #endif ); @@ -1362,7 +1361,7 @@ namespace Umbraco.Web.PublishedCache.NuCache public Snapshot LiveSnapshot => new Snapshot(this, _liveGen #if DEBUG - , _loggerFactory.CreateLogger("Snapshot") + , _loggerFactory.CreateLogger() #endif ); @@ -1550,7 +1549,7 @@ namespace Umbraco.Web.PublishedCache.NuCache private readonly GenRef _genRef; private long _gen; #if DEBUG - private readonly ILogger _logger; + private readonly ILogger _logger; #endif //private static int _count; @@ -1558,7 +1557,7 @@ namespace Umbraco.Web.PublishedCache.NuCache internal Snapshot(ContentStore store, GenRef genRef #if DEBUG - , ILogger logger + , ILogger logger #endif ) { @@ -1576,7 +1575,7 @@ namespace Umbraco.Web.PublishedCache.NuCache internal Snapshot(ContentStore store, long gen #if DEBUG - , ILogger logger + , ILogger logger #endif ) { diff --git a/src/Umbraco.Tests.Common/TestHelperBase.cs b/src/Umbraco.Tests.Common/TestHelperBase.cs index 20e660a33d..511b100137 100644 --- a/src/Umbraco.Tests.Common/TestHelperBase.cs +++ b/src/Umbraco.Tests.Common/TestHelperBase.cs @@ -45,7 +45,7 @@ namespace Umbraco.Tests.Common public TypeLoader GetMockedTypeLoader() { - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(IOHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); } // public Configs GetConfigs() => GetConfigsFactory().Create(); diff --git a/src/Umbraco.Tests/App.config b/src/Umbraco.Tests/App.config index 09c025aeb4..2781babfbe 100644 --- a/src/Umbraco.Tests/App.config +++ b/src/Umbraco.Tests/App.config @@ -16,7 +16,7 @@ - + diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs index dd34898a13..f6feed295c 100644 --- a/src/Umbraco.Tests/Components/ComponentTests.cs +++ b/src/Umbraco.Tests/Components/ComponentTests.cs @@ -61,7 +61,7 @@ namespace Umbraco.Tests.Components private static TypeLoader MockTypeLoader() { var ioHelper = TestHelper.IOHelper; - return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); + return new TypeLoader(Mock.Of(), Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); } public static IRuntimeState MockRuntimeState(RuntimeLevel level) @@ -79,7 +79,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - goes away with RuntimeLevel.Unknown @@ -119,7 +119,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 3 is User - stays with RuntimeLevel.Run @@ -135,7 +135,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 21 is required by 20 // => reorder components accordingly @@ -150,7 +150,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // i23 requires 22 // 24, 25 implement i23 @@ -167,7 +167,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); try { @@ -190,7 +190,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = TypeArray(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); // 2 is Core and requires 4 // 13 is required by 1 @@ -227,7 +227,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer1), typeof(Composer5), typeof(Composer5a) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Assert.IsEmpty(Composed); composers.Compose(); @@ -253,7 +253,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer7), typeof(Composer8) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -268,7 +268,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -286,7 +286,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); var builder = composition.WithCollectionBuilder(); @@ -305,32 +305,32 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer10) }; - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); Assert.AreEqual(typeof(Composer10), Composed[0]); types = new[] { typeof(Composer11) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); var requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer2) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); Assert.Throws(() => composers.Compose()); Console.WriteLine("throws:"); - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); requirements = composers.GetRequirements(false); Console.WriteLine(Composers.GetComposersReport(requirements)); types = new[] { typeof(Composer12) }; - composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(1, Composed.Count); @@ -344,7 +344,7 @@ namespace Umbraco.Tests.Components var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache); var types = new[] { typeof(Composer6), typeof(Composer8) }; // 8 disables 7 which is not in the list - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); @@ -360,13 +360,13 @@ namespace Umbraco.Tests.Components var types = new[] { typeof(Composer26) }; var enableDisableAttributes = new[] { new DisableComposerAttribute(typeof(Composer26)) }; - var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(0, Composed.Count); // 26 gone types = new[] { typeof(Composer26), typeof(Composer27) }; // 26 disabled by assembly attribute, enabled by 27 - composers = new Composers(composition, types, enableDisableAttributes, Mock.Of(), Mock.Of()); + composers = new Composers(composition, types, enableDisableAttributes, Mock.Of>(), Mock.Of()); Composed.Clear(); composers.Compose(); Assert.AreEqual(2, Composed.Count); // both @@ -379,7 +379,7 @@ namespace Umbraco.Tests.Components { var ioHelper = TestHelper.IOHelper; var typeFinder = TestHelper.GetTypeFinder(); - var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), Mock.Of()); + var typeLoader = new TypeLoader(typeFinder, AppCaches.Disabled.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), Mock.Of()); var register = MockRegister(); var composition = new Composition(register, typeLoader, Mock.Of(), @@ -387,7 +387,7 @@ namespace Umbraco.Tests.Components var allComposers = typeLoader.GetTypes().ToList(); var types = allComposers.Where(x => x.FullName.StartsWith("Umbraco.Core.") || x.FullName.StartsWith("Umbraco.Web")).ToList(); - var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of(), Mock.Of()); + var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of>(), Mock.Of()); var requirements = composers.GetRequirements(); var report = Composers.GetComposersReport(requirements); Console.WriteLine(report); diff --git a/src/Umbraco.Tests/Composing/ComposingTestBase.cs b/src/Umbraco.Tests/Composing/ComposingTestBase.cs index cc04a235a8..af95c47145 100644 --- a/src/Umbraco.Tests/Composing/ComposingTestBase.cs +++ b/src/Umbraco.Tests/Composing/ComposingTestBase.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.IO; using System.Reflection; +using Microsoft.Extensions.Logging; using Moq; using NUnit.Framework; using Umbraco.Core.Cache; @@ -8,7 +9,6 @@ using Umbraco.Core.Composing; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; using Current = Umbraco.Web.Composing.Current; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { @@ -25,7 +25,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), ProfilingLogger, false, AssembliesToScan); + TypeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), ProfilingLogger, false, AssembliesToScan); } [TearDown] diff --git a/src/Umbraco.Tests/Composing/CompositionTests.cs b/src/Umbraco.Tests/Composing/CompositionTests.cs index 1b988ac327..a078a9bac5 100644 --- a/src/Umbraco.Tests/Composing/CompositionTests.cs +++ b/src/Umbraco.Tests/Composing/CompositionTests.cs @@ -9,7 +9,6 @@ using Umbraco.Core.Composing; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Tests.TestHelpers; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { @@ -42,7 +41,7 @@ namespace Umbraco.Tests.Composing var logger = new ProfilingLogger(Mock.Of(), Mock.Of()); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of(), logger); + var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), Mock.Of>(), logger); var composition = new Composition(mockedRegister, typeLoader, logger, Mock.Of(), TestHelper.IOHelper, AppCaches.NoCache); // create the factory, ensure it is the mocked factory diff --git a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs index 8f11254738..e3bf3fca02 100644 --- a/src/Umbraco.Tests/Composing/TypeLoaderTests.cs +++ b/src/Umbraco.Tests/Composing/TypeLoaderTests.cs @@ -16,7 +16,6 @@ using Umbraco.Core.PropertyEditors; using Umbraco.Tests.TestHelpers; using Umbraco.Web; using Umbraco.Web.PropertyEditors; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Tests.Composing { @@ -32,7 +31,7 @@ namespace Umbraco.Tests.Composing var typeFinder = TestHelper.GetTypeFinder(); _typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(TestHelper.IOHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), new ProfilingLogger(Mock.Of(), Mock.Of()), false, + Mock.Of>(), new ProfilingLogger(Mock.Of(), Mock.Of()), false, // for testing, we'll specify which assemblies are scanned for the PluginTypeResolver // TODO: Should probably update this so it only searches this assembly and add custom types to be found diff --git a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs index 3eb06fff94..a034b94ae0 100644 --- a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs +++ b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs @@ -5,7 +5,6 @@ using System.Linq; using System.Text.RegularExpressions; using Microsoft.Extensions.Logging; using NUnit.Framework; -using Umbraco.Core.Logging; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; using Umbraco.Tests.TestHelpers; diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index 797f8110e4..08a8d2e5a2 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -48,7 +48,7 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(f => new PublishedModelFactory(f.GetInstance().GetTypes(), f.GetInstance())); } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index b63d506cf7..ab18feb242 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -97,7 +97,7 @@ namespace Umbraco.Tests.PublishedContent } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); diff --git a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs index 5719883a86..34bde09c37 100644 --- a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs +++ b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs @@ -5,7 +5,6 @@ using Moq; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Configuration.Models; -using Umbraco.Core.Logging; using Umbraco.Tests.Common.Builders; using Umbraco.Tests.TestHelpers; using Umbraco.Web; diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 8ab14ae582..cba561ac62 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -73,7 +73,7 @@ namespace Umbraco.Tests.Runtimes var databaseFactory = new UmbracoDatabaseFactory(loggerFactory.CreateLogger(), loggerFactory, Options.Create(globalSettings), Options.Create(connectionStrings), new Lazy(() => factory.GetInstance()), TestHelper.DbProviderFactoryCreator); var ioHelper = TestHelper.IOHelper; var hostingEnvironment = Mock.Of(); - var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger("TypeLoader"), profilingLogger); + var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger(), profilingLogger); var mainDom = new SimpleMainDom(); var umbracoVersion = TestHelper.GetUmbracoVersion(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); @@ -97,7 +97,7 @@ namespace Umbraco.Tests.Runtimes var composerTypes = typeLoader.GetTypes() // all of them .Where(x => !x.FullName.StartsWith("Umbraco.Tests.")) // exclude test components .Where(x => x != typeof(WebInitialComposer) && x != typeof(WebFinalComposer)); // exclude web runtime - var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger("Composers"), profilingLogger); + var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger(), profilingLogger); composers.Compose(); // must registers stuff that WebRuntimeComponent would register otherwise @@ -279,7 +279,7 @@ namespace Umbraco.Tests.Runtimes var databaseFactory = Mock.Of(); var typeFinder = TestHelper.GetTypeFinder(); var ioHelper = TestHelper.IOHelper; - var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger("TypeLoader"), profilingLogger); + var typeLoader = new TypeLoader(typeFinder, appCaches.RuntimeCache, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), loggerFactory.CreateLogger(), profilingLogger); var runtimeState = Mock.Of(); var hostingEnvironment = Mock.Of(); var backOfficeInfo = TestHelper.GetBackOfficeInfo(); @@ -307,7 +307,7 @@ namespace Umbraco.Tests.Runtimes .Where(x => !x.FullName.StartsWith("Umbraco.Tests")); // single? //var componentTypes = new[] { typeof(CoreRuntimeComponent) }; - var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger("Composers"), profilingLogger); + var composers = new Composers(composition, composerTypes, Enumerable.Empty(), loggerFactory.CreateLogger(), profilingLogger); // get components to compose themselves composers.Compose(); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs index de6b62fbbf..ca3e3eab3b 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs @@ -44,7 +44,7 @@ namespace Umbraco.Tests.TestHelpers var typeFinder = TestHelper.GetTypeFinder(); var typeLoader = new TypeLoader(typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), + Mock.Of>(), logger, false); diff --git a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs index 3e53c0a182..d0348cf589 100644 --- a/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs +++ b/src/Umbraco.Tests/TestHelpers/Stubs/TestControllerFactory.cs @@ -2,7 +2,6 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; -using System.Runtime.CompilerServices; using System.Web.Mvc; using System.Web.Routing; using System.Web.SessionState; diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index 1a8912c180..7a9292d641 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -194,7 +194,7 @@ namespace Umbraco.Tests.Testing LocalizedTextService = new LocalizedTextService(new Dictionary>(), loggerFactory.CreateLogger()); - var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, msLogger, proflogger, Options.TypeLoader); + var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, loggerFactory.CreateLogger(), proflogger, Options.TypeLoader); var register = TestHelper.GetRegister(); @@ -381,7 +381,7 @@ namespace Umbraco.Tests.Testing .ComposeCoreMappingProfiles(); } - protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) + protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) { switch (option) { @@ -396,13 +396,13 @@ namespace Umbraco.Tests.Testing } } - protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); } // common to all tests = cannot be overriden - private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) { return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, new[] { diff --git a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs index ad4a3d0cca..59ebaa34e8 100644 --- a/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs +++ b/src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs @@ -186,9 +186,9 @@ namespace Umbraco.Tests.UmbracoExamine new UmbracoFieldDefinitionCollection(), analyzer, profilingLogger, - Mock.Of(), + Mock.Of>(), Mock.Of(), - hostingEnvironment, + hostingEnvironment, runtimeState, languageService, validator); diff --git a/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs b/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs index bd4d09b30c..a91a305314 100644 --- a/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs +++ b/src/Umbraco.Tests/Web/Controllers/PluginControllerAreaTests.cs @@ -80,7 +80,7 @@ namespace Umbraco.Tests.Web.Controllers public class Plugin4Controller : PluginController { public Plugin4Controller(IUmbracoContextAccessor umbracoContextAccessor) - : base(umbracoContextAccessor, null, null, null,null) + : base(umbracoContextAccessor, null, null, null, null) { } } diff --git a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs index 22f891dcec..34beee7499 100644 --- a/src/Umbraco.Tests/Web/UmbracoHelperTests.cs +++ b/src/Umbraco.Tests/Web/UmbracoHelperTests.cs @@ -38,7 +38,7 @@ namespace Umbraco.Tests.Web typeFinder, NoAppCache.Instance, new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), - Mock.Of(), + Mock.Of>(), new ProfilingLogger(Mock.Of(), Mock.Of()) ) ); diff --git a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs index 718a065a44..d2b751837c 100644 --- a/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs +++ b/src/Umbraco.Web.BackOffice/Controllers/ContentControllerBase.cs @@ -34,7 +34,6 @@ namespace Umbraco.Web.BackOffice.Controllers protected IShortStringHelper ShortStringHelper { get; } protected IEventMessagesFactory EventMessages { get; } protected ILocalizedTextService LocalizedTextService { get; } - private readonly ILogger _logger; protected ContentControllerBase( diff --git a/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj b/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj index 56edf6693e..d9e4e05b0c 100644 --- a/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj +++ b/src/Umbraco.Web.BackOffice/Umbraco.Web.BackOffice.csproj @@ -15,7 +15,6 @@ - diff --git a/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj b/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj index c39d6f07d2..421621e668 100644 --- a/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj +++ b/src/Umbraco.Web.Common/Umbraco.Web.Common.csproj @@ -22,7 +22,6 @@ - diff --git a/src/Umbraco.Web/Composing/Current.cs b/src/Umbraco.Web/Composing/Current.cs index 64a716b605..44468f2943 100644 --- a/src/Umbraco.Web/Composing/Current.cs +++ b/src/Umbraco.Web/Composing/Current.cs @@ -247,7 +247,6 @@ namespace Umbraco.Web.Composing public static IShortStringHelper ShortStringHelper => Factory.GetInstance(); - // TODO: Use LoggerFactory instead of shared Logger public static ILogger Logger => Factory.GetInstance>(); public static ILoggerFactory LoggerFactory => Factory.GetInstance(); diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index 5ee34121aa..ae1f2e8029 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -24,7 +24,7 @@ prompt 4 false - 8 + latest ..\UnusedCode.ruleset @@ -36,7 +36,7 @@ 4 bin\Release\Umbraco.Web.xml false - 8 + latest @@ -405,4 +405,4 @@ - \ No newline at end of file + diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs index 35b2f0e076..23a78a1bcd 100644 --- a/src/Umbraco.Web/UmbracoApplication.cs +++ b/src/Umbraco.Web/UmbracoApplication.cs @@ -11,7 +11,6 @@ using Umbraco.Core.Logging; using Umbraco.Core.Runtime; using Umbraco.Web.Runtime; using ConnectionStrings = Umbraco.Core.Configuration.Models.ConnectionStrings; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { diff --git a/src/Umbraco.Web/UmbracoHttpHandler.cs b/src/Umbraco.Web/UmbracoHttpHandler.cs index b3ad0227a6..71ecd56361 100644 --- a/src/Umbraco.Web/UmbracoHttpHandler.cs +++ b/src/Umbraco.Web/UmbracoHttpHandler.cs @@ -1,12 +1,12 @@ using System; using System.Web; using System.Web.Mvc; +using Microsoft.Extensions.Logging; using Umbraco.Core.Cache; using Umbraco.Core.Logging; using Umbraco.Core.Services; using Umbraco.Web.Composing; using Umbraco.Web.Security; -using ILogger = Microsoft.Extensions.Logging.ILogger; namespace Umbraco.Web { From 81e2ebda967be6f48853228f3376f8a047db3713 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 29 Sep 2020 10:42:06 +0200 Subject: [PATCH 78/85] Cleanup Signed-off-by: Bjarke Berg --- .../Examine/IndexRebuilder.cs | 6 +++--- .../PropertyEditors/TextOnlyValueEditor.cs | 1 - .../ValueConverters/GridValueConverter.cs | 4 ++-- .../ImageCropperValueConverter.cs | 11 ++++++++--- .../ValueConverters/JsonValueConverter.cs | 8 ++++---- .../Scheduling/HealthCheckNotifier.cs | 8 ++++---- .../Scheduling/LogScrubber.cs | 8 ++++---- .../Scheduling/SchedulerComponent.cs | 14 +++++++------- .../Search/BackgroundIndexRebuilder.cs | 6 +++--- .../Search/ExamineComponent.cs | 6 +++--- .../Testing/IntegrationTestComposer.cs | 4 ++-- .../PublishedContentSnapshotTestBase.cs | 6 +++--- .../PublishedContent/PublishedContentTests.cs | 6 +++--- .../Routing/MediaUrlProviderTests.cs | 3 ++- .../Testing/TestingTests/MockTests.cs | 4 ++-- src/Umbraco.Tests/Testing/UmbracoTestBase.cs | 16 ++++++++-------- src/Umbraco.Web.Common/Macros/MacroRenderer.cs | 10 +++++----- .../Editors/AuthenticationController.cs | 4 ++-- src/Umbraco.Web/Macros/MacroRenderer.cs | 10 +++++----- src/Umbraco.Web/UmbracoHttpHandler.cs | 4 ++-- 20 files changed, 72 insertions(+), 67 deletions(-) diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index 3ab54e554d..a2f2f7ffa7 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -15,14 +15,14 @@ namespace Umbraco.Examine /// public class IndexRebuilder { - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly IEnumerable _populators; public IExamineManager ExamineManager { get; } - public IndexRebuilder(IProfilingLogger pLogger, ILogger logger, IExamineManager examineManager, IEnumerable populators) + public IndexRebuilder(IProfilingLogger profilingLogger , ILogger logger, IExamineManager examineManager, IEnumerable populators) { - _pLogger = pLogger; + _profilingLogger = profilingLogger ; _populators = populators; _logger = logger; ExamineManager = examineManager; diff --git a/src/Umbraco.Infrastructure/PropertyEditors/TextOnlyValueEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/TextOnlyValueEditor.cs index e53c673986..ec48cf8b57 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/TextOnlyValueEditor.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/TextOnlyValueEditor.cs @@ -20,7 +20,6 @@ namespace Umbraco.Web.PropertyEditors /// A method used to format the database value to a value that can be used by the editor /// /// - /// /// /// /// diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs index 2dfcf4bda0..83866d958f 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs @@ -18,8 +18,8 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters { private readonly IGridConfig _config; - public GridValueConverter(PropertyEditorCollection propertyEditors, IGridConfig config) - : base(propertyEditors) + public GridValueConverter(PropertyEditorCollection propertyEditors, IGridConfig config, ILogger logger) + : base(propertyEditors, logger) { _config = config; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs index 1f4bb330e8..b27955210f 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs @@ -2,9 +2,7 @@ using System.Globalization; using Microsoft.Extensions.Logging; using Newtonsoft.Json; -using Umbraco.Core.Composing; using Umbraco.Core.Models.PublishedContent; -using Umbraco.Composing; namespace Umbraco.Core.PropertyEditors.ValueConverters { @@ -14,6 +12,13 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters [DefaultPropertyValueConverter(typeof(JsonValueConverter))] public class ImageCropperValueConverter : PropertyValueConverterBase { + private readonly ILogger _logger; + + public ImageCropperValueConverter(ILogger logger) + { + _logger = logger; + } + /// public override bool IsConverter(IPublishedPropertyType propertyType) => propertyType.EditorAlias.InvariantEquals(Constants.PropertyEditors.Aliases.ImageCropper); @@ -44,7 +49,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters catch (Exception ex) { // cannot deserialize, assume it may be a raw image url - Current.Logger.LogError(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); + _logger.LogError(ex, "Could not deserialize string '{JsonString}' into an image cropper value.", sourceString); value = new ImageCropperValue { Src = sourceString }; } diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs index 972d8f56fe..f5228bd47e 100644 --- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs +++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs @@ -2,9 +2,7 @@ using Microsoft.Extensions.Logging; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -using Umbraco.Core.Composing; using Umbraco.Core.Models.PublishedContent; -using Umbraco.Composing; namespace Umbraco.Core.PropertyEditors.ValueConverters { @@ -18,13 +16,15 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters public class JsonValueConverter : PropertyValueConverterBase { private readonly PropertyEditorCollection _propertyEditors; + private readonly ILogger _logger; /// /// Initializes a new instance of the class. /// - public JsonValueConverter(PropertyEditorCollection propertyEditors) + public JsonValueConverter(PropertyEditorCollection propertyEditors, ILogger logger) { _propertyEditors = propertyEditors; + _logger = logger; } /// @@ -58,7 +58,7 @@ namespace Umbraco.Core.PropertyEditors.ValueConverters } catch (Exception ex) { - Current.Logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); + _logger.LogError(ex, "Could not parse the string '{JsonString}' to a json object", sourceString); } } diff --git a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs index 994045404f..6198e7845d 100644 --- a/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs +++ b/src/Umbraco.Infrastructure/Scheduling/HealthCheckNotifier.cs @@ -17,7 +17,7 @@ namespace Umbraco.Web.Scheduling private readonly HealthCheckCollection _healthChecks; private readonly HealthCheckNotificationMethodCollection _notifications; private readonly IScopeProvider _scopeProvider; - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly HealthChecksSettings _healthChecksSettings; private readonly IServerRegistrar _serverRegistrar; @@ -30,7 +30,7 @@ namespace Umbraco.Web.Scheduling HealthCheckCollection healthChecks, HealthCheckNotificationMethodCollection notifications, IMainDom mainDom, - IProfilingLogger pLogger, + IProfilingLogger profilingLogger , ILogger logger, HealthChecksSettings healthChecksSettings, IServerRegistrar serverRegistrar, @@ -43,7 +43,7 @@ namespace Umbraco.Web.Scheduling _mainDom = mainDom; _scopeProvider = scopeProvider; _runtimeState = runtimeState; - _pLogger = pLogger; + _profilingLogger = profilingLogger ; _logger = logger; _healthChecksSettings = healthChecksSettings; _serverRegistrar = serverRegistrar; @@ -76,7 +76,7 @@ namespace Umbraco.Web.Scheduling // checks can be making service/database calls so we want to ensure the CallContext/Ambient scope // isn't used since that can be problematic. using (var scope = _scopeProvider.CreateScope()) - using (_pLogger.DebugDuration("Health checks executing", "Health checks complete")) + using (_profilingLogger.DebugDuration("Health checks executing", "Health checks complete")) { var healthCheckConfig = _healthChecksSettings; diff --git a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs index 8b5370d755..c1b0b2e6d3 100644 --- a/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs +++ b/src/Umbraco.Infrastructure/Scheduling/LogScrubber.cs @@ -17,12 +17,12 @@ namespace Umbraco.Web.Scheduling private readonly IServerRegistrar _serverRegistrar; private readonly IAuditService _auditService; private readonly LoggingSettings _settings; - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly IScopeProvider _scopeProvider; public LogScrubber(IBackgroundTaskRunner runner, int delayMilliseconds, int periodMilliseconds, - IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, IOptions settings, IScopeProvider scopeProvider, IProfilingLogger pLogger, ILogger logger) + IMainDom mainDom, IServerRegistrar serverRegistrar, IAuditService auditService, IOptions settings, IScopeProvider scopeProvider, IProfilingLogger profilingLogger , ILogger logger) : base(runner, delayMilliseconds, periodMilliseconds) { _mainDom = mainDom; @@ -30,7 +30,7 @@ namespace Umbraco.Web.Scheduling _auditService = auditService; _settings = settings.Value; _scopeProvider = scopeProvider; - _pLogger = pLogger; + _profilingLogger = profilingLogger ; _logger = logger; } @@ -78,7 +78,7 @@ namespace Umbraco.Web.Scheduling // Ensure we use an explicit scope since we are running on a background thread. using (var scope = _scopeProvider.CreateScope()) - using (_pLogger.DebugDuration("Log scrubbing executing", "Log scrubbing complete")) + using (_profilingLogger.DebugDuration("Log scrubbing executing", "Log scrubbing complete")) { _auditService.CleanLogs(GetLogScrubbingMaximumAge(_settings)); scope.Complete(); diff --git a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs index 41fada0fe2..c96071ff04 100644 --- a/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs +++ b/src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs @@ -31,7 +31,7 @@ namespace Umbraco.Web.Scheduling private readonly IServerRegistrar _serverRegistrar; private readonly IContentService _contentService; private readonly IAuditService _auditService; - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _applicationShutdownRegistry; @@ -60,7 +60,7 @@ namespace Umbraco.Web.Scheduling public SchedulerComponent(IRuntimeState runtime, IMainDom mainDom, IServerRegistrar serverRegistrar, IContentService contentService, IAuditService auditService, HealthCheckCollection healthChecks, HealthCheckNotificationMethodCollection notifications, - IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger pLogger, ILoggerFactory loggerFactory, + IScopeProvider scopeProvider, IUmbracoContextFactory umbracoContextFactory, IProfilingLogger profilingLogger , ILoggerFactory loggerFactory, IApplicationShutdownRegistry applicationShutdownRegistry, IOptions healthChecksSettings, IServerMessenger serverMessenger, IRequestAccessor requestAccessor, IOptions loggingSettings, IOptions keepAliveSettings, @@ -73,7 +73,7 @@ namespace Umbraco.Web.Scheduling _contentService = contentService; _auditService = auditService; _scopeProvider = scopeProvider; - _pLogger = pLogger; + _profilingLogger = profilingLogger ; _loggerFactory = loggerFactory; _logger = loggerFactory.CreateLogger(); _applicationShutdownRegistry = applicationShutdownRegistry; @@ -140,7 +140,7 @@ namespace Umbraco.Web.Scheduling var healthCheckConfig = _healthChecksSettings; if (healthCheckConfig.NotificationSettings.Enabled) - tasks.Add(RegisterHealthCheckNotifier(healthCheckConfig, _healthChecks, _notifications, _pLogger)); + tasks.Add(RegisterHealthCheckNotifier(healthCheckConfig, _healthChecks, _notifications, _profilingLogger)); return tasks.ToArray(); }); @@ -150,7 +150,7 @@ namespace Umbraco.Web.Scheduling { // ping/keepalive // on all servers - var task = new KeepAlive(_keepAliveRunner, DefaultDelayMilliseconds, FiveMinuteMilliseconds, _requestAccessor, _mainDom, Options.Create(keepAliveSettings), _loggerFactory.CreateLogger(), _pLogger, _serverRegistrar); + var task = new KeepAlive(_keepAliveRunner, DefaultDelayMilliseconds, FiveMinuteMilliseconds, _requestAccessor, _mainDom, Options.Create(keepAliveSettings), _loggerFactory.CreateLogger(), _profilingLogger, _serverRegistrar); _keepAliveRunner.TryAdd(task); return task; } @@ -194,7 +194,7 @@ namespace Umbraco.Web.Scheduling { // log scrubbing // install on all, will only run on non-replica servers - var task = new LogScrubber(_scrubberRunner, DefaultDelayMilliseconds, LogScrubber.GetLogScrubbingInterval(), _mainDom, _serverRegistrar, _auditService, Options.Create(settings), _scopeProvider, _pLogger, _loggerFactory.CreateLogger()); + var task = new LogScrubber(_scrubberRunner, DefaultDelayMilliseconds, LogScrubber.GetLogScrubbingInterval(), _mainDom, _serverRegistrar, _auditService, Options.Create(settings), _scopeProvider, _profilingLogger, _loggerFactory.CreateLogger()); _scrubberRunner.TryAdd(task); return task; } @@ -218,7 +218,7 @@ namespace Umbraco.Web.Scheduling var task = new TempFileCleanup(_fileCleanupRunner, DefaultDelayMilliseconds, OneHourMilliseconds, tempFolderPaths.Select(x=>new DirectoryInfo(x)), TimeSpan.FromDays(1), //files that are over a day old - _mainDom, _pLogger, _loggerFactory.CreateLogger()); + _mainDom, _profilingLogger, _loggerFactory.CreateLogger()); _scrubberRunner.TryAdd(task); return task; } diff --git a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs index 3b76589f01..3f50c0b38c 100644 --- a/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs @@ -19,16 +19,16 @@ namespace Umbraco.Web.Search private readonly IndexRebuilder _indexRebuilder; private readonly IMainDom _mainDom; // TODO: Remove unused ProfilingLogger? - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly ILoggerFactory _loggerFactory; private readonly IApplicationShutdownRegistry _hostingEnvironment; private static BackgroundTaskRunner _rebuildOnStartupRunner; - public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + public BackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger profilingLogger , ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) { _mainDom = mainDom; - _pLogger = pLogger; + _profilingLogger = profilingLogger ; _loggerFactory = loggerFactory; _logger = loggerFactory.CreateLogger(); _hostingEnvironment = hostingEnvironment; diff --git a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs index 101d5ffc58..46332aa730 100644 --- a/src/Umbraco.Infrastructure/Search/ExamineComponent.cs +++ b/src/Umbraco.Infrastructure/Search/ExamineComponent.cs @@ -32,7 +32,7 @@ namespace Umbraco.Web.Search private readonly IScopeProvider _scopeProvider; private readonly ServiceContext _services; private readonly IMainDom _mainDom; - private readonly IProfilingLogger _pLogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly IUmbracoIndexesCreator _indexCreator; private readonly BackgroundTaskRunner _indexItemTaskRunner; @@ -63,7 +63,7 @@ namespace Umbraco.Web.Search _memberValueSetBuilder = memberValueSetBuilder; _backgroundIndexRebuilder = backgroundIndexRebuilder; _mainDom = mainDom; - _pLogger = profilingLogger; + _profilingLogger = profilingLogger; _logger = loggerFactory.CreateLogger(); _indexCreator = indexCreator; _indexItemTaskRunner = new BackgroundTaskRunner(loggerFactory.CreateLogger>(), applicationShutdownRegistry); @@ -74,7 +74,7 @@ namespace Umbraco.Web.Search //let's deal with shutting down Examine with MainDom var examineShutdownRegistered = _mainDom.Register(() => { - using (_pLogger.TraceDuration("Examine shutting down")) + using (_profilingLogger.TraceDuration("Examine shutting down")) { _examineManager.Dispose(); } diff --git a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs index 3c141a1fb3..83a6938669 100644 --- a/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs +++ b/src/Umbraco.Tests.Integration/Testing/IntegrationTestComposer.cs @@ -90,8 +90,8 @@ namespace Umbraco.Tests.Integration.Testing // replace the default so there is no background index rebuilder private class TestBackgroundIndexRebuilder : BackgroundIndexRebuilder { - public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger pLogger, ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) - : base(mainDom, pLogger, loggerFactory, hostingEnvironment, indexRebuilder) + public TestBackgroundIndexRebuilder(IMainDom mainDom, IProfilingLogger profilingLogger , ILoggerFactory loggerFactory, IApplicationShutdownRegistry hostingEnvironment, IndexRebuilder indexRebuilder) + : base(mainDom, profilingLogger , loggerFactory, hostingEnvironment, indexRebuilder) { } diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs index 08a8d2e5a2..92e17ec9cd 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs @@ -48,11 +48,11 @@ namespace Umbraco.Tests.PublishedContent Composition.RegisterUnique(f => new PublishedModelFactory(f.GetInstance().GetTypes(), f.GetInstance())); } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger profilingLogger , IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, profilingLogger , false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] {typeof(PublishedContentMoreTests).Assembly}) diff --git a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs index ab18feb242..982be79a33 100644 --- a/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs +++ b/src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs @@ -97,11 +97,11 @@ namespace Umbraco.Tests.PublishedContent } - protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected override TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger profilingLogger , IHostingEnvironment hostingEnvironment) { - var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); + var baseLoader = base.CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment); - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, profilingLogger , false, // this is so the model factory looks into the test assembly baseLoader.AssembliesToScan .Union(new[] { typeof(PublishedContentTests).Assembly }) diff --git a/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs b/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs index f16ca63e55..84d0ea17f6 100644 --- a/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs +++ b/src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs @@ -1,5 +1,6 @@ using System; using System.Linq; +using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using Newtonsoft.Json; @@ -190,7 +191,7 @@ namespace Umbraco.Tests.Routing var propertyValueConverters = new PropertyValueConverterCollection(new IPropertyValueConverter[] { new UploadPropertyConverter(), - new ImageCropperValueConverter(), + new ImageCropperValueConverter(Mock.Of>()), }); var publishedModelFactory = Mock.Of(); diff --git a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs index 35889d85b2..017f7022e7 100644 --- a/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs +++ b/src/Umbraco.Tests/Testing/TestingTests/MockTests.cs @@ -105,14 +105,14 @@ namespace Umbraco.Tests.Testing.TestingTests [Test] public void Can_Mock_UmbracoApiController_Dependencies_With_Injected_UmbracoMapper() { - var pLogger = Mock.Of(); + var profilingLogger = Mock.Of(); var memberService = Mock.Of(); var memberTypeService = Mock.Of(); var membershipProvider = new MembersMembershipProvider(memberService, memberTypeService, Mock.Of(), TestHelper.GetHostingEnvironment(), TestHelper.GetIpResolver()); var membershipHelper = new MembershipHelper(Mock.Of(), Mock.Of(), membershipProvider, Mock.Of(), memberService, memberTypeService, Mock.Of(), AppCaches.Disabled, NullLoggerFactory.Instance, ShortStringHelper, Mock.Of()); var umbracoMapper = new UmbracoMapper(new MapDefinitionCollection(new[] { Mock.Of() })); - var umbracoApiController = new FakeUmbracoApiController(new GlobalSettings(), Mock.Of(), Mock.Of(), ServiceContext.CreatePartial(), AppCaches.NoCache, pLogger, Mock.Of(), umbracoMapper, Mock.Of()); + var umbracoApiController = new FakeUmbracoApiController(new GlobalSettings(), Mock.Of(), Mock.Of(), ServiceContext.CreatePartial(), AppCaches.NoCache, profilingLogger , Mock.Of(), umbracoMapper, Mock.Of()); Assert.Pass(); } diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs index c8c75a1a3d..347545068c 100644 --- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs +++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs @@ -386,30 +386,30 @@ namespace Umbraco.Tests.Testing .ComposeCoreMappingProfiles(); } - protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger pLogger, UmbracoTestOptions.TypeLoader option) + protected virtual TypeLoader GetTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, IHostingEnvironment hostingEnvironment, ILogger logger, IProfilingLogger profilingLogger , UmbracoTestOptions.TypeLoader option) { switch (option) { case UmbracoTestOptions.TypeLoader.Default: - return _commonTypeLoader ?? (_commonTypeLoader = CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment)); + return _commonTypeLoader ?? (_commonTypeLoader = CreateCommonTypeLoader(typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment)); case UmbracoTestOptions.TypeLoader.PerFixture: - return _featureTypeLoader ?? (_featureTypeLoader = CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment)); + return _featureTypeLoader ?? (_featureTypeLoader = CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment)); case UmbracoTestOptions.TypeLoader.PerTest: - return CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); + return CreateTypeLoader(ioHelper, typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment); default: throw new ArgumentOutOfRangeException(nameof(option)); } } - protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + protected virtual TypeLoader CreateTypeLoader(IIOHelper ioHelper, ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger profilingLogger , IHostingEnvironment hostingEnvironment) { - return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, pLogger, hostingEnvironment); + return CreateCommonTypeLoader(typeFinder, runtimeCache, logger, profilingLogger , hostingEnvironment); } // common to all tests = cannot be overriden - private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger pLogger, IHostingEnvironment hostingEnvironment) + private static TypeLoader CreateCommonTypeLoader(ITypeFinder typeFinder, IAppPolicyCache runtimeCache, ILogger logger, IProfilingLogger profilingLogger , IHostingEnvironment hostingEnvironment) { - return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, pLogger, false, new[] + return new TypeLoader(typeFinder, runtimeCache, new DirectoryInfo(hostingEnvironment.LocalTempPath), logger, profilingLogger , false, new[] { Assembly.Load("Umbraco.Core"), Assembly.Load("Umbraco.Web"), diff --git a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs index 3c165bfcba..c0d2fdbdd4 100644 --- a/src/Umbraco.Web.Common/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web.Common/Macros/MacroRenderer.cs @@ -22,7 +22,7 @@ namespace Umbraco.Web.Macros { public class MacroRenderer : IMacroRenderer { - private readonly IProfilingLogger _plogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; @@ -37,7 +37,7 @@ namespace Umbraco.Web.Macros private readonly IHttpContextAccessor _httpContextAccessor; public MacroRenderer( - IProfilingLogger plogger, + IProfilingLogger profilingLogger , ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, @@ -51,7 +51,7 @@ namespace Umbraco.Web.Macros IRequestAccessor requestAccessor, IHttpContextAccessor httpContextAccessor) { - _plogger = plogger ?? throw new ArgumentNullException(nameof(plogger)); + _profilingLogger = profilingLogger ?? throw new ArgumentNullException(nameof(profilingLogger )); _logger = logger; _umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor)); _contentSettings = contentSettings.Value ?? throw new ArgumentNullException(nameof(contentSettings)); @@ -223,7 +223,7 @@ namespace Umbraco.Web.Macros if (content == null) throw new ArgumentNullException(nameof(content)); var macroInfo = $"Render Macro: {macro.Name}, cache: {macro.CacheDuration}"; - using (_plogger.DebugDuration(macroInfo, "Rendered Macro.")) + using (_profilingLogger.DebugDuration(macroInfo, "Rendered Macro.")) { // parse macro parameters ie replace the special [#key], [$key], etc. syntaxes foreach (var prop in macro.Properties) @@ -269,7 +269,7 @@ namespace Umbraco.Web.Macros /// private Attempt ExecuteMacroWithErrorWrapper(MacroModel macro, string msgIn, string msgOut, Func getMacroContent, Func msgErr) { - using (_plogger.DebugDuration(msgIn, msgOut)) + using (_profilingLogger.DebugDuration(msgIn, msgOut)) { return ExecuteProfileMacroWithErrorWrapper(macro, msgIn, getMacroContent, msgErr); } diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index b693619d92..e3d0c9c1d0 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -63,7 +63,7 @@ namespace Umbraco.Web.Editors ISqlContext sqlContext, ServiceContext services, AppCaches appCaches, - IProfilingLogger pLogger, + IProfilingLogger profilingLogger , ILogger logger, IRuntimeState runtimeState, UmbracoMapper umbracoMapper, @@ -71,7 +71,7 @@ namespace Umbraco.Web.Editors IPublishedUrlProvider publishedUrlProvider, IRequestAccessor requestAccessor, IEmailSender emailSender) - : base(globalSettings, umbracoContextAccessor, sqlContext, services, appCaches, pLogger, runtimeState, umbracoMapper, publishedUrlProvider) + : base(globalSettings, umbracoContextAccessor, sqlContext, services, appCaches, profilingLogger , runtimeState, umbracoMapper, publishedUrlProvider) { _passwordConfiguration = passwordConfiguration ?? throw new ArgumentNullException(nameof(passwordConfiguration)); _hostingEnvironment = hostingEnvironment ?? throw new ArgumentNullException(nameof(hostingEnvironment)); diff --git a/src/Umbraco.Web/Macros/MacroRenderer.cs b/src/Umbraco.Web/Macros/MacroRenderer.cs index 991e314291..93dc6a14d5 100644 --- a/src/Umbraco.Web/Macros/MacroRenderer.cs +++ b/src/Umbraco.Web/Macros/MacroRenderer.cs @@ -21,7 +21,7 @@ namespace Umbraco.Web.Macros { internal class MacroRenderer : IMacroRenderer { - private readonly IProfilingLogger _plogger; + private readonly IProfilingLogger _profilingLogger; private readonly ILogger _logger; private readonly IUmbracoContextAccessor _umbracoContextAccessor; private readonly ContentSettings _contentSettings; @@ -37,7 +37,7 @@ namespace Umbraco.Web.Macros public MacroRenderer( - IProfilingLogger plogger, + IProfilingLogger profilingLogger , ILogger logger, IUmbracoContextAccessor umbracoContextAccessor, IOptions contentSettings, @@ -51,7 +51,7 @@ namespace Umbraco.Web.Macros IRequestAccessor requestAccessor, IHttpContextAccessor httpContextAccessor) { - _plogger = plogger ?? throw new ArgumentNullException(nameof(plogger)); + _profilingLogger = profilingLogger ?? throw new ArgumentNullException(nameof(profilingLogger )); _logger = logger; _umbracoContextAccessor = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor)); _contentSettings = contentSettings.Value ?? throw new ArgumentNullException(nameof(contentSettings)); @@ -223,7 +223,7 @@ namespace Umbraco.Web.Macros if (content == null) throw new ArgumentNullException(nameof(content)); var macroInfo = $"Render Macro: {macro.Name}, cache: {macro.CacheDuration}"; - using (_plogger.DebugDuration(macroInfo, "Rendered Macro.")) + using (_profilingLogger.DebugDuration(macroInfo, "Rendered Macro.")) { // parse macro parameters ie replace the special [#key], [$key], etc. syntaxes foreach (var prop in macro.Properties) @@ -269,7 +269,7 @@ namespace Umbraco.Web.Macros /// private Attempt ExecuteMacroWithErrorWrapper(MacroModel macro, string msgIn, string msgOut, Func getMacroContent, Func msgErr) { - using (_plogger.DebugDuration(msgIn, msgOut)) + using (_profilingLogger.DebugDuration(msgIn, msgOut)) { return ExecuteProfileMacroWithErrorWrapper(macro, msgIn, getMacroContent, msgErr); } diff --git a/src/Umbraco.Web/UmbracoHttpHandler.cs b/src/Umbraco.Web/UmbracoHttpHandler.cs index 71ecd56361..bd8d4415f4 100644 --- a/src/Umbraco.Web/UmbracoHttpHandler.cs +++ b/src/Umbraco.Web/UmbracoHttpHandler.cs @@ -18,11 +18,11 @@ namespace Umbraco.Web : this(Current.UmbracoContextAccessor, Current.Services, Current.Logger, Current.ProfilingLogger) { } - protected UmbracoHttpHandler(IUmbracoContextAccessor umbracoContextAccessor,ServiceContext service, ILogger logger, IProfilingLogger plogger) + protected UmbracoHttpHandler(IUmbracoContextAccessor umbracoContextAccessor,ServiceContext service, ILogger logger, IProfilingLogger profilingLogger ) { UmbracoContextAccessor = umbracoContextAccessor; Logger = logger; - ProfilingLogger = plogger; + ProfilingLogger = profilingLogger ; Services = service; } From 74f8c6fb74eaf5ad519ed46322895870b17fa707 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 1 Oct 2020 08:15:34 +0200 Subject: [PATCH 79/85] Clean up Signed-off-by: Bjarke Berg --- src/Umbraco.Core/Composing/Current.cs | 3 --- .../Composing/UmbracoServiceProviderFactory.cs | 1 - src/Umbraco.Web/UmbracoApplicationBase.cs | 13 ++++++++----- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 098f176ee3..646e165df9 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -30,7 +30,6 @@ namespace Umbraco.Composing public static IProfiler Profiler => EnsureInitialized(_profiler); public static SecuritySettings SecuritySettings => EnsureInitialized(_securitySettings); public static GlobalSettings GlobalSettings => EnsureInitialized(_globalSettings); - public static ILoggerFactory LoggerFactory => EnsureInitialized(_loggerFactory); public static bool IsInitialized { get; internal set; } @@ -45,7 +44,6 @@ namespace Umbraco.Composing public static void Initialize( ILogger logger, - ILoggerFactory loggerFactory, SecuritySettings securitySettings, GlobalSettings globalSettings, IIOHelper ioHelper, @@ -59,7 +57,6 @@ namespace Umbraco.Composing } _logger = logger ?? throw new ArgumentNullException(nameof(logger)); - _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); _ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper)); _hostingEnvironment = hostingEnvironment ?? throw new ArgumentNullException(nameof(hostingEnvironment)); _backOfficeInfo = backOfficeInfo ?? throw new ArgumentNullException(nameof(backOfficeInfo)); diff --git a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs index 5defb6b69a..70737ab569 100644 --- a/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs +++ b/src/Umbraco.Infrastructure/Composing/UmbracoServiceProviderFactory.cs @@ -89,7 +89,6 @@ namespace Umbraco.Core.Composing // after cross wiring, configure "Current" Current.Initialize( _container.GetInstance>(), - _container.GetInstance(), _container.GetInstance>().Value, _container.GetInstance>().Value, _container.GetInstance(), diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs index 50480f00ce..0be333d28c 100644 --- a/src/Umbraco.Web/UmbracoApplicationBase.cs +++ b/src/Umbraco.Web/UmbracoApplicationBase.cs @@ -36,9 +36,11 @@ namespace Umbraco.Web /// public abstract class UmbracoApplicationBase : HttpApplication { + private readonly ILogger _logger; private readonly SecuritySettings _securitySettings; private readonly GlobalSettings _globalSettings; private readonly ConnectionStrings _connectionStrings; + private readonly IIOHelper _ioHelper; private IRuntime _runtime; private IFactory _factory; private ILoggerFactory _loggerFactory; @@ -61,7 +63,6 @@ namespace Umbraco.Web var backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, ioHelper, _loggerFactory.CreateLogger(), Options.Create(webRoutingSettings)); var profiler = GetWebProfiler(hostingEnvironment); Umbraco.Composing.Current.Initialize(NullLogger.Instance, - _loggerFactory, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); @@ -87,15 +88,17 @@ namespace Umbraco.Web protected UmbracoApplicationBase(ILogger logger, ILoggerFactory loggerFactory, SecuritySettings securitySettings, GlobalSettings globalSettings, ConnectionStrings connectionStrings, IIOHelper ioHelper, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) { + _logger = logger; _securitySettings = securitySettings; _globalSettings = globalSettings; _connectionStrings = connectionStrings; + _ioHelper = ioHelper; _loggerFactory = loggerFactory; if (!Umbraco.Composing.Current.IsInitialized) { Logger = logger; - Umbraco.Composing.Current.Initialize(logger, _loggerFactory, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); + Umbraco.Composing.Current.Initialize(logger, securitySettings, globalSettings, ioHelper, hostingEnvironment, backOfficeInfo, profiler); } } @@ -187,9 +190,9 @@ namespace Umbraco.Web _globalSettings, _connectionStrings, umbracoVersion, - Umbraco.Composing.Current.IOHelper, - Umbraco.Composing.Current.Logger, - Umbraco.Composing.Current.LoggerFactory, + _ioHelper, + _logger, + _loggerFactory, Umbraco.Composing.Current.Profiler, Umbraco.Composing.Current.HostingEnvironment, Umbraco.Composing.Current.BackOfficeInfo); From 849e7179f75537bee08b595e9ebc1809e2f35aec Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 12:41:13 +0200 Subject: [PATCH 80/85] Clean up Signed-off-by: Bjarke Berg --- src/Umbraco.Core/Composing/Current.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Umbraco.Core/Composing/Current.cs b/src/Umbraco.Core/Composing/Current.cs index 646e165df9..003f3ee6a2 100644 --- a/src/Umbraco.Core/Composing/Current.cs +++ b/src/Umbraco.Core/Composing/Current.cs @@ -15,7 +15,6 @@ namespace Umbraco.Composing public static class Current { private static ILogger _logger = new NullLogger(); - private static ILoggerFactory _loggerFactory; private static IIOHelper _ioHelper; private static IHostingEnvironment _hostingEnvironment; private static IBackOfficeInfo _backOfficeInfo; From 33acc05efd2f00a98ceee0ccad8d839d7106a02d Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 14:21:41 +0200 Subject: [PATCH 81/85] Added errors Signed-off-by: Bjarke Berg --- src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs | 4 ++-- src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs index a2f2f7ffa7..bafdfc72f4 100644 --- a/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs +++ b/src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs @@ -66,9 +66,9 @@ namespace Umbraco.Examine { populator.Populate(indexes); } - catch (Exception) + catch (Exception e) { - _logger.LogError("Index populating failed for populator {Populator}", populator.GetType()); + _logger.LogError(e, "Index populating failed for populator {Populator}", populator.GetType()); } } } diff --git a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs index 9a732f865f..e52e438b43 100644 --- a/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs +++ b/src/Umbraco.ModelsBuilder.Embedded/PureLiveModelFactory.cs @@ -311,7 +311,7 @@ namespace Umbraco.ModelsBuilder.Embedded { try { - _logger.LogWarning("Failed to build models.", e); + _logger.LogError(e, "Failed to build models."); _logger.LogWarning("Running without models."); // be explicit _errors.Report("Failed to build PureLive models.", e); } From 170aaa47a99fcd0a58eef56b1ac0ea139b0f8f2c Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 18:43:07 +0200 Subject: [PATCH 82/85] Changed the way we setup logging in integration tests, to respect the test option attribute Signed-off-by: Bjarke Berg --- .../Mapping/ContentTypeModelMappingTests.cs | 2 +- .../Repositories/AuditRepositoryTest.cs | 25 +++++++----- .../Repositories/KeyValueRepositoryTests.cs | 2 +- .../Repositories/LanguageRepositoryTest.cs | 2 +- .../Repositories/MacroRepositoryTest.cs | 39 ++++++++++--------- .../RedirectUrlRepositoryTests.cs | 2 +- .../RelationTypeRepositoryTest.cs | 4 +- .../ServerRegistrationRepositoryTest.cs | 2 +- .../Repositories/TemplateRepositoryTest.cs | 18 ++++----- .../Repositories/UserGroupRepositoryTest.cs | 4 +- .../Repositories/UserRepositoryTest.cs | 6 +-- .../Controllers/ContentControllerTests.cs | 3 -- .../Testing/UmbracoIntegrationTest.cs | 36 +++++++++++------ 13 files changed, 83 insertions(+), 62 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs b/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs index d982d4b291..d7663d6ebc 100644 --- a/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs +++ b/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs @@ -16,7 +16,7 @@ using Umbraco.Web.Models.ContentEditing; namespace Umbraco.Tests.Models.Mapping { [TestFixture] - [UmbracoTest(Mapper = true, Database = UmbracoTestOptions.Database.NewSchemaPerTest)] + [UmbracoTest(Mapper = true, Database = UmbracoTestOptions.Database.NewSchemaPerTest, Logger = UmbracoTestOptions.Logger.Mock)] public class ContentTypeModelMappingTests : UmbracoIntegrationTest { private IDataTypeService _dataTypeService; diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs index 0966dd09d9..24316eb931 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/AuditRepositoryTest.cs @@ -16,6 +16,13 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories [UmbracoTest(Database = UmbracoTestOptions.Database.NewSchemaPerTest, Logger = UmbracoTestOptions.Logger.Console)] public class AuditRepositoryTest : UmbracoIntegrationTest { + private ILogger _logger; + + [SetUp] + public void Prepare() + { + _logger = LoggerFactory.CreateLogger(); + } [Test] public void Can_Add_Audit_Entry() @@ -23,7 +30,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = ScopeProvider.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); repo.Save(new AuditItem(-1, AuditType.System, -1, UmbracoObjectTypes.Document.GetName(), "This is a System audit trail")); var dtos = scope.Database.Fetch("WHERE id > -1"); @@ -39,7 +46,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); for (var i = 0; i < 100; i++) { @@ -52,7 +59,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 10, out var total, Direction.Descending, null, null); @@ -67,7 +74,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); for (var i = 0; i < 100; i++) { @@ -80,7 +87,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); var query = sp.SqlContext.Query().Where(x => x.UserId == -1); @@ -110,7 +117,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); for (var i = 0; i < 100; i++) { @@ -123,7 +130,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 9, out var total, Direction.Descending, new[] { AuditType.Publish }, null) @@ -141,7 +148,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var sp = ScopeProvider; using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); for (var i = 0; i < 100; i++) { @@ -154,7 +161,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories using (var scope = sp.CreateScope()) { - var repo = new AuditRepository((IScopeAccessor)sp, ConsoleLoggerFactory.CreateLogger()); + var repo = new AuditRepository((IScopeAccessor)sp, _logger); var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query(), 0, 8, out var total, Direction.Descending, null, sp.SqlContext.Query().Where(item => item.Comment == "Content created")) diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs index 086edce803..1b5b40cf3c 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/KeyValueRepositoryTests.cs @@ -67,7 +67,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private IKeyValueRepository CreateRepository(IScopeProvider provider) { - return new KeyValueRepository((IScopeAccessor) provider, ConsoleLoggerFactory.CreateLogger()); + return new KeyValueRepository((IScopeAccessor) provider, LoggerFactory.CreateLogger()); } } } diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs index f30d5ea4f5..0b699823cb 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/LanguageRepositoryTest.cs @@ -30,7 +30,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private LanguageRepository CreateRepository(IScopeProvider provider) { - return new LanguageRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings)); + return new LanguageRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(_globalSettings)); } [Test] diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs index 6275a5aca3..901d905686 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/MacroRepositoryTest.cs @@ -16,9 +16,12 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories [UmbracoTest(Database = UmbracoTestOptions.Database.NewSchemaPerTest)] public class MacroRepositoryTest : UmbracoIntegrationTest { + private ILogger _logger; + [SetUp] public void SetUp() { + _logger = LoggerFactory.CreateLogger(); CreateTestData(); } @@ -29,7 +32,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = new Macro(ShortStringHelper, "test1", "Test", "~/views/macropartials/test.cshtml"); @@ -44,7 +47,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = repository.Get(1); macro.Alias = "test2"; @@ -60,7 +63,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Assert Assert.That(repository, Is.Not.Null); @@ -74,7 +77,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var macro = repository.Get(1); @@ -100,7 +103,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var macros = repository.GetMany(); @@ -117,7 +120,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var query = scope.SqlContext.Query().Where(x => x.Alias.ToUpper() == "TEST1"); @@ -135,7 +138,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var query = scope.SqlContext.Query().Where(x => x.Name.StartsWith("Test")); @@ -153,7 +156,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var macro = new Macro(ShortStringHelper, "test", "Test", "~/views/macropartials/test.cshtml"); @@ -174,7 +177,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var macro = repository.Get(2); @@ -209,7 +212,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var macro = repository.Get(3); @@ -230,7 +233,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); // Act var exists = repository.Exists(3); @@ -249,7 +252,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -275,7 +278,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); macro.Properties.Add(new MacroProperty("blah1", "New1", 4, "test.editor")); @@ -300,7 +303,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); macro.Properties.Add(new MacroProperty("blah1", "New1", 4, "test.editor")); @@ -324,7 +327,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = new Macro(ShortStringHelper, "newmacro", "A new macro", "~/views/macropartials/test1.cshtml"); var prop1 = new MacroProperty("blah1", "New1", 4, "test.editor"); @@ -355,7 +358,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -382,7 +385,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); var macro = repository.Get(1); macro.Properties.Add(new MacroProperty("new1", "New1", 3, "test")); @@ -404,7 +407,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) provider, AppCaches.Disabled, _logger, ShortStringHelper); repository.Save(new Macro(ShortStringHelper, "test1", "Test1", "~/views/macropartials/test1.cshtml")); repository.Save(new Macro(ShortStringHelper, "test2", "Test2", "~/views/macropartials/test2.cshtml")); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs index 46011cf1be..ea3bbfb166 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/RedirectUrlRepositoryTests.cs @@ -188,7 +188,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private IRedirectUrlRepository CreateRepository(IScopeProvider provider) { - return new RedirectUrlRepository((IScopeAccessor) provider, AppCaches, ConsoleLoggerFactory.CreateLogger()); + return new RedirectUrlRepository((IScopeAccessor) provider, AppCaches, LoggerFactory.CreateLogger()); } private IContent _textpage, _subpage, _otherpage, _trashed; diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs index 5e4a58cab8..6a93d73713 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/RelationTypeRepositoryTest.cs @@ -23,7 +23,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private RelationTypeRepository CreateRepository(IScopeProvider provider) { - return new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); + return new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger()); } [Test] @@ -222,7 +222,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var provider = ScopeProvider; using (var scope = provider.CreateScope()) { - var repository = new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); + var repository = new RelationTypeRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger()); repository.Save(relateContent);//Id 2 repository.Save(relateContentType);//Id 3 diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs index 63aec686b6..3107770672 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/ServerRegistrationRepositoryTest.cs @@ -27,7 +27,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private ServerRegistrationRepository CreateRepository(IScopeProvider provider) { - return new ServerRegistrationRepository((IScopeAccessor) provider, ConsoleLoggerFactory.CreateLogger()); + return new ServerRegistrationRepository((IScopeAccessor) provider, LoggerFactory.CreateLogger()); } [Test] diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs index a8a9fe4db9..5f7c160ed4 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/TemplateRepositoryTest.cs @@ -31,7 +31,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories private ITemplateRepository CreateRepository(IScopeProvider provider) { - return new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), _fileSystems, IOHelper, ShortStringHelper); + return new TemplateRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), _fileSystems, IOHelper, ShortStringHelper); } [SetUp] @@ -39,7 +39,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { var testHelper = new TestHelper(); _fileSystems = Mock.Of(); - var viewsFileSystem = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), ConsoleLoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); + var viewsFileSystem = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), LoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); Mock.Get(_fileSystems).Setup(x => x.MvcViewsFileSystem).Returns(viewsFileSystem); } @@ -262,16 +262,16 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { var templateRepository = CreateRepository(provider); var globalSettings = new GlobalSettings(); - var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); + var tagRepository = new TagRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var commonRepository = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches, ShortStringHelper); - var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); - var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); - var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger()); + var languageRepository = new LanguageRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Microsoft.Extensions.Options.Options.Create(globalSettings)); + var contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), commonRepository, languageRepository, ShortStringHelper); + var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger()); var entityRepository = new EntityRepository(scopeAccessor); - var relationRepository = new RelationRepository(scopeAccessor, ConsoleLoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); + var relationRepository = new RelationRepository(scopeAccessor, LoggerFactory.CreateLogger(), relationTypeRepository, entityRepository); var propertyEditors = new Lazy(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty()))); var dataValueReferences = new DataValueReferenceFactoryCollection(Enumerable.Empty()); - var contentRepo = new DocumentRepository(scopeAccessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, dataTypeService); + var contentRepo = new DocumentRepository(scopeAccessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences, dataTypeService); var contentType = MockedContentTypes.CreateSimpleContentType("umbTextpage2", "Textpage"); fileService.SaveTemplate(contentType.DefaultTemplate); // else, FK violation on contentType! @@ -571,7 +571,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories _fileSystems = null; //Delete all files - var fsViews = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), ConsoleLoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); + var fsViews = new PhysicalFileSystem(IOHelper, testHelper.GetHostingEnvironment(), LoggerFactory.CreateLogger(), Constants.SystemDirectories.MvcViews); var views = fsViews.GetFiles("", "*.cshtml"); foreach (var file in views) fsViews.DeleteFile(file); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs index 3de8a2e5d5..d1e0711d58 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserGroupRepositoryTest.cs @@ -17,7 +17,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories { private UserGroupRepository CreateRepository(IScopeProvider provider) { - return new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); + return new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, ShortStringHelper); } [Test] @@ -128,7 +128,7 @@ namespace Umbraco.Tests.Integration.Persistence.Repositories var id = userGroup.Id; - var repository2 = new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); + var repository2 = new UserGroupRepository((IScopeAccessor) provider, Core.Cache.AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, ShortStringHelper); repository2.Delete(userGroup); scope.Complete(); diff --git a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs index 8d8736adc2..1485425026 100644 --- a/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs +++ b/src/Umbraco.Tests.Integration/Persistence/Repositories/UserRepositoryTest.cs @@ -27,14 +27,14 @@ namespace Umbraco.Tests.Persistence.Repositories private UserRepository CreateRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - var repository = new UserRepository(accessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Mappers, Options.Create(GlobalSettings), Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); + var repository = new UserRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), Mappers, Options.Create(GlobalSettings), Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); return repository; } private UserGroupRepository CreateUserGroupRepository(IScopeProvider provider) { var accessor = (IScopeAccessor) provider; - return new UserGroupRepository(accessor, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), ConsoleLoggerFactory, ShortStringHelper); + return new UserGroupRepository(accessor, AppCaches.Disabled, LoggerFactory.CreateLogger(), LoggerFactory, ShortStringHelper); } [Test] @@ -119,7 +119,7 @@ namespace Umbraco.Tests.Persistence.Repositories var id = user.Id; - var repository2 = new UserRepository((IScopeAccessor) provider, AppCaches.Disabled, ConsoleLoggerFactory.CreateLogger(), Mock.Of(), Options.Create(GlobalSettings), Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); + var repository2 = new UserRepository((IScopeAccessor) provider, AppCaches.Disabled, LoggerFactory.CreateLogger(), Mock.Of(), Options.Create(GlobalSettings), Options.Create(new UserPasswordConfigurationSettings()), new JsonNetSerializer()); repository2.Delete(user); diff --git a/src/Umbraco.Tests.Integration/TestServerTest/Controllers/ContentControllerTests.cs b/src/Umbraco.Tests.Integration/TestServerTest/Controllers/ContentControllerTests.cs index 85bdfae8fa..731079da7c 100644 --- a/src/Umbraco.Tests.Integration/TestServerTest/Controllers/ContentControllerTests.cs +++ b/src/Umbraco.Tests.Integration/TestServerTest/Controllers/ContentControllerTests.cs @@ -5,15 +5,12 @@ using System.Threading.Tasks; using Newtonsoft.Json; using NUnit.Framework; using Umbraco.Core; -using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Services; using Umbraco.Tests.Common.Builders; using Umbraco.Tests.Common.Builders.Extensions; -using Umbraco.Tests.Testing; using Umbraco.Web.BackOffice.Controllers; using Umbraco.Web.Common.Formatters; -using Umbraco.Web.Editors; using Umbraco.Web.Models.ContentEditing; namespace Umbraco.Tests.Integration.TestServerTest.Controllers diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 9df645d7ae..5936b52b50 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -31,6 +31,7 @@ using System.IO; using Umbraco.Core.Configuration.Models; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Serilog; using Umbraco.Core.Logging.Serilog; using ConnectionStrings = Umbraco.Core.Configuration.Models.ConnectionStrings; @@ -49,7 +50,7 @@ namespace Umbraco.Tests.Integration.Testing [NonParallelizable] public abstract class UmbracoIntegrationTest { - + public static LightInjectContainer CreateUmbracoContainer(out UmbracoServiceProviderFactory serviceProviderFactory) { var container = UmbracoServiceProviderFactory.CreateServiceContainer(); @@ -97,6 +98,27 @@ namespace Umbraco.Tests.Integration.Testing #region Generic Host Builder and Runtime + private ILoggerFactory CreateLoggerFactory() + { + ILoggerFactory factory; + var testOptions = TestOptionAttributeBase.GetTestOptions(); + switch (testOptions.Logger) + { + case UmbracoTestOptions.Logger.Mock: + factory = NullLoggerFactory.Instance; + break; + case UmbracoTestOptions.Logger.Serilog: + factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddSerilog(); }); + break; + case UmbracoTestOptions.Logger.Console: + factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddConsole(); }); + break; + default: + throw new NotSupportedException($"Logger option {testOptions.Logger} is not supported."); + } + + return factory; + } /// /// Create the Generic Host and execute startup ConfigureServices/Configure calls /// @@ -106,9 +128,6 @@ namespace Umbraco.Tests.Integration.Testing UmbracoContainer = CreateUmbracoContainer(out var serviceProviderFactory); _serviceProviderFactory = serviceProviderFactory; // TODO: Is this the right way to do this? - var loggerConfig = new LoggerConfiguration().WriteTo.Console(); - var logger = new SerilogLogger(loggerConfig); - var hostBuilder = Host.CreateDefaultBuilder() // IMPORTANT: We Cannot use UseStartup, there's all sorts of threads about this with testing. Although this can work // if you want to setup your tests this way, it is a bit annoying to do that as the WebApplicationFactory will @@ -122,9 +141,9 @@ namespace Umbraco.Tests.Integration.Testing Configuration = context.Configuration; configBuilder.AddInMemoryCollection(InMemoryConfiguration); }) - .UseSerilog(logger.SerilogLog, false) .ConfigureServices((hostContext, services) => { + services.AddTransient(_ => CreateLoggerFactory()); ConfigureServices(services); }); return hostBuilder; @@ -436,15 +455,10 @@ namespace Umbraco.Tests.Integration.Testing /// protected IScopeAccessor ScopeAccessor => Services.GetRequiredService(); - /// - /// Returns the - /// - protected ILogger Logger => Services.GetRequiredService(); - /// /// Returns the /// - protected ILoggerFactory ConsoleLoggerFactory => Services.GetRequiredService(); + protected ILoggerFactory LoggerFactory => Services.GetRequiredService(); protected AppCaches AppCaches => Services.GetRequiredService(); protected IIOHelper IOHelper => Services.GetRequiredService(); From 18828951a662f992b2f0213f6aa0f7480086fb1d Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 20:04:13 +0200 Subject: [PATCH 83/85] Clean up Signed-off-by: Bjarke Berg --- .../Mapping/ContentTypeModelMappingTests.cs | 4 +--- .../Services/MacroServiceTests.cs | 5 +++-- .../Testing/LocalDbTestDatabase.cs | 8 ++++++-- .../Testing/UmbracoIntegrationTest.cs | 2 +- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs b/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs index d7663d6ebc..0b7a702b44 100644 --- a/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs +++ b/src/Umbraco.Tests.Integration/Mapping/ContentTypeModelMappingTests.cs @@ -16,13 +16,12 @@ using Umbraco.Web.Models.ContentEditing; namespace Umbraco.Tests.Models.Mapping { [TestFixture] - [UmbracoTest(Mapper = true, Database = UmbracoTestOptions.Database.NewSchemaPerTest, Logger = UmbracoTestOptions.Logger.Mock)] + [UmbracoTest(Mapper = true, Database = UmbracoTestOptions.Database.NewSchemaPerTest)] public class ContentTypeModelMappingTests : UmbracoIntegrationTest { private IDataTypeService _dataTypeService; private UmbracoMapper _sut; private IFileService _fileService; - private IEntityService _entityService; [SetUp] @@ -31,7 +30,6 @@ namespace Umbraco.Tests.Models.Mapping _sut = Services.GetRequiredService(); _dataTypeService = Services.GetRequiredService(); _fileService = Services.GetRequiredService(); - _entityService = Services.GetRequiredService(); } [Test] diff --git a/src/Umbraco.Tests.Integration/Services/MacroServiceTests.cs b/src/Umbraco.Tests.Integration/Services/MacroServiceTests.cs index 254a7afbb4..2a5c3b0a9c 100644 --- a/src/Umbraco.Tests.Integration/Services/MacroServiceTests.cs +++ b/src/Umbraco.Tests.Integration/Services/MacroServiceTests.cs @@ -25,9 +25,10 @@ namespace Umbraco.Tests.Integration.Services [SetUp] public void SetupTest() { - using (var scope = ScopeProvider.CreateScope()) + var scopeProvider = ScopeProvider; + using (var scope = scopeProvider.CreateScope()) { - var repository = new MacroRepository((IScopeAccessor) sp, AppCaches.Disabled, Mock.Of>(), ShortStringHelper); + var repository = new MacroRepository((IScopeAccessor) scopeProvider, AppCaches.Disabled, Mock.Of>(), ShortStringHelper); repository.Save(new Macro(ShortStringHelper, "test1", "Test1", "~/views/macropartials/test1.cshtml")); repository.Save(new Macro(ShortStringHelper, "test2", "Test2", "~/views/macropartials/test2.cshtml")); diff --git a/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs b/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs index 10f8621b1a..39f9ca5592 100644 --- a/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs +++ b/src/Umbraco.Tests.Integration/Testing/LocalDbTestDatabase.cs @@ -236,10 +236,10 @@ namespace Umbraco.Tests.Integration.Testing action(); return; } - catch (SqlException e) + catch (SqlException) { - Console.Error.WriteLine($"SqlException occured, but we try again {i+1}/{maxIterations}.\n{e}"); + //Console.Error.WriteLine($"SqlException occured, but we try again {i+1}/{maxIterations}.\n{e}"); // This can occur when there's a transaction deadlock which means (i think) that the database is still in use and hasn't been closed properly yet // so we need to just wait a little bit Thread.Sleep(100 * i); @@ -249,6 +249,10 @@ namespace Umbraco.Tests.Integration.Testing throw; } } + catch (InvalidOperationException) + { + + } } } diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index f2cb917ed1..30b5545aa3 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -128,7 +128,7 @@ namespace Umbraco.Tests.Integration.Testing { UmbracoContainer = CreateUmbracoContainer(out var serviceProviderFactory); _serviceProviderFactory = serviceProviderFactory; - // TODO: Is this the right way to do this? + var hostBuilder = Host.CreateDefaultBuilder() // IMPORTANT: We Cannot use UseStartup, there's all sorts of threads about this with testing. Although this can work // if you want to setup your tests this way, it is a bit annoying to do that as the WebApplicationFactory will From 413b410bfb3a190c3393e2031b133100fc5a7fdb Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 20:10:54 +0200 Subject: [PATCH 84/85] use mocks in unit test instead of real console logger Signed-off-by: Bjarke Berg --- .../Umbraco.Core/Composing/TypeFinderTests.cs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index c1deb358a2..bbc4330843 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -2,6 +2,7 @@ using System.Linq; using System.Reflection; using Microsoft.Extensions.Logging; +using Moq; using NUnit.Framework; using Umbraco.Core.Composing; using Umbraco.Core.Logging; @@ -40,7 +41,7 @@ namespace Umbraco.Tests.Composing [Test] public void Find_Class_Of_Type_With_Attribute() { - var typeFinder = new TypeFinder(GetLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder = new TypeFinder(Mock.Of>(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var typesFound = typeFinder.FindClassesOfTypeWithAttribute(_assemblies); Assert.AreEqual(2, typesFound.Count()); } @@ -48,7 +49,7 @@ namespace Umbraco.Tests.Composing [Test] public void Find_Classes_With_Attribute() { - var typeFinder = new TypeFinder(GetLogger(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); + var typeFinder = new TypeFinder(Mock.Of>(), new DefaultUmbracoAssemblyProvider(GetType().Assembly), new VaryingRuntimeHash()); var typesFound = typeFinder.FindClassesWithAttribute(_assemblies); Assert.AreEqual(0, typesFound.Count()); // 0 classes in _assemblies are marked with [Tree] @@ -66,13 +67,6 @@ namespace Umbraco.Tests.Composing return new ProfilingLogger(logger, profiler); } - // TODO: Is console logger the type of logger we want? - private static ILoggerFactory _factory = LoggerFactory.Create(builder => { builder.AddConsole(); }); - private static ILogger GetLogger() - { - return _factory.CreateLogger(); - } - [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public class MyTestAttribute : Attribute { From 3551d6e65ec1c831cb02ed4c759b97d41d169a53 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 6 Oct 2020 21:23:15 +0200 Subject: [PATCH 85/85] Clean up and fixed todos Signed-off-by: Bjarke Berg --- .../Runtime/CoreRuntime.cs | 5 +-- src/Umbraco.Tests.Integration/RuntimeTests.cs | 2 +- .../UmbracoBuilderExtensions.cs | 5 +-- .../Testing/UmbracoIntegrationTest.cs | 6 +-- .../Umbraco.Core/Composing/TypeFinderTests.cs | 7 --- .../Migrations/AdvancedMigrationTests.cs | 2 +- src/Umbraco.Tests/Models/ContentTests.cs | 8 +--- .../NPocoTests/NPocoBulkInsertTests.cs | 3 +- .../Routing/RenderRouteHandlerTests.cs | 2 +- .../Runtimes/CoreRuntimeTests.cs | 24 +++------- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 4 +- .../Scheduling/BackgroundTaskRunnerTests2.cs | 3 +- .../Scoping/ScopeEventDispatcherTests.cs | 18 ++++---- .../Services/ContentServicePerformanceTest.cs | 5 ++- .../Services/PerformanceTests.cs | 8 +--- .../UmbracoCoreServiceCollectionExtensions.cs | 44 +++++++------------ .../Editors/AuthenticationController.cs | 6 +-- src/Umbraco.Web/Security/MembershipHelper.cs | 2 +- src/Umbraco.Web/UmbracoApplication.cs | 2 +- 19 files changed, 58 insertions(+), 98 deletions(-) diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs index a732fe265a..4f921aa0c7 100644 --- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs +++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs @@ -38,7 +38,6 @@ namespace Umbraco.Core.Runtime ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, - ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IUmbracoBootPermissionChecker umbracoBootPermissionChecker, @@ -63,7 +62,7 @@ namespace Umbraco.Core.Runtime RuntimeLoggerFactory = loggerFactory; _umbracoBootPermissionChecker = umbracoBootPermissionChecker; - Logger = logger; + Logger = loggerFactory.CreateLogger(); MainDom = mainDom; TypeFinder = typeFinder; @@ -75,7 +74,7 @@ namespace Umbraco.Core.Runtime /// /// Gets the logger. /// - public ILogger Logger { get; } + private ILogger Logger { get; } public ILoggerFactory RuntimeLoggerFactory { get; } diff --git a/src/Umbraco.Tests.Integration/RuntimeTests.cs b/src/Umbraco.Tests.Integration/RuntimeTests.cs index 3bfaab8c07..87b1bdd198 100644 --- a/src/Umbraco.Tests.Integration/RuntimeTests.cs +++ b/src/Umbraco.Tests.Integration/RuntimeTests.cs @@ -58,7 +58,7 @@ namespace Umbraco.Tests.Integration // Create the core runtime var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, testHelper.GetUmbracoVersion(), - testHelper.IOHelper, testHelper.ConsoleLoggerFactory.CreateLogger("CoreRunTime"), testHelper.ConsoleLoggerFactory, testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, + testHelper.IOHelper, testHelper.ConsoleLoggerFactory, testHelper.Profiler, testHelper.UmbracoBootPermissionChecker, testHelper.GetHostingEnvironment(), testHelper.GetBackOfficeInfo(), testHelper.DbProviderFactoryCreator, testHelper.MainDom, testHelper.GetTypeFinder(), AppCaches.NoCache); diff --git a/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs b/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs index d5cff21f7d..f7e451b03f 100644 --- a/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs +++ b/src/Umbraco.Tests.Integration/TestServerTest/UmbracoBuilderExtensions.cs @@ -32,15 +32,14 @@ namespace Umbraco.Tests.Integration.TestServerTest testHelper.GetLoggingConfiguration(), builder.Config, // TODO: Yep that's extremely ugly - (globalSettings, connectionStrings, umbVersion, ioHelper, logger, factory, profiler, hostingEnv, backOfficeInfo, typeFinder, appCaches, dbProviderFactoryCreator) => + (globalSettings, connectionStrings, umbVersion, ioHelper, loggerFactory, profiler, hostingEnv, backOfficeInfo, typeFinder, appCaches, dbProviderFactoryCreator) => { var runtime = UmbracoIntegrationTest.CreateTestRuntime( globalSettings, connectionStrings, umbVersion, ioHelper, - logger, - factory, + loggerFactory, profiler, hostingEnv, backOfficeInfo, diff --git a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs index 30b5545aa3..36df0bbc64 100644 --- a/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs +++ b/src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs @@ -170,7 +170,7 @@ namespace Umbraco.Tests.Integration.Testing GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, - ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, + ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator) { var runtime = CreateTestRuntime( @@ -178,7 +178,6 @@ namespace Umbraco.Tests.Integration.Testing connectionStrings, umbracoVersion, ioHelper, - logger, loggerFactory, profiler, hostingEnvironment, @@ -215,7 +214,7 @@ namespace Umbraco.Tests.Integration.Testing GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, - ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, + ILoggerFactory loggerFactory, IProfiler profiler, Core.Hosting.IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator, IMainDom mainDom, Action eventHandler) { @@ -224,7 +223,6 @@ namespace Umbraco.Tests.Integration.Testing connectionStrings, umbracoVersion, ioHelper, - logger, loggerFactory, profiler, Mock.Of(), diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs index bbc4330843..b8e391a072 100644 --- a/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs +++ b/src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeFinderTests.cs @@ -60,13 +60,6 @@ namespace Umbraco.Tests.Composing Assert.AreEqual(22, typesFound.Count()); // + classes in Umbraco.Web are marked with [Tree] } - private static IProfilingLogger GetTestProfilingLogger() - { - var logger = LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); - var profiler = new TestProfiler(); - return new ProfilingLogger(logger, profiler); - } - [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] public class MyTestAttribute : Attribute { diff --git a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs index 8c31f3adaf..474528a8ec 100644 --- a/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AdvancedMigrationTests.cs @@ -21,7 +21,7 @@ namespace Umbraco.Tests.Migrations [UmbracoTest(Database = UmbracoTestOptions.Database.NewEmptyPerTest)] public class AdvancedMigrationTests : TestWithDatabaseBase { - private ILoggerFactory _loggerFactory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()); + private ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; [Test] public void CreateTableOfTDto() diff --git a/src/Umbraco.Tests/Models/ContentTests.cs b/src/Umbraco.Tests/Models/ContentTests.cs index 737323b98e..8fb3f60cc8 100644 --- a/src/Umbraco.Tests/Models/ContentTests.cs +++ b/src/Umbraco.Tests/Models/ContentTests.cs @@ -4,18 +4,13 @@ using System.Diagnostics; using System.Globalization; using System.Linq; using System.Threading; -using Microsoft.CodeAnalysis.Options; -using Microsoft.Extensions.Options; -using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Moq; using Newtonsoft.Json; using Umbraco.Core; using NUnit.Framework; using Umbraco.Core.Cache; -using Umbraco.Core.Composing; using Umbraco.Core.Composing.CompositionExtensions; -using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Models.Entities; @@ -26,7 +21,6 @@ using Umbraco.Tests.TestHelpers.Entities; using Umbraco.Tests.TestHelpers.Stubs; using Umbraco.Tests.Testing; using Umbraco.Web.PropertyEditors; -using Umbraco.Tests.TestHelpers; namespace Umbraco.Tests.Models { @@ -239,7 +233,7 @@ namespace Umbraco.Tests.Models private static IProfilingLogger GetTestProfilingLogger() { - var logger = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); + var logger = NullLoggerFactory.Instance.CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); return new ProfilingLogger(logger, profiler); } diff --git a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs index a034b94ae0..5a0e4b6ed2 100644 --- a/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs +++ b/src/Umbraco.Tests/Persistence/NPocoTests/NPocoBulkInsertTests.cs @@ -4,6 +4,7 @@ using System.Data; using System.Linq; using System.Text.RegularExpressions; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; @@ -27,7 +28,7 @@ namespace Umbraco.Tests.Persistence.NPocoTests // create the db // prob not what we want, this is not a real database, but hey, the test is ignored anyways // we'll fix this when we have proper testing infrastructure - var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger()); + var dbSqlServer = TestObjects.GetUmbracoSqlServerDatabase(new NullLogger()); //drop the table dbSqlServer.Execute("DROP TABLE [umbracoServer]"); diff --git a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs index 9b930133cc..2262499347 100644 --- a/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs +++ b/src/Umbraco.Tests/Routing/RenderRouteHandlerTests.cs @@ -55,7 +55,7 @@ namespace Umbraco.Tests.Routing public class TestRuntime : CoreRuntime { public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - : base(globalSettings, connectionStrings,umbracoVersion, ioHelper, Mock.Of(), NullLoggerFactory.Instance, Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + : base(globalSettings, connectionStrings,umbracoVersion, ioHelper, NullLoggerFactory.Instance, Mock.Of(), new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs index b269258920..ea111a1e29 100644 --- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs +++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using Examine; using Microsoft.Extensions.Options; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using Moq; using NUnit.Framework; using Umbraco.Core; @@ -83,28 +84,15 @@ namespace Umbraco.Tests.Runtimes // test application public class TestUmbracoApplication : UmbracoApplicationBase { - public TestUmbracoApplication() : base(CreateLoggerFactory().CreateLogger(), - CreateLoggerFactory(), + public TestUmbracoApplication() : base(new NullLogger(), + NullLoggerFactory.Instance, new SecuritySettings(), new GlobalSettings(), new ConnectionStrings(), - _ioHelper, _profiler, new AspNetHostingEnvironment(Options.Create(new HostingSettings())), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, CreateLoggerFactory().CreateLogger(), Options.Create(new WebRoutingSettings()))) + _ioHelper, _profiler, new AspNetHostingEnvironment(Options.Create(new HostingSettings())), new AspNetBackOfficeInfo(_globalSettings, _ioHelper, new NullLogger(), Options.Create(new WebRoutingSettings()))) { - _loggerFactory = CreateLoggerFactory(); } - // Since we can't pass ILoggerFactory before it's created this will take care of it. - private static ILoggerFactory CreateLoggerFactory() - { - if (_loggerFactory is null) - { - _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); - } - - return _loggerFactory; - } - - private static ILoggerFactory _loggerFactory; private static readonly IIOHelper _ioHelper = TestHelper.IOHelper; private static readonly IProfiler _profiler = new TestProfiler(); private static readonly GlobalSettings _globalSettings = new GlobalSettings(); @@ -121,7 +109,7 @@ namespace Umbraco.Tests.Runtimes public class TestRuntime : CoreRuntime { public TestRuntime(GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo) - :base(globalSettings, connectionStrings,umbracoVersion, ioHelper, logger, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) + :base(globalSettings, connectionStrings,umbracoVersion, ioHelper, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), AppCaches.NoCache) { } @@ -141,7 +129,7 @@ namespace Umbraco.Tests.Runtimes container.Register(Lifetime.Singleton); container.Register(Lifetime.Singleton); container.Register(typeof(ILogger<>), typeof(Logger<>), Lifetime.Singleton); - + var factory = base.Configure(container); return factory; diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index cba561ac62..e5594a0778 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -86,7 +86,7 @@ namespace Umbraco.Tests.Runtimes composition.RegisterEssentials(loggerFactory.CreateLogger("Essentials"), loggerFactory, profiler, profilingLogger, mainDom, appCaches, databaseFactory, typeLoader, runtimeState, typeFinder, ioHelper, umbracoVersion, TestHelper.DbProviderFactoryCreator, hostingEnvironment, backOfficeInfo); // create the core runtime and have it compose itself - var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, loggerFactory.CreateLogger("CoreRunTime"), loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // determine actual runtime level runtimeState.DetermineRuntimeLevel(); @@ -297,7 +297,7 @@ namespace Umbraco.Tests.Runtimes var globalSettings = new GlobalSettings(); var connectionStrings = new ConnectionStrings(); - var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, loggerFactory.CreateLogger("CoreRuntime"), loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); + var coreRuntime = new CoreRuntime(globalSettings, connectionStrings, umbracoVersion, ioHelper, loggerFactory, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, typeFinder, AppCaches.NoCache); // get the components // all of them? diff --git a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs index c132111e72..c2860b57d0 100644 --- a/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs +++ b/src/Umbraco.Tests/Scheduling/BackgroundTaskRunnerTests2.cs @@ -3,6 +3,7 @@ using System.Diagnostics; using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Tests.TestHelpers; using Umbraco.Web.Scheduling; @@ -13,7 +14,7 @@ namespace Umbraco.Tests.Scheduling [Timeout(60000)] public class BackgroundTaskRunnerTests2 { - private static ILoggerFactory _loggerFactory = LoggerFactory.Create(builder => builder.AddDebug()); + private static ILoggerFactory _loggerFactory = NullLoggerFactory.Instance; // this tests was used to debug a background task runner issue that was unearthed by Deploy, // where work items would never complete under certain circumstances, due to threading issues. // (fixed now) diff --git a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs index 2bf4811f5d..ebfb9da8b3 100644 --- a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs @@ -70,7 +70,7 @@ namespace Umbraco.Tests.Scoping DoThing1 += (sender, args) => { counter1++; if (cancel) args.Cancel = true; }; DoThing2 += (sender, args) => { counter2++; }; - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: passive ? new PassiveEventDispatcher() : null)) { var cancelled = scope.Events.DispatchCancelable(DoThing1, this, new SaveEventArgs("test")); @@ -99,7 +99,7 @@ namespace Umbraco.Tests.Scoping DoThing2 += OnDoThingFail; DoThing3 += OnDoThingFail; - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoThing1, this, new SaveEventArgs("test")); @@ -141,7 +141,7 @@ namespace Umbraco.Tests.Scoping var content3 = MockedContent.CreateBasicContent(contentType); content3.Id = 789; - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { @@ -180,7 +180,7 @@ namespace Umbraco.Tests.Scoping var contentService = Mock.Of(); var content = Mock.Of(); - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(Test_Unpublished, contentService, new PublishEventArgs(new [] { content }), "Unpublished"); @@ -214,7 +214,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content3.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -254,7 +254,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content1.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -287,7 +287,7 @@ namespace Umbraco.Tests.Scoping content3.Id = 123; content3.UpdateDate = now.AddMinutes(3); - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoSaveForContent, this, new SaveEventArgs(content1)); @@ -311,7 +311,7 @@ namespace Umbraco.Tests.Scoping DoThing2 += OnDoThingFail; DoThing3 += OnDoThingFail; - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()); + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance); using (var scope = scopeProvider.CreateScope(eventDispatcher: new PassiveEventDispatcher())) { scope.Events.Dispatch(DoThing1, this, new SaveEventArgs("test")); @@ -337,7 +337,7 @@ namespace Umbraco.Tests.Scoping IScopeContext ambientContext = null; Guid value = Guid.Empty; - var scopeProvider = _testObjects.GetScopeProvider(new NullLoggerFactory()) as ScopeProvider; + var scopeProvider = _testObjects.GetScopeProvider(NullLoggerFactory.Instance) as ScopeProvider; DoThing1 += (sender, args) => { counter++; }; DoThing2 += (sender, args) => { counter++; }; diff --git a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs index 81b82a66ec..9ed1271de0 100644 --- a/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs +++ b/src/Umbraco.Tests/Services/ContentServicePerformanceTest.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core; using Umbraco.Core.Cache; @@ -63,9 +64,9 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var logger = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()).CreateLogger("ProfilingLogger"); + var profiler = new TestProfiler(); - return new ProfilingLogger(logger, profiler); + return new ProfilingLogger(new NullLogger(), profiler); } [Test] diff --git a/src/Umbraco.Tests/Services/PerformanceTests.cs b/src/Umbraco.Tests/Services/PerformanceTests.cs index fcaa083fb7..da33685bdd 100644 --- a/src/Umbraco.Tests/Services/PerformanceTests.cs +++ b/src/Umbraco.Tests/Services/PerformanceTests.cs @@ -3,8 +3,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; -using Microsoft.Extensions.Logging; -using NPoco; +using Microsoft.Extensions.Logging.Abstractions; using NUnit.Framework; using Umbraco.Core; using Umbraco.Web.Composing; @@ -12,7 +11,6 @@ using Umbraco.Core.Logging; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Dtos; -using Umbraco.Core.Services; using Umbraco.Core.Services.Implement; using Umbraco.Tests.LegacyXmlPublishedCache; using Umbraco.Tests.TestHelpers; @@ -59,10 +57,8 @@ namespace Umbraco.Tests.Services private static IProfilingLogger GetTestProfilingLogger() { - var factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => builder.AddDebug()); - var logger = factory.CreateLogger("ProfilingLogger"); var profiler = new TestProfiler(); - return new ProfilingLogger(logger, profiler); + return new ProfilingLogger(new NullLogger(), profiler); } [Test] diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs index 607b07a748..1b3cde509a 100644 --- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs @@ -233,7 +233,7 @@ namespace Umbraco.Extensions ILoggingConfiguration loggingConfiguration, IConfiguration configuration, //TODO: Yep that's extremely ugly - Func getRuntime, + Func getRuntime, out IFactory factory) { if (services is null) throw new ArgumentNullException(nameof(services)); @@ -273,8 +273,9 @@ namespace Umbraco.Extensions hostingSettings, webHostEnvironment, loggingConfiguration, - configuration, - out var logger, out var loggerFactory, out var ioHelper, out var hostingEnvironment, out var backOfficeInfo, out var profiler); + configuration, out var ioHelper, out var hostingEnvironment, out var backOfficeInfo, out var profiler); + + var loggerFactory = serviceProvider.GetService(); var umbracoVersion = new UmbracoVersion(); var typeFinder = CreateTypeFinder(loggerFactory, profiler, webHostEnvironment, entryAssembly, typeFinderSettings); @@ -284,7 +285,6 @@ namespace Umbraco.Extensions connectionStrings.Value, umbracoVersion, ioHelper, - logger, loggerFactory, profiler, hostingEnvironment, @@ -314,7 +314,7 @@ namespace Umbraco.Extensions } private static IRuntime GetCoreRuntime( - GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, ILoggerFactory loggerFactory, + GlobalSettings globalSettings, ConnectionStrings connectionStrings, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILoggerFactory loggerFactory, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo, ITypeFinder typeFinder, AppCaches appCaches, IDbProviderFactoryCreator dbProviderFactoryCreator) { @@ -333,7 +333,6 @@ namespace Umbraco.Extensions connectionStrings, umbracoVersion, ioHelper, - logger, loggerFactory, profiler, new AspNetCoreBootPermissionsChecker(), @@ -354,8 +353,6 @@ namespace Umbraco.Extensions IWebHostEnvironment webHostEnvironment, ILoggingConfiguration loggingConfiguration, IConfiguration configuration, - out ILogger logger, - out ILoggerFactory loggerFactory, out IIOHelper ioHelper, out Core.Hosting.IHostingEnvironment hostingEnvironment, out IBackOfficeInfo backOfficeInfo, @@ -366,7 +363,7 @@ namespace Umbraco.Extensions hostingEnvironment = new AspNetCoreHostingEnvironment(hostingSettings, webHostEnvironment); ioHelper = new IOHelper(hostingEnvironment); - logger = AddLogger(services, hostingEnvironment, loggingConfiguration, configuration, out loggerFactory); + AddLogger(services, hostingEnvironment, loggingConfiguration, configuration); backOfficeInfo = new AspNetCoreBackOfficeInfo(globalSettings); profiler = GetWebProfiler(hostingEnvironment); @@ -377,12 +374,11 @@ namespace Umbraco.Extensions /// Create and configure the logger /// /// - private static ILogger AddLogger( + private static void AddLogger( IServiceCollection services, Core.Hosting.IHostingEnvironment hostingEnvironment, ILoggingConfiguration loggingConfiguration, - IConfiguration configuration, - out ILoggerFactory loggerFactory) + IConfiguration configuration) { // Create a serilog logger var logger = SerilogLogger.CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration, configuration); @@ -402,23 +398,17 @@ namespace Umbraco.Extensions configure.AddSerilog(logger.SerilogLog, false); }); + // This won't (and shouldn't) take ownership of the logger. + services.AddSingleton(logger.SerilogLog); - //services.AddSingleton(services => new SerilogLoggerFactory(logger.SerilogLog, false)); + // Registered to provide two services... + var diagnosticContext = new DiagnosticContext(logger.SerilogLog); - // // This won't (and shouldn't) take ownership of the logger. - // services.AddSingleton(logger.SerilogLog); - // - // // Registered to provide two services... - // var diagnosticContext = new DiagnosticContext(logger.SerilogLog); - // - // // Consumed by e.g. middleware - // services.AddSingleton(diagnosticContext); - // - // // Consumed by user code - // services.AddSingleton(diagnosticContext); - var serviceProvider = services.BuildServiceProvider(); - loggerFactory = serviceProvider.GetRequiredService(); - return loggerFactory.CreateLogger("Global Logger"); + // Consumed by e.g. middleware + services.AddSingleton(diagnosticContext); + + // Consumed by user code + services.AddSingleton(diagnosticContext); } private static IProfiler GetWebProfiler(Umbraco.Core.Hosting.IHostingEnvironment hostingEnvironment) diff --git a/src/Umbraco.Web/Editors/AuthenticationController.cs b/src/Umbraco.Web/Editors/AuthenticationController.cs index e3d0c9c1d0..5265dc13cb 100644 --- a/src/Umbraco.Web/Editors/AuthenticationController.cs +++ b/src/Umbraco.Web/Editors/AuthenticationController.cs @@ -123,7 +123,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -142,7 +142,7 @@ namespace Umbraco.Web.Editors var userId = await SignInManager.GetVerifiedUserIdAsync(); if (string.IsNullOrWhiteSpace(userId)) { - _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } @@ -165,7 +165,7 @@ namespace Umbraco.Web.Editors var userName = await SignInManager.GetVerifiedUserNameAsync(); if (userName == null) { - _logger.LogDebug("Get2FAProviders :: No verified user found, returning 404"); + _logger.LogWarning("Get2FAProviders :: No verified user found, returning 404"); throw new HttpResponseException(HttpStatusCode.NotFound); } diff --git a/src/Umbraco.Web/Security/MembershipHelper.cs b/src/Umbraco.Web/Security/MembershipHelper.cs index 88c2f05308..1469b6fea6 100644 --- a/src/Umbraco.Web/Security/MembershipHelper.cs +++ b/src/Umbraco.Web/Security/MembershipHelper.cs @@ -307,7 +307,7 @@ namespace Umbraco.Web.Security if (member == null) { //this should not happen - Current.Logger.LogWarning("The member validated but then no member was returned with the username {Username}", username); + _logger.LogWarning("The member validated but then no member was returned with the username {Username}", username); return false; } //Log them in diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs index 23a78a1bcd..8f6231b22a 100644 --- a/src/Umbraco.Web/UmbracoApplication.cs +++ b/src/Umbraco.Web/UmbracoApplication.cs @@ -41,7 +41,7 @@ namespace Umbraco.Web new IsolatedCaches(type => new DeepCloneAppCache(new ObjectCacheAppCache()))); var umbracoBootPermissionChecker = new AspNetUmbracoBootPermissionChecker(); - return new CoreRuntime(globalSettings, connectionStrings,umbracoVersion, ioHelper, logger, loggerFactory, profiler, umbracoBootPermissionChecker, hostingEnvironment, backOfficeInfo, dbProviderFactoryCreator, mainDom, + return new CoreRuntime(globalSettings, connectionStrings,umbracoVersion, ioHelper, loggerFactory, profiler, umbracoBootPermissionChecker, hostingEnvironment, backOfficeInfo, dbProviderFactoryCreator, mainDom, GetTypeFinder(hostingEnvironment, logger, profiler), appCaches); }