diff --git a/src/Umbraco.Core/Composing/Composition.cs b/src/Umbraco.Core/Composing/Composition.cs
index 6989d4d0a2..e248d9eaf3 100644
--- a/src/Umbraco.Core/Composing/Composition.cs
+++ b/src/Umbraco.Core/Composing/Composition.cs
@@ -28,14 +28,16 @@ namespace Umbraco.Core.Composing
/// A type loader.
/// A logger.
/// The runtime state.
+ /// Optional configs.
/// An IOHelper
///
- public Composition(IRegister register, TypeLoader typeLoader, IProfilingLogger logger, IRuntimeState runtimeState, IIOHelper ioHelper, AppCaches appCaches)
+ public Composition(IRegister register, TypeLoader typeLoader, IProfilingLogger logger, IRuntimeState runtimeState, Configs configs, IIOHelper ioHelper, AppCaches appCaches)
{
_register = register ?? throw new ArgumentNullException(nameof(register));
TypeLoader = typeLoader ?? throw new ArgumentNullException(nameof(typeLoader));
Logger = logger ?? throw new ArgumentNullException(nameof(logger));
RuntimeState = runtimeState ?? throw new ArgumentNullException(nameof(runtimeState));
+ Configs = configs ?? throw new ArgumentNullException(nameof(configs));
IOHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper));
AppCaches = appCaches ?? throw new ArgumentNullException(nameof(appCaches));
}
@@ -60,6 +62,7 @@ namespace Umbraco.Core.Composing
///
public IRuntimeState RuntimeState { get; }
+ // TODO: remove this once no longer required for functionality in Umbraco.Web.
///
/// Gets the configurations.
///
@@ -133,8 +136,7 @@ namespace Umbraco.Core.Composing
IFactory factory = null;
- // TODO: what to do about this?
- //Configs.RegisterWith(_register);
+ Configs.RegisterWith(_register);
// ReSharper disable once AccessToModifiedClosure -- on purpose
_register.Register(_ => factory, Lifetime.Singleton);
diff --git a/src/Umbraco.Core/Configuration/Models/RequestHandlerSettings.cs b/src/Umbraco.Core/Configuration/Models/RequestHandlerSettings.cs
index a2422fc899..d7203b4901 100644
--- a/src/Umbraco.Core/Configuration/Models/RequestHandlerSettings.cs
+++ b/src/Umbraco.Core/Configuration/Models/RequestHandlerSettings.cs
@@ -59,7 +59,7 @@ namespace Umbraco.Core.Configuration.Models
//}
// return DefaultCharCollection;
- public IEnumerable CharCollection { get; set; }
+ public IEnumerable CharCollection { get; set; } = DefaultCharCollection;
public class CharItem : IChar
{
diff --git a/src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsFromLegacy.cs b/src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsFromLegacy.cs
new file mode 100644
index 0000000000..42ed290e63
--- /dev/null
+++ b/src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsFromLegacy.cs
@@ -0,0 +1,57 @@
+using Umbraco.Core;
+using Umbraco.Core.Configuration;
+using Umbraco.Core.Configuration.Models;
+
+namespace Umbraco.Infrastructure.Configuration
+{
+ ///
+ /// TEMPORARY: this class has been added just to ensure Umbraco.Web functionality continues to compile, by
+ /// converting between e.g. (used by
+ /// legacy configuration and (used by Netcore/IOptions configuration).
+ ///
+ public static class ConfigModelConversionsFromLegacy
+ {
+ public static GlobalSettings ConvertGlobalSettings(IGlobalSettings globalSettings)
+ {
+ return new GlobalSettings
+ {
+ DatabaseFactoryServerVersion = globalSettings.DatabaseFactoryServerVersion,
+ DefaultUILanguage = globalSettings.DefaultUILanguage,
+ DisableElectionForSingleServer = globalSettings.DisableElectionForSingleServer,
+ HideTopLevelNodeFromPath = globalSettings.HideTopLevelNodeFromPath,
+ InstallEmptyDatabase = globalSettings.InstallEmptyDatabase,
+ InstallMissingDatabase = globalSettings.InstallMissingDatabase,
+ MainDomLock = globalSettings.MainDomLock,
+ NoNodesViewPath = globalSettings.NoNodesViewPath,
+ RegisterType = globalSettings.RegisterType,
+ ReservedPaths = globalSettings.ReservedPaths,
+ ReservedUrls = globalSettings.ReservedUrls,
+ Smtp = new SmtpSettings
+ {
+ DeliveryMethod = globalSettings.SmtpSettings.DeliveryMethod,
+ From = globalSettings.SmtpSettings.From,
+ Host = globalSettings.SmtpSettings.Host,
+ Password = globalSettings.SmtpSettings.Password,
+ PickupDirectoryLocation = globalSettings.SmtpSettings.PickupDirectoryLocation,
+ Port = globalSettings.SmtpSettings.Port,
+ Username = globalSettings.SmtpSettings.Username,
+ },
+ TimeOutInMinutes = globalSettings.TimeOutInMinutes,
+ UmbracoCssPath = globalSettings.UmbracoCssPath,
+ UmbracoMediaPath = globalSettings.UmbracoMediaPath,
+ Path = globalSettings.UmbracoPath,
+ UmbracoScriptsPath = globalSettings.UmbracoScriptsPath,
+ UseHttps = globalSettings.UseHttps,
+ VersionCheckPeriod = globalSettings.VersionCheckPeriod,
+ };
+ }
+
+ public static ConnectionStrings ConvertConnectionStrings(IConnectionStrings connectionStrings)
+ {
+ return new ConnectionStrings
+ {
+ UmbracoConnectionString = connectionStrings[Constants.System.UmbracoConnectionName].ConnectionString
+ };
+ }
+ }
+}
diff --git a/src/Umbraco.Tests/TestHelpers/ConfigModelConversions.cs b/src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsToLegacy.cs
similarity index 80%
rename from src/Umbraco.Tests/TestHelpers/ConfigModelConversions.cs
rename to src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsToLegacy.cs
index 5417116713..5b3607992c 100644
--- a/src/Umbraco.Tests/TestHelpers/ConfigModelConversions.cs
+++ b/src/Umbraco.Infrastructure/Configuration/ConfigModelConversionsToLegacy.cs
@@ -1,15 +1,17 @@
-using System.Net.Mail;
+using System.Collections.Generic;
+using System.Net.Mail;
+using Umbraco.Core;
using Umbraco.Core.Configuration;
using Umbraco.Core.Configuration.Models;
-namespace Umbraco.Tests.TestHelpers
+namespace Umbraco.Infrastructure.Configuration
{
///
/// TEMPORARY: this class has been added just to ensure tests on Umbraco.Web functionality, that still use the interface
/// based configuration, by converting between e.g (used by
/// legacy configuration and (used by Netcore/IOptions configuration).
///
- public static class ConfigModelConversions
+ public static class ConfigModelConversionsToLegacy
{
public static IGlobalSettings ConvertGlobalSettings(GlobalSettings globalSettings)
{
@@ -46,6 +48,13 @@ namespace Umbraco.Tests.TestHelpers
};
}
+ public static IConnectionStrings ConvertConnectionStrings(ConnectionStrings connectionStrings)
+ {
+ var result = new TestConnectionStrings();
+ result.AddEntry(Constants.System.UmbracoConnectionName, connectionStrings.UmbracoConnectionString);
+ return result;
+ }
+
private class TestGlobalSettings : IGlobalSettings
{
public string ReservedUrls { get; set; }
@@ -105,5 +114,17 @@ namespace Umbraco.Tests.TestHelpers
public string Password { get; set; }
}
+
+ private class TestConnectionStrings : IConnectionStrings
+ {
+ private IDictionary _dictionary = new Dictionary();
+
+ public ConfigConnectionString this[string key] => _dictionary[key];
+
+ public void AddEntry(string key, string connectionString)
+ {
+ _dictionary.Add(key, new ConfigConnectionString(connectionString, string.Empty, key));
+ }
+ }
}
}
diff --git a/src/Umbraco.Infrastructure/Models/ContentEditing/UserInvite.cs b/src/Umbraco.Infrastructure/Models/ContentEditing/UserInvite.cs
index 06e4d0748c..428f85937b 100644
--- a/src/Umbraco.Infrastructure/Models/ContentEditing/UserInvite.cs
+++ b/src/Umbraco.Infrastructure/Models/ContentEditing/UserInvite.cs
@@ -33,6 +33,7 @@ namespace Umbraco.Web.Models.ContentEditing
if (UserGroups.Any() == false)
yield return new ValidationResult("A user must be assigned to at least one group", new[] { nameof(UserGroups) });
+ // TODO: this will need another way of retrieving this setting if and when Configs are removed from Current.
if (Current.Configs.Security().UsernameIsEmail == false && Username.IsNullOrWhiteSpace())
yield return new ValidationResult("A username cannot be empty", new[] { nameof(Username) });
}
diff --git a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs
index ad036e12eb..968c240d62 100644
--- a/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs
+++ b/src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs
@@ -12,6 +12,7 @@ using Umbraco.Core.IO;
using Umbraco.Core.Logging;
using Umbraco.Core.Persistence;
using Umbraco.Core.Persistence.Mappers;
+using Umbraco.Infrastructure.Configuration;
namespace Umbraco.Core.Runtime
{
@@ -179,7 +180,11 @@ namespace Umbraco.Core.Runtime
var typeLoader = new TypeLoader(TypeFinder, appCaches.RuntimeCache, new DirectoryInfo(HostingEnvironment.LocalTempPath), ProfilingLogger);
// create the composition
- composition = new Composition(register, typeLoader, ProfilingLogger, _state, IOHelper, appCaches);
+ // TODO: remove the configs parameter once we no longer need to provide it for Umbraco.Web and Umbraco.Tests functionality.
+ var configs = new Configs();
+ configs.Add(() => ConfigModelConversionsToLegacy.ConvertGlobalSettings(_globalSettings));
+ configs.Add(() => ConfigModelConversionsToLegacy.ConvertConnectionStrings(_connectionStrings));
+ composition = new Composition(register, typeLoader, ProfilingLogger, _state, configs, IOHelper, appCaches);
composition.RegisterEssentials(Logger, Profiler, ProfilingLogger, MainDom, appCaches, databaseFactory, typeLoader, _state, TypeFinder, IOHelper, UmbracoVersion, DbProviderFactoryCreator, HostingEnvironment, BackOfficeInfo);
// register ourselves (TODO: Should we put this in RegisterEssentials?)
diff --git a/src/Umbraco.Tests.Integration/ContainerTests.cs b/src/Umbraco.Tests.Integration/ContainerTests.cs
index a50a24e780..2098b7241e 100644
--- a/src/Umbraco.Tests.Integration/ContainerTests.cs
+++ b/src/Umbraco.Tests.Integration/ContainerTests.cs
@@ -44,7 +44,7 @@ namespace Umbraco.Tests.Integration
// Register in the container
var composition = new Composition(umbracoContainer, typeLoader,
- testHelper.Logger, runtimeState, testHelper.IOHelper, testHelper.AppCaches);
+ testHelper.Logger, runtimeState, testHelper.GetConfigs(), testHelper.IOHelper, testHelper.AppCaches);
composition.RegisterEssentials(testHelper.Logger, testHelper.Profiler, testHelper.Logger, testHelper.MainDom,
testHelper.AppCaches, umbracoDatabaseFactory, typeLoader, runtimeState, testHelper.GetTypeFinder(),
testHelper.IOHelper, testHelper.GetUmbracoVersion(), dbProviderFactoryCreator,
diff --git a/src/Umbraco.Tests.UnitTests/Umbraco.Tests.Common/Builders/RequestHandlerSettingsBuilderTests.cs b/src/Umbraco.Tests.UnitTests/Umbraco.Tests.Common/Builders/RequestHandlerSettingsBuilderTests.cs
index 8d84a6d4c6..199b3dadde 100644
--- a/src/Umbraco.Tests.UnitTests/Umbraco.Tests.Common/Builders/RequestHandlerSettingsBuilderTests.cs
+++ b/src/Umbraco.Tests.UnitTests/Umbraco.Tests.Common/Builders/RequestHandlerSettingsBuilderTests.cs
@@ -24,6 +24,7 @@ namespace Umbraco.Tests.UnitTests.Umbraco.Tests.Common.Builders
var requestHandlerSettings = builder
.WithAddTrailingSlash(addTrailingSlash)
.WithConvertUrlsToAscii(convertUrlsToAscii)
+ .WithCharCollection(charCollection)
.Build();
// Assert
diff --git a/src/Umbraco.Tests/Components/ComponentTests.cs b/src/Umbraco.Tests/Components/ComponentTests.cs
index 6f86108edb..4ce790db6c 100644
--- a/src/Umbraco.Tests/Components/ComponentTests.cs
+++ b/src/Umbraco.Tests/Components/ComponentTests.cs
@@ -75,7 +75,7 @@ namespace Umbraco.Tests.Components
{
var register = MockRegister();
var typeLoader = MockTypeLoader();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -114,7 +114,7 @@ namespace Umbraco.Tests.Components
public void Boot1B()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -130,7 +130,7 @@ namespace Umbraco.Tests.Components
public void Boot2()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -145,7 +145,7 @@ namespace Umbraco.Tests.Components
public void Boot3()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -162,7 +162,7 @@ namespace Umbraco.Tests.Components
public void BrokenRequire()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -185,7 +185,7 @@ namespace Umbraco.Tests.Components
public void BrokenRequired()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -221,7 +221,7 @@ namespace Umbraco.Tests.Components
throw new NotSupportedException(type.FullName);
});
});
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -247,7 +247,7 @@ namespace Umbraco.Tests.Components
public void Requires1()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ 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());
@@ -262,7 +262,7 @@ namespace Umbraco.Tests.Components
public void Requires2A()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) };
var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of());
@@ -280,7 +280,7 @@ namespace Umbraco.Tests.Components
var register = MockRegister();
var typeLoader = MockTypeLoader();
var factory = MockFactory();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var types = new[] { typeof(Composer9), typeof(Composer2), typeof(Composer4) };
var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of());
@@ -299,7 +299,7 @@ namespace Umbraco.Tests.Components
public void WeakDependencies()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var types = new[] { typeof(Composer10) };
var composers = new Composers(composition, types, Enumerable.Empty(), Mock.Of());
@@ -338,7 +338,7 @@ namespace Umbraco.Tests.Components
public void DisableMissing()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), 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());
@@ -353,7 +353,7 @@ namespace Umbraco.Tests.Components
public void AttributesPriorities()
{
var register = MockRegister();
- var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, MockTypeLoader(), Mock.Of(), MockRuntimeState(RuntimeLevel.Unknown), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var types = new[] { typeof(Composer26) };
var enableDisableAttributes = new[] { new DisableComposerAttribute(typeof(Composer26)) };
@@ -380,7 +380,7 @@ namespace Umbraco.Tests.Components
var register = MockRegister();
var composition = new Composition(register, typeLoader, Mock.Of(),
- MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var allComposers = typeLoader.GetTypes().ToList();
var types = allComposers.Where(x => x.FullName.StartsWith("Umbraco.Core.") || x.FullName.StartsWith("Umbraco.Web")).ToList();
diff --git a/src/Umbraco.Tests/Composing/CollectionBuildersTests.cs b/src/Umbraco.Tests/Composing/CollectionBuildersTests.cs
index 4416723a55..2d977e89c7 100644
--- a/src/Umbraco.Tests/Composing/CollectionBuildersTests.cs
+++ b/src/Umbraco.Tests/Composing/CollectionBuildersTests.cs
@@ -24,7 +24,7 @@ namespace Umbraco.Tests.Composing
Current.Reset();
var register = TestHelper.GetRegister();
- _composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ _composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
}
[TearDown]
diff --git a/src/Umbraco.Tests/Composing/CompositionTests.cs b/src/Umbraco.Tests/Composing/CompositionTests.cs
index 229ba1102b..380511eaaa 100644
--- a/src/Umbraco.Tests/Composing/CompositionTests.cs
+++ b/src/Umbraco.Tests/Composing/CompositionTests.cs
@@ -41,7 +41,7 @@ namespace Umbraco.Tests.Composing
var typeFinder = TestHelper.GetTypeFinder();
var ioHelper = TestHelper.IOHelper;
var typeLoader = new TypeLoader(typeFinder, Mock.Of(), new DirectoryInfo(ioHelper.MapPath("~/App_Data/TEMP")), logger);
- var composition = new Composition(mockedRegister, typeLoader, logger, Mock.Of(), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(mockedRegister, typeLoader, logger, Mock.Of(), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
// create the factory, ensure it is the mocked factory
var factory = composition.CreateFactory();
diff --git a/src/Umbraco.Tests/Composing/LazyCollectionBuilderTests.cs b/src/Umbraco.Tests/Composing/LazyCollectionBuilderTests.cs
index c17e80a34a..4d0135d6c4 100644
--- a/src/Umbraco.Tests/Composing/LazyCollectionBuilderTests.cs
+++ b/src/Umbraco.Tests/Composing/LazyCollectionBuilderTests.cs
@@ -41,7 +41,7 @@ namespace Umbraco.Tests.Composing
public void LazyCollectionBuilderHandlesTypes()
{
var container = CreateRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Add()
@@ -67,7 +67,7 @@ namespace Umbraco.Tests.Composing
public void LazyCollectionBuilderHandlesProducers()
{
var container = CreateRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Add(() => new[] { typeof(TransientObject3), typeof(TransientObject2) })
@@ -92,7 +92,7 @@ namespace Umbraco.Tests.Composing
public void LazyCollectionBuilderHandlesTypesAndProducers()
{
var container = CreateRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Add()
@@ -118,7 +118,7 @@ namespace Umbraco.Tests.Composing
public void LazyCollectionBuilderThrowsOnIllegalTypes()
{
var container = CreateRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Add()
@@ -140,7 +140,7 @@ namespace Umbraco.Tests.Composing
public void LazyCollectionBuilderCanExcludeTypes()
{
var container = CreateRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Add()
diff --git a/src/Umbraco.Tests/Composing/PackageActionCollectionTests.cs b/src/Umbraco.Tests/Composing/PackageActionCollectionTests.cs
index 118eaab41a..390997173b 100644
--- a/src/Umbraco.Tests/Composing/PackageActionCollectionTests.cs
+++ b/src/Umbraco.Tests/Composing/PackageActionCollectionTests.cs
@@ -22,7 +22,7 @@ namespace Umbraco.Tests.Composing
{
var container = TestHelper.GetRegister();
- var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var expectedPackageActions = TypeLoader.GetPackageActions();
composition.WithCollectionBuilder()
diff --git a/src/Umbraco.Tests/IO/FileSystemsTests.cs b/src/Umbraco.Tests/IO/FileSystemsTests.cs
index 71dd954052..c1d3fbb331 100644
--- a/src/Umbraco.Tests/IO/FileSystemsTests.cs
+++ b/src/Umbraco.Tests/IO/FileSystemsTests.cs
@@ -30,7 +30,7 @@ namespace Umbraco.Tests.IO
{
_register = TestHelper.GetRegister();
- var composition = new Composition(_register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(_register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.Register(_ => Mock.Of());
composition.Register(_ => Mock.Of());
diff --git a/src/Umbraco.Tests/PropertyEditors/PropertyEditorValueEditorTests.cs b/src/Umbraco.Tests/PropertyEditors/PropertyEditorValueEditorTests.cs
index 439036fa16..d2d8cb952b 100644
--- a/src/Umbraco.Tests/PropertyEditors/PropertyEditorValueEditorTests.cs
+++ b/src/Umbraco.Tests/PropertyEditors/PropertyEditorValueEditorTests.cs
@@ -26,7 +26,7 @@ namespace Umbraco.Tests.PropertyEditors
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;
var register = TestHelper.GetRegister();
- var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
register.Register(_
diff --git a/src/Umbraco.Tests/Published/ConvertersTests.cs b/src/Umbraco.Tests/Published/ConvertersTests.cs
index 2ae4c238cc..3ecae51ea8 100644
--- a/src/Umbraco.Tests/Published/ConvertersTests.cs
+++ b/src/Umbraco.Tests/Published/ConvertersTests.cs
@@ -182,7 +182,7 @@ namespace Umbraco.Tests.Published
// Current.Reset();
var register = TestHelper.GetRegister();
- var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.WithCollectionBuilder()
.Append()
diff --git a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs
index 252e03f4c0..87d63f3d8f 100644
--- a/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs
+++ b/src/Umbraco.Tests/Routing/UmbracoModuleTests.cs
@@ -1,23 +1,13 @@
using System;
-using System.IO;
using System.Threading;
using Moq;
using NUnit.Framework;
using Umbraco.Core;
-using Umbraco.Core.Composing;
+using Umbraco.Core.Logging;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Tests.Common.Builders;
using Umbraco.Tests.TestHelpers;
using Umbraco.Web;
-using Umbraco.Core.IO;
-using Umbraco.Core.Logging;
-using Umbraco.Core.Sync;
-using Umbraco.Core.Configuration.UmbracoSettings;
-using Umbraco.Core.Models.PublishedContent;
-using Umbraco.Core.Services;
-using Umbraco.Web.PublishedCache;
-using Umbraco.Web.Routing;
-using Umbraco.Web.Configuration;
-using ConfigModelConversions = Umbraco.Tests.TestHelpers.ConfigModelConversions;
-using Umbraco.Tests.Common.Builders;
namespace Umbraco.Tests.Routing
{
@@ -43,10 +33,10 @@ namespace Umbraco.Tests.Routing
logger,
null, // FIXME: PublishedRouter complexities...
Mock.Of(),
- new RoutableDocumentFilter(ConfigModelConversions.ConvertGlobalSettings(globalSettings), IOHelper),
+ new RoutableDocumentFilter(ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings), IOHelper),
UriUtility,
AppCaches.RequestCache,
- ConfigModelConversions.ConvertGlobalSettings(globalSettings),
+ ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings),
HostingEnvironment
);
diff --git a/src/Umbraco.Tests/Routing/UrlProviderTests.cs b/src/Umbraco.Tests/Routing/UrlProviderTests.cs
index d7a6cc701a..b84bf41bee 100644
--- a/src/Umbraco.Tests/Routing/UrlProviderTests.cs
+++ b/src/Umbraco.Tests/Routing/UrlProviderTests.cs
@@ -5,10 +5,11 @@ using System.Linq;
using Moq;
using NUnit.Framework;
using Umbraco.Core;
-using Umbraco.Web.Composing;
-using Umbraco.Core.Configuration;
using Umbraco.Core.Models;
using Umbraco.Core.Models.PublishedContent;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Tests.Common;
+using Umbraco.Tests.Common.Builders;
using Umbraco.Tests.LegacyXmlPublishedCache;
using Umbraco.Tests.PublishedContent;
using Umbraco.Tests.TestHelpers;
@@ -16,8 +17,6 @@ using Umbraco.Tests.Testing;
using Umbraco.Web;
using Umbraco.Web.PublishedCache;
using Umbraco.Web.Routing;
-using Umbraco.Tests.Common;
-using Umbraco.Tests.Common.Builders;
namespace Umbraco.Tests.Routing
{
@@ -50,7 +49,7 @@ namespace Umbraco.Tests.Routing
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -127,7 +126,7 @@ namespace Umbraco.Tests.Routing
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -156,7 +155,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(true).Build();
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -198,7 +197,7 @@ namespace Umbraco.Tests.Routing
.Returns(snapshot);
var umbracoContext = GetUmbracoContext(currentUri,
- globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings),
+ globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings),
snapshotService: snapshotService.Object);
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
@@ -255,7 +254,7 @@ namespace Umbraco.Tests.Routing
.Returns(snapshot);
var umbracoContext = GetUmbracoContext(currentUri,
- globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings),
+ globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings),
snapshotService: snapshotService.Object);
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
@@ -312,7 +311,7 @@ namespace Umbraco.Tests.Routing
.Returns(snapshot);
var umbracoContext = GetUmbracoContext(currentUri,
- globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings),
+ globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings),
snapshotService: snapshotService.Object);
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
@@ -336,7 +335,7 @@ namespace Umbraco.Tests.Routing
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
- var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -362,7 +361,7 @@ namespace Umbraco.Tests.Routing
Logger,
Microsoft.Extensions.Options.Options.Create(globalSettings),
new SiteDomainHelper(), UmbracoContextAccessor, UriUtility);
- var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("http://example.com/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var publishedUrlProvider = GetPublishedUrlProvider(umbracoContext, urlProvider);
//mock the Umbraco settings that we need
diff --git a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs
index 79813e662c..0998f1e722 100644
--- a/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs
+++ b/src/Umbraco.Tests/Routing/UrlsProviderWithDomainsTests.cs
@@ -4,14 +4,13 @@ using System.Linq;
using Moq;
using NUnit.Framework;
using Umbraco.Core;
-using Umbraco.Core.Configuration;
using Umbraco.Core.Models;
using Umbraco.Core.Models.PublishedContent;
using Umbraco.Core.Services;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Tests.Common;
using Umbraco.Tests.Common.Builders;
using Umbraco.Tests.LegacyXmlPublishedCache;
-using Umbraco.Tests.TestHelpers;
using Umbraco.Web;
using Umbraco.Web.Routing;
@@ -183,7 +182,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
Logger,
@@ -217,7 +216,7 @@ namespace Umbraco.Tests.Routing
var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
Logger,
@@ -244,7 +243,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
Logger,
@@ -277,7 +276,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -301,7 +300,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -367,7 +366,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("http://domain1.com/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("http://domain1.com/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
@@ -394,7 +393,7 @@ namespace Umbraco.Tests.Routing
var globalSettings = new GlobalSettingsBuilder().WithHideTopLevelNodeFromPath(false).Build();
- var umbracoContext = GetUmbracoContext("http://domain1.com/en/test", 1111, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext("http://domain1.com/en/test", 1111, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
diff --git a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs
index 085cf7f274..6e00b7a7f0 100644
--- a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs
+++ b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs
@@ -13,6 +13,7 @@ using Umbraco.Tests.LegacyXmlPublishedCache;
using Umbraco.Web;
using Umbraco.Tests.Common;
using Umbraco.Tests.Common.Builders;
+using Umbraco.Infrastructure.Configuration;
namespace Umbraco.Tests.Routing
{
@@ -42,7 +43,7 @@ namespace Umbraco.Tests.Routing
const string url = "http://domain1.com/1001-1/1001-1-1";
// get the nice url for 100111
- var umbracoContext = GetUmbracoContext(url, 9999, globalSettings: ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoContext = GetUmbracoContext(url, 9999, globalSettings: ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings));
var umbracoContextAccessor = new TestUmbracoContextAccessor(umbracoContext);
var urlProvider = new DefaultUrlProvider(
Microsoft.Extensions.Options.Options.Create(requestHandlerSettings),
diff --git a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs
index 26322aa801..369eaeeac5 100644
--- a/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs
+++ b/src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs
@@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
-using System.Data;
using Examine;
using Moq;
using NUnit.Framework;
@@ -9,14 +8,13 @@ using Umbraco.Core.Cache;
using Umbraco.Core.Composing;
using Umbraco.Core.Configuration;
using Umbraco.Core.Configuration.UmbracoSettings;
-using Umbraco.Core.Events;
using Umbraco.Core.Exceptions;
using Umbraco.Core.Hosting;
using Umbraco.Core.IO;
using Umbraco.Core.Logging;
using Umbraco.Core.Persistence;
using Umbraco.Core.Runtime;
-using Umbraco.Core.Scoping;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Net;
using Umbraco.Tests.TestHelpers;
using Umbraco.Tests.TestHelpers.Stubs;
@@ -118,7 +116,7 @@ namespace Umbraco.Tests.Runtimes
public class TestRuntime : CoreRuntime
{
public TestRuntime(Configs configs, IUmbracoVersion umbracoVersion, IIOHelper ioHelper, ILogger logger, IProfiler profiler, IHostingEnvironment hostingEnvironment, IBackOfficeInfo backOfficeInfo)
- : base(Umbraco.Web.Configuration.ConfigModelConversions.ConvertGlobalSettings(configs.Global()), Umbraco.Web.Configuration.ConfigModelConversions.ConvertConnectionStrings(configs.ConnectionStrings()), umbracoVersion, ioHelper, logger, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), NoAppCache.Instance)
+ : base(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(configs.Global()), ConfigModelConversionsFromLegacy.ConvertConnectionStrings(configs.ConnectionStrings()), umbracoVersion, ioHelper, logger, profiler, new AspNetUmbracoBootPermissionChecker(), hostingEnvironment, backOfficeInfo, TestHelper.DbProviderFactoryCreator, TestHelper.MainDom, TestHelper.GetTypeFinder(), NoAppCache.Instance)
{
}
diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs
index 394ed902f8..2773eef4ab 100644
--- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs
+++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs
@@ -80,7 +80,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);
+ 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);
// create the core runtime and have it compose itself
@@ -271,7 +271,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);
+ 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);
diff --git a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs
index e47e9692bd..a0c954e7bb 100644
--- a/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs
+++ b/src/Umbraco.Tests/Scoping/ScopeEventDispatcherTests.cs
@@ -35,7 +35,7 @@ namespace Umbraco.Tests.Scoping
var register = TestHelper.GetRegister();
- var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(register, TestHelper.GetMockedTypeLoader(), Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
_testObjects = new TestObjects(register);
diff --git a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs
index 3faea42f01..6bc228bf83 100644
--- a/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs
+++ b/src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs
@@ -45,7 +45,7 @@ namespace Umbraco.Tests.TestHelpers
logger,
false);
- var composition = new Composition(container, typeLoader, Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ var composition = new Composition(container, typeLoader, Mock.Of(), ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
composition.RegisterUnique(_ => Mock.Of());
composition.RegisterUnique(_ => Mock.Of());
diff --git a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs
index d339143c61..b8cab0d0f7 100644
--- a/src/Umbraco.Tests/Testing/UmbracoTestBase.cs
+++ b/src/Umbraco.Tests/Testing/UmbracoTestBase.cs
@@ -37,6 +37,7 @@ using Umbraco.Core.Serialization;
using Umbraco.Core.Services;
using Umbraco.Core.Services.Implement;
using Umbraco.Core.Strings;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Net;
using Umbraco.Tests.Common;
using Umbraco.Tests.Common.Builders;
@@ -58,7 +59,6 @@ using Umbraco.Web.Security.Providers;
using Umbraco.Web.Services;
using Umbraco.Web.Templates;
using Umbraco.Web.Trees;
-using ConfigModelConversions = Umbraco.Tests.TestHelpers.ConfigModelConversions;
using Current = Umbraco.Web.Composing.Current;
using FileSystems = Umbraco.Core.IO.FileSystems;
@@ -176,7 +176,7 @@ namespace Umbraco.Tests.Testing
var globalSettings = new GlobalSettingsBuilder().Build();
var settings = TestHelpers.SettingsForTests.GenerateMockWebRoutingSettings();
- IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(ConfigModelConversions.ConvertGlobalSettings(globalSettings), IOHelper, logger, settings);
+ IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(ConfigModelConversionsToLegacy.ConvertGlobalSettings(globalSettings), IOHelper, logger, settings);
IIpResolver ipResolver = new AspNetIpResolver();
UmbracoVersion = new UmbracoVersion(globalSettings);
@@ -188,7 +188,7 @@ namespace Umbraco.Tests.Testing
- Composition = new Composition(register, typeLoader, proflogger, ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.IOHelper, AppCaches.NoCache);
+ Composition = new Composition(register, typeLoader, proflogger, ComponentTests.MockRuntimeState(RuntimeLevel.Run), TestHelper.GetConfigs(), TestHelper.IOHelper, AppCaches.NoCache);
@@ -412,6 +412,23 @@ namespace Umbraco.Tests.Testing
protected virtual void ComposeSettings()
{
+ var contentSettings = new ContentSettingsBuilder().Build();
+ var coreDebugSettings = new CoreDebugSettingsBuilder().Build();
+ var globalSettings = new GlobalSettingsBuilder().Build();
+ var nuCacheSettings = new NuCacheSettingsBuilder().Build();
+ var requestHandlerSettings = new RequestHandlerSettingsBuilder().Build();
+ var userPasswordConfigurationSettings = new UserPasswordConfigurationSettingsBuilder().Build();
+ var webRoutingSettings = new WebRoutingSettingsBuilder().Build();
+
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(contentSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(coreDebugSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(globalSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(nuCacheSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(requestHandlerSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(userPasswordConfigurationSettings));
+ Composition.Register(x => Microsoft.Extensions.Options.Options.Create(webRoutingSettings));
+
+ // TODO: remove this once legacy config is fully extracted.
Composition.Configs.Add(() => TestHelpers.SettingsForTests.DefaultGlobalSettings);
Composition.Configs.Add(() => TestHelpers.SettingsForTests.DefaultHostingSettings);
Composition.Configs.Add(TestHelpers.SettingsForTests.GenerateMockRequestHandlerSettings);
@@ -420,8 +437,6 @@ namespace Umbraco.Tests.Testing
Composition.Configs.Add(TestHelpers.SettingsForTests.GenerateMockUserPasswordConfiguration);
Composition.Configs.Add(TestHelpers.SettingsForTests.GenerateMockMemberPasswordConfiguration);
Composition.Configs.Add(TestHelpers.SettingsForTests.GenerateMockContentSettings);
-
- //Composition.Configs.Add(() => new DefaultUserPasswordConfig());
}
protected virtual void ComposeApplication(bool withApplication)
diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj
index b21814cab7..193b4093f5 100644
--- a/src/Umbraco.Tests/Umbraco.Tests.csproj
+++ b/src/Umbraco.Tests/Umbraco.Tests.csproj
@@ -145,7 +145,6 @@
-
diff --git a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs
index b4911d6b59..80ea591037 100644
--- a/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs
+++ b/src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs
@@ -127,6 +127,11 @@ namespace Umbraco.Extensions
services.Configure(configuration.GetSection(Constants.Configuration.ConfigSecurityPrefix + "UserPassword"));
services.Configure(configuration.GetSection(Constants.Configuration.ConfigPrefix + "WebRouting"));
+ // TODO: remove this once no longer requred in Umbraco.Web.
+ var configsFactory = new AspNetCoreConfigsFactory(configuration);
+ var configs = configsFactory.Create();
+ services.AddSingleton(configs);
+
return services;
}
diff --git a/src/Umbraco.Web/AppBuilderExtensions.cs b/src/Umbraco.Web/AppBuilderExtensions.cs
index 18eb3a54fe..499ebbd929 100644
--- a/src/Umbraco.Web/AppBuilderExtensions.cs
+++ b/src/Umbraco.Web/AppBuilderExtensions.cs
@@ -4,7 +4,7 @@ using Microsoft.Owin.Logging;
using Owin;
using Umbraco.Core.Configuration;
using Umbraco.Core.Hosting;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Logging;
namespace Umbraco.Web
@@ -47,7 +47,7 @@ namespace Umbraco.Web
///
public static IAppBuilder UseSignalR(this IAppBuilder app, IGlobalSettings globalSettings, IHostingEnvironment hostingEnvironment)
{
- var umbracoPath = ConfigModelConversions.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
+ var umbracoPath = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
var signalrPath = HttpRuntime.AppDomainAppVirtualPath + umbracoPath + "/BackOffice/signalr";
return app.MapSignalR(signalrPath, new HubConfiguration { EnableDetailedErrors = true });
}
diff --git a/src/Umbraco.Web/Compose/AuditEventsComponent.cs b/src/Umbraco.Web/Compose/AuditEventsComponent.cs
index 9b9a1671f3..9aabfd0a66 100644
--- a/src/Umbraco.Web/Compose/AuditEventsComponent.cs
+++ b/src/Umbraco.Web/Compose/AuditEventsComponent.cs
@@ -7,11 +7,11 @@ using Umbraco.Core.Configuration;
using Umbraco.Core.Events;
using Umbraco.Core.Models;
using Umbraco.Core.Models.Membership;
-using Umbraco.Net;
using Umbraco.Core.Services;
using Umbraco.Core.Services.Implement;
using Umbraco.Extensions;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Net;
namespace Umbraco.Core.Compose
{
@@ -50,7 +50,7 @@ namespace Umbraco.Core.Compose
public void Terminate()
{ }
- public static IUser UnknownUser(IGlobalSettings globalSettings) => new User(ConfigModelConversions.ConvertGlobalSettings(globalSettings)) { Id = Constants.Security.UnknownUserId, Name = Constants.Security.UnknownUserName, Email = "" };
+ public static IUser UnknownUser(IGlobalSettings globalSettings) => new User(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings)) { Id = Constants.Security.UnknownUserId, Name = Constants.Security.UnknownUserName, Email = "" };
private IUser CurrentPerformingUser
{
diff --git a/src/Umbraco.Web/Configuration/ConfigModelConversions.cs b/src/Umbraco.Web/Configuration/ConfigModelConversions.cs
index 7225c1c058..f3b74734b4 100644
--- a/src/Umbraco.Web/Configuration/ConfigModelConversions.cs
+++ b/src/Umbraco.Web/Configuration/ConfigModelConversions.cs
@@ -9,54 +9,11 @@ namespace Umbraco.Web.Configuration
{
///
/// TEMPORARY: this class has been added just to ensure Umbraco.Web functionality continues to compile, by
- /// converting between e.g. (used by
- /// legacy configuration and (used by Netcore/IOptions configuration).
+ /// converting between e.g. (used by
+ /// legacy configuration and (used by Netcore/IOptions configuration).
///
public static class ConfigModelConversions
{
- public static GlobalSettings ConvertGlobalSettings(IGlobalSettings globalSettings)
- {
- return new GlobalSettings
- {
- DatabaseFactoryServerVersion = globalSettings.DatabaseFactoryServerVersion,
- DefaultUILanguage = globalSettings.DefaultUILanguage,
- DisableElectionForSingleServer = globalSettings.DisableElectionForSingleServer,
- HideTopLevelNodeFromPath = globalSettings.HideTopLevelNodeFromPath,
- InstallEmptyDatabase = globalSettings.InstallEmptyDatabase,
- InstallMissingDatabase = globalSettings.InstallMissingDatabase,
- MainDomLock = globalSettings.MainDomLock,
- NoNodesViewPath = globalSettings.NoNodesViewPath,
- RegisterType = globalSettings.RegisterType,
- ReservedPaths = globalSettings.ReservedPaths,
- ReservedUrls = globalSettings.ReservedUrls,
- Smtp = new SmtpSettings
- {
- DeliveryMethod = globalSettings.SmtpSettings.DeliveryMethod,
- From = globalSettings.SmtpSettings.From,
- Host = globalSettings.SmtpSettings.Host,
- Password = globalSettings.SmtpSettings.Password,
- PickupDirectoryLocation = globalSettings.SmtpSettings.PickupDirectoryLocation,
- Port = globalSettings.SmtpSettings.Port,
- Username = globalSettings.SmtpSettings.Username,
- },
- TimeOutInMinutes = globalSettings.TimeOutInMinutes,
- UmbracoCssPath = globalSettings.UmbracoCssPath,
- UmbracoMediaPath = globalSettings.UmbracoMediaPath,
- Path = globalSettings.UmbracoPath,
- UmbracoScriptsPath = globalSettings.UmbracoScriptsPath,
- UseHttps = globalSettings.UseHttps,
- VersionCheckPeriod = globalSettings.VersionCheckPeriod,
- };
- }
-
- public static Umbraco.Core.Configuration.Models.ConnectionStrings ConvertConnectionStrings(IConnectionStrings connectionStrings)
- {
- return new Umbraco.Core.Configuration.Models.ConnectionStrings
- {
- UmbracoConnectionString = connectionStrings[Constants.System.UmbracoConnectionName].ConnectionString
- };
- }
-
public static IOptions ConvertToOptionsOfUserPasswordConfigurationSettings(IOptions identityOptions)
{
var passwordOptions = identityOptions.Value.Password;
diff --git a/src/Umbraco.Web/Editors/BackOfficeController.cs b/src/Umbraco.Web/Editors/BackOfficeController.cs
index 3106d02dc8..34d6e49563 100644
--- a/src/Umbraco.Web/Editors/BackOfficeController.cs
+++ b/src/Umbraco.Web/Editors/BackOfficeController.cs
@@ -11,13 +11,13 @@ using Umbraco.Core.Configuration;
using Umbraco.Core.Logging;
using Umbraco.Web.Mvc;
using Umbraco.Core.Services;
-using Umbraco.Web.Configuration;
using Umbraco.Web.Features;
using Umbraco.Web.Security;
using Constants = Umbraco.Core.Constants;
using Umbraco.Core.Configuration.UmbracoSettings;
using Umbraco.Core.Hosting;
using BackOfficeIdentityUser = Umbraco.Core.BackOffice.BackOfficeIdentityUser;
+using Umbraco.Infrastructure.Configuration;
namespace Umbraco.Web.Editors
{
@@ -140,7 +140,7 @@ namespace Umbraco.Web.Editors
if (defaultResponse == null) throw new ArgumentNullException("defaultResponse");
if (externalSignInResponse == null) throw new ArgumentNullException("externalSignInResponse");
- ViewData.SetUmbracoPath(ConfigModelConversions.ConvertGlobalSettings(GlobalSettings).GetUmbracoMvcArea(_hostingEnvironment));
+ ViewData.SetUmbracoPath(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(GlobalSettings).GetUmbracoMvcArea(_hostingEnvironment));
//check if there is the TempData with the any token name specified, if so, assign to view bag and render the view
if (ViewData.FromTempData(TempData, ViewDataExtensions.TokenExternalSignInError) ||
@@ -255,7 +255,7 @@ namespace Umbraco.Web.Editors
var groups = Services.UserService.GetUserGroupsByAlias(autoLinkOptions.GetDefaultUserGroups(UmbracoContext, loginInfo));
var autoLinkUser = BackOfficeIdentityUser.CreateNew(
- ConfigModelConversions.ConvertGlobalSettings(GlobalSettings),
+ ConfigModelConversionsFromLegacy.ConvertGlobalSettings(GlobalSettings),
loginInfo.Email,
loginInfo.Email,
autoLinkOptions.GetDefaultCulture(UmbracoContext, loginInfo));
diff --git a/src/Umbraco.Web/Editors/BackOfficeServerVariables.cs b/src/Umbraco.Web/Editors/BackOfficeServerVariables.cs
index ec8d7e5dd5..8babcc703f 100644
--- a/src/Umbraco.Web/Editors/BackOfficeServerVariables.cs
+++ b/src/Umbraco.Web/Editors/BackOfficeServerVariables.cs
@@ -7,17 +7,15 @@ using System.Web;
using System.Web.Mvc;
using Umbraco.Core;
using Umbraco.Core.Configuration;
-using Umbraco.Web.Configuration;
-using Umbraco.Web.Features;
-using Umbraco.Web.HealthCheck;
-using Umbraco.Web.Models.ContentEditing;
-using Umbraco.Web.Mvc;
-using Umbraco.Web.Trees;
-using Constants = Umbraco.Core.Constants;
using Umbraco.Core.Configuration.UmbracoSettings;
using Umbraco.Core.Hosting;
using Umbraco.Core.WebAssets;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Web.Features;
+using Umbraco.Web.Mvc;
using Umbraco.Web.Security;
+using Umbraco.Web.Trees;
+using Constants = Umbraco.Core.Constants;
namespace Umbraco.Web.Editors
{
@@ -144,7 +142,7 @@ namespace Umbraco.Web.Editors
{
"umbracoSettings", new Dictionary
{
- {"umbracoPath", ConfigModelConversions.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment)},
+ {"umbracoPath", ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment)},
{"mediaPath", _hostingEnvironment.ToAbsolute(globalSettings.UmbracoMediaPath).TrimEnd('/')},
{"appPluginsPath", _hostingEnvironment.ToAbsolute(Constants.SystemDirectories.AppPlugins).TrimEnd('/')},
{
@@ -168,8 +166,8 @@ namespace Umbraco.Web.Editors
{"cssPath", _hostingEnvironment.ToAbsolute(globalSettings.UmbracoCssPath).TrimEnd('/')},
{"allowPasswordReset", _securitySettings.AllowPasswordReset},
{"loginBackgroundImage", _contentSettings.LoginBackgroundImage},
- {"showUserInvite", EmailSender.CanSendRequiredEmail(ConfigModelConversions.ConvertGlobalSettings(globalSettings))},
- {"canSendRequiredEmail", EmailSender.CanSendRequiredEmail(ConfigModelConversions.ConvertGlobalSettings(globalSettings))},
+ {"showUserInvite", EmailSender.CanSendRequiredEmail(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings))},
+ {"canSendRequiredEmail", EmailSender.CanSendRequiredEmail(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings))},
{"showAllowSegmentationForDocumentTypes", false},
}
},
diff --git a/src/Umbraco.Web/Mvc/AreaRegistrationExtensions.cs b/src/Umbraco.Web/Mvc/AreaRegistrationExtensions.cs
index eee675e9fd..679fb7987c 100644
--- a/src/Umbraco.Web/Mvc/AreaRegistrationExtensions.cs
+++ b/src/Umbraco.Web/Mvc/AreaRegistrationExtensions.cs
@@ -6,11 +6,8 @@ using System.Web.Routing;
using System.Web.SessionState;
using Umbraco.Core;
using Umbraco.Core.Configuration;
-using Umbraco.Core.Exceptions;
using Umbraco.Core.Hosting;
-using Umbraco.Core.IO;
-using Umbraco.Web.Composing;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.WebApi;
namespace Umbraco.Web.Mvc
@@ -61,7 +58,7 @@ namespace Umbraco.Web.Mvc
if (routes == null) throw new ArgumentNullException(nameof(routes));
if (defaultId == null) throw new ArgumentNullException(nameof(defaultId));
- var umbracoArea = ConfigModelConversions.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
+ var umbracoArea = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
//routes are explicitly named with controller names and IDs
var url = umbracoArea + "/" +
diff --git a/src/Umbraco.Web/Mvc/BackOfficeArea.cs b/src/Umbraco.Web/Mvc/BackOfficeArea.cs
index 4a4202b42b..677ae18a1e 100644
--- a/src/Umbraco.Web/Mvc/BackOfficeArea.cs
+++ b/src/Umbraco.Web/Mvc/BackOfficeArea.cs
@@ -1,9 +1,7 @@
using System.Web.Mvc;
-using Umbraco.Web.Composing;
using Umbraco.Core.Configuration;
using Umbraco.Core.Hosting;
-using Umbraco.Core.IO;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Editors;
namespace Umbraco.Web.Mvc
@@ -51,6 +49,6 @@ namespace Umbraco.Web.Mvc
new[] {typeof (BackOfficeController).Namespace});
}
- public override string AreaName => ConfigModelConversions.ConvertGlobalSettings(_globalSettings).GetUmbracoMvcArea(_hostingEnvironment);
+ public override string AreaName => ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings).GetUmbracoMvcArea(_hostingEnvironment);
}
}
diff --git a/src/Umbraco.Web/Mvc/UmbracoAuthorizeAttribute.cs b/src/Umbraco.Web/Mvc/UmbracoAuthorizeAttribute.cs
index 9fc58a208f..d9baa25823 100644
--- a/src/Umbraco.Web/Mvc/UmbracoAuthorizeAttribute.cs
+++ b/src/Umbraco.Web/Mvc/UmbracoAuthorizeAttribute.cs
@@ -2,9 +2,9 @@
using System.Web;
using System.Web.Mvc;
using Umbraco.Core;
-using Umbraco.Web.Composing;
using Umbraco.Core.Configuration;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Web.Composing;
using Umbraco.Web.Security;
namespace Umbraco.Web.Mvc
@@ -56,7 +56,7 @@ namespace Umbraco.Web.Mvc
{
if (redirectToUmbracoLogin)
{
- _redirectUrl = ConfigModelConversions.ConvertGlobalSettings(Current.Configs.Global()).GetBackOfficePath(Current.HostingEnvironment).EnsureStartsWith("~");
+ _redirectUrl = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(Current.Configs.Global()).GetBackOfficePath(Current.HostingEnvironment).EnsureStartsWith("~");
}
}
diff --git a/src/Umbraco.Web/Runtime/WebInitialComponent.cs b/src/Umbraco.Web/Runtime/WebInitialComponent.cs
index 5ad51acbc0..4c66322cde 100644
--- a/src/Umbraco.Web/Runtime/WebInitialComponent.cs
+++ b/src/Umbraco.Web/Runtime/WebInitialComponent.cs
@@ -10,12 +10,9 @@ using Umbraco.Core.Composing;
using Umbraco.Core.Configuration;
using Umbraco.Core.Hosting;
using Umbraco.Core.Strings;
-using Umbraco.Core.IO;
-using Umbraco.Web.Configuration;
-using Umbraco.Web.Install;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Mvc;
using Umbraco.Web.WebApi;
-
using Constants = Umbraco.Core.Constants;
using Current = Umbraco.Web.Composing.Current;
@@ -118,7 +115,7 @@ namespace Umbraco.Web.Runtime
UmbracoApiControllerTypeCollection apiControllerTypes,
IHostingEnvironment hostingEnvironment)
{
- var umbracoPath = ConfigModelConversions.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
+ var umbracoPath = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
// create the front-end route
var defaultRoute = RouteTable.Routes.MapRoute(
@@ -155,7 +152,7 @@ namespace Umbraco.Web.Runtime
UmbracoApiControllerTypeCollection apiControllerTypes,
IHostingEnvironment hostingEnvironment)
{
- var umbracoPath = ConfigModelConversions.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
+ var umbracoPath = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings).GetUmbracoMvcArea(hostingEnvironment);
// need to find the plugin controllers and route them
var pluginControllers = surfaceControllerTypes.Concat(apiControllerTypes).ToArray();
diff --git a/src/Umbraco.Web/Security/BackOfficeOwinUserManager.cs b/src/Umbraco.Web/Security/BackOfficeOwinUserManager.cs
index 92e4fca420..d11edc7bba 100644
--- a/src/Umbraco.Web/Security/BackOfficeOwinUserManager.cs
+++ b/src/Umbraco.Web/Security/BackOfficeOwinUserManager.cs
@@ -11,6 +11,7 @@ using Umbraco.Core.Configuration;
using Umbraco.Core.Mapping;
using Umbraco.Core.Security;
using Umbraco.Core.Services;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Net;
using Umbraco.Web.Configuration;
@@ -54,7 +55,7 @@ namespace Umbraco.Web.Security
IDataProtectionProvider dataProtectionProvider,
ILogger> logger)
{
- var store = new BackOfficeUserStore(userService, entityService, externalLoginService, ConfigModelConversions.ConvertGlobalSettings(globalSettings), mapper);
+ var store = new BackOfficeUserStore(userService, entityService, externalLoginService, ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings), mapper);
return Create(
passwordConfiguration,
diff --git a/src/Umbraco.Web/Security/BackOfficeSignInManager.cs b/src/Umbraco.Web/Security/BackOfficeSignInManager.cs
index c998b579a1..fe90db9ec7 100644
--- a/src/Umbraco.Web/Security/BackOfficeSignInManager.cs
+++ b/src/Umbraco.Web/Security/BackOfficeSignInManager.cs
@@ -10,8 +10,7 @@ using Microsoft.Owin.Security;
using Umbraco.Core;
using Umbraco.Core.BackOffice;
using Umbraco.Core.Configuration;
-using Umbraco.Core.BackOffice;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
namespace Umbraco.Web.Security
{
@@ -79,7 +78,7 @@ namespace Umbraco.Web.Security
var user = await _userManager.FindByNameAsync(userName);
//if the user is null, create an empty one which can be used for auto-linking
- if (user == null) user = BackOfficeIdentityUser.CreateNew(ConfigModelConversions.ConvertGlobalSettings(_globalSettings), userName, null, _globalSettings.DefaultUILanguage);
+ if (user == null) user = BackOfficeIdentityUser.CreateNew(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings), userName, null, _globalSettings.DefaultUILanguage);
//check the password for the user, this will allow a developer to auto-link
//an account if they have specified an IBackOfficeUserPasswordChecker
diff --git a/src/Umbraco.Web/Security/GetUserSecondsMiddleWare.cs b/src/Umbraco.Web/Security/GetUserSecondsMiddleWare.cs
index f73f25f859..5c3ab46101 100644
--- a/src/Umbraco.Web/Security/GetUserSecondsMiddleWare.cs
+++ b/src/Umbraco.Web/Security/GetUserSecondsMiddleWare.cs
@@ -9,9 +9,7 @@ using Umbraco.Core;
using Umbraco.Core.Configuration;
using Umbraco.Core.Configuration.UmbracoSettings;
using Umbraco.Core.Hosting;
-using Umbraco.Core.IO;
-using Umbraco.Core.Security;
-using Umbraco.Web.Configuration;
+using Umbraco.Infrastructure.Configuration;
namespace Umbraco.Web.Security
{
@@ -54,7 +52,7 @@ namespace Umbraco.Web.Security
if (request.Uri.Scheme.InvariantStartsWith("http")
&& request.Uri.AbsolutePath.InvariantEquals(
- $"{ConfigModelConversions.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment)}/backoffice/UmbracoApi/Authentication/GetRemainingTimeoutSeconds"))
+ $"{ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment)}/backoffice/UmbracoApi/Authentication/GetRemainingTimeoutSeconds"))
{
var cookie = _authOptions.CookieManager.GetRequestCookie(context, _security.AuthCookieName);
if (cookie.IsNullOrWhiteSpace() == false)
diff --git a/src/Umbraco.Web/UmbracoApplication.cs b/src/Umbraco.Web/UmbracoApplication.cs
index 4cdcecc1ce..843082e884 100644
--- a/src/Umbraco.Web/UmbracoApplication.cs
+++ b/src/Umbraco.Web/UmbracoApplication.cs
@@ -1,20 +1,14 @@
-using System.Collections;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Threading;
+using System.Runtime.InteropServices;
using System.Web;
using Umbraco.Core;
using Umbraco.Core.Cache;
-using Umbraco.Core.Logging;
-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.Core.Runtime;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Runtime;
-using Umbraco.Web.Configuration;
namespace Umbraco.Web
{
@@ -30,8 +24,8 @@ namespace Umbraco.Web
var dbProviderFactoryCreator = new UmbracoDbProviderFactoryCreator();
- var globalSettings = ConfigModelConversions.ConvertGlobalSettings(configs.Global());
- var connectionStrings = ConfigModelConversions.ConvertConnectionStrings(configs.ConnectionStrings());
+ var globalSettings = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(configs.Global());
+ var connectionStrings = ConfigModelConversionsFromLegacy.ConvertConnectionStrings(configs.ConnectionStrings());
// Determine if we should use the sql main dom or the default
var appSettingMainDomLock = globalSettings.MainDomLock;
diff --git a/src/Umbraco.Web/UmbracoApplicationBase.cs b/src/Umbraco.Web/UmbracoApplicationBase.cs
index 984f46bd60..4f6f2c7f0f 100644
--- a/src/Umbraco.Web/UmbracoApplicationBase.cs
+++ b/src/Umbraco.Web/UmbracoApplicationBase.cs
@@ -1,10 +1,10 @@
-using Serilog.Context;
-using System;
+using System;
using System.IO;
using System.Reflection;
using System.Threading;
using System.Web;
using System.Web.Hosting;
+using Serilog.Context;
using Umbraco.Core;
using Umbraco.Core.Cache;
using Umbraco.Core.Composing;
@@ -14,9 +14,8 @@ using Umbraco.Core.IO;
using Umbraco.Core.Logging;
using Umbraco.Core.Logging.Serilog;
using Umbraco.Core.Logging.Serilog.Enrichers;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Net;
-using Umbraco.Web.AspNet;
-using Umbraco.Web.Configuration;
using Umbraco.Web.Hosting;
using Umbraco.Web.Logging;
using Current = Umbraco.Web.Composing.Current;
@@ -128,7 +127,7 @@ namespace Umbraco.Web
///
protected virtual IRegister GetRegister(IGlobalSettings globalSettings)
{
- return RegisterFactory.Create(ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ return RegisterFactory.Create(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings));
}
// events - in the order they trigger
@@ -161,7 +160,7 @@ namespace Umbraco.Web
var globalSettings = Umbraco.Composing.Current.Configs.Global();
- var umbracoVersion = new UmbracoVersion(ConfigModelConversions.ConvertGlobalSettings(globalSettings));
+ var umbracoVersion = new UmbracoVersion(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(globalSettings));
// create the register for the application, and boot
// the boot manager is responsible for registrations
diff --git a/src/Umbraco.Web/UmbracoContext.cs b/src/Umbraco.Web/UmbracoContext.cs
index e94e0acc0b..73ee4a377e 100644
--- a/src/Umbraco.Web/UmbracoContext.cs
+++ b/src/Umbraco.Web/UmbracoContext.cs
@@ -4,8 +4,8 @@ using Umbraco.Core;
using Umbraco.Core.Configuration;
using Umbraco.Core.Hosting;
using Umbraco.Core.Models.PublishedContent;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Composing;
-using Umbraco.Web.Configuration;
using Umbraco.Web.PublishedCache;
using Umbraco.Web.Routing;
using Umbraco.Web.Security;
@@ -182,7 +182,7 @@ namespace Umbraco.Web
{
var request = GetRequestFromContext();
if (request?.Url != null
- && request.Url.IsBackOfficeRequest(ConfigModelConversions.ConvertGlobalSettings(_globalSettings), _hostingEnvironment) == false
+ && request.Url.IsBackOfficeRequest(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings), _hostingEnvironment) == false
&& Security.CurrentUser != null)
{
var previewToken = _cookieManager.GetPreviewCookieValue(); // may be null or empty
diff --git a/src/Umbraco.Web/UmbracoInjectedModule.cs b/src/Umbraco.Web/UmbracoInjectedModule.cs
index a610d216a3..3bd627be71 100644
--- a/src/Umbraco.Web/UmbracoInjectedModule.cs
+++ b/src/Umbraco.Web/UmbracoInjectedModule.cs
@@ -1,19 +1,16 @@
using System;
-using System.Collections.Generic;
using System.Web;
using System.Web.Routing;
using Umbraco.Core;
-using Umbraco.Core.Security;
using Umbraco.Core.Cache;
using Umbraco.Core.Configuration;
using Umbraco.Core.Exceptions;
using Umbraco.Core.Hosting;
-using Umbraco.Core.IO;
using Umbraco.Core.Logging;
+using Umbraco.Core.Security;
+using Umbraco.Infrastructure.Configuration;
using Umbraco.Web.Composing;
using Umbraco.Web.Routing;
-using Umbraco.Web.Security;
-using Umbraco.Web.Configuration;
namespace Umbraco.Web
{
@@ -114,7 +111,7 @@ namespace Umbraco.Web
var umbracoContext = Current.UmbracoContext;
// re-write for the default back office path
- if (httpContext.Request.Url.IsDefaultBackOfficeRequest(ConfigModelConversions.ConvertGlobalSettings(_globalSettings), _hostingEnvironment))
+ if (httpContext.Request.Url.IsDefaultBackOfficeRequest(ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings), _hostingEnvironment))
{
if (EnsureRuntime(httpContext, umbracoContext.OriginalRequestUrl))
RewriteToBackOfficeHandler(httpContext);
@@ -247,7 +244,7 @@ namespace Umbraco.Web
private void RewriteToBackOfficeHandler(HttpContextBase context)
{
// GlobalSettings.Path has already been through IOHelper.ResolveUrl() so it begins with / and vdir (if any)
- var rewritePath = ConfigModelConversions.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment).TrimEnd('/') + "/Default";
+ var rewritePath = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment).TrimEnd('/') + "/Default";
// rewrite the path to the path of the handler (i.e. /umbraco/RenderMvc)
context.RewritePath(rewritePath, "", "", false);
@@ -280,7 +277,7 @@ namespace Umbraco.Web
var query = pcr.Uri.Query.TrimStart('?');
// GlobalSettings.Path has already been through IOHelper.ResolveUrl() so it begins with / and vdir (if any)
- var rewritePath = ConfigModelConversions.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment).TrimEnd('/') + "/RenderMvc";
+ var rewritePath = ConfigModelConversionsFromLegacy.ConvertGlobalSettings(_globalSettings).GetBackOfficePath(_hostingEnvironment).TrimEnd('/') + "/RenderMvc";
// rewrite the path to the path of the handler (i.e. /umbraco/RenderMvc)
context.RewritePath(rewritePath, "", query, false);
diff --git a/src/Umbraco.Web/WebApi/Filters/CheckIfUserTicketDataIsStaleAttribute.cs b/src/Umbraco.Web/WebApi/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
index bae6d00048..ee057408e9 100644
--- a/src/Umbraco.Web/WebApi/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
+++ b/src/Umbraco.Web/WebApi/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
@@ -5,14 +5,13 @@ using System.Threading.Tasks;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;
using Umbraco.Core;
-using Umbraco.Web.Composing;
using Umbraco.Core.BackOffice;
-using Umbraco.Core.Models.Membership;
-using Umbraco.Core.Security;
-using Umbraco.Web.Security;
using Umbraco.Core.Mapping;
using Umbraco.Core.Models;
-using Umbraco.Web.Configuration;
+using Umbraco.Core.Models.Membership;
+using Umbraco.Infrastructure.Configuration;
+using Umbraco.Web.Composing;
+using Umbraco.Web.Security;
namespace Umbraco.Web.WebApi.Filters
{
@@ -79,7 +78,7 @@ namespace Umbraco.Web.WebApi.Filters
() => user.Username != identity.Username,
() =>
{
- var culture = user.GetUserCulture(Current.Services.TextService, ConfigModelConversions.ConvertGlobalSettings(Current.Configs.Global()));
+ var culture = user.GetUserCulture(Current.Services.TextService, ConfigModelConversionsFromLegacy.ConvertGlobalSettings(Current.Configs.Global()));
return culture != null && culture.ToString() != identity.Culture;
},
() => user.AllowedSections.UnsortedSequenceEqual(identity.AllowedApplications) == false,