diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs
index f8ee238da7..f5667a5a85 100644
--- a/src/Umbraco.Web/UmbracoApplication.cs
+++ b/src/Umbraco.Web/UmbracoApplication.cs
@@ -2,6 +2,7 @@
using System.Threading;
using System.Web;
using Umbraco.Core;
+using Umbraco.Core.Logging;
using Umbraco.Core.Logging.Serilog;
using Umbraco.Core.Runtime;
using Umbraco.Web.Runtime;
@@ -17,16 +18,24 @@ namespace Umbraco.Web
{
var logger = SerilogLogger.CreateWithDefaultConfiguration();
+ var runtime = new WebRuntime(this, logger, GetMainDom(logger));
+
+ return runtime;
+ }
+
+ ///
+ /// Returns a new MainDom
+ ///
+ protected IMainDom GetMainDom(ILogger logger)
+ {
// Determine if we should use the sql main dom or the default
var appSettingMainDomLock = ConfigurationManager.AppSettings[Constants.AppSettings.MainDomLock];
var mainDomLock = appSettingMainDomLock == "SqlMainDomLock"
? (IMainDomLock)new SqlMainDomLock(logger)
: new MainDomSemaphoreLock(logger);
-
- var runtime = new WebRuntime(this, logger, new MainDom(logger, mainDomLock));
- return runtime;
+ return new MainDom(logger, mainDomLock);
}
///