mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-01-23 21:32:14 +08:00
Fixing an incomplete save/merge for previous commit
--HG-- branch : dev
This commit is contained in:
@@ -43,7 +43,7 @@ namespace Orchard.Tests.Modules.Setup {
|
||||
//builder.Register<Notifier>().As<INotifier>();
|
||||
//builder.Register<DefaultOrchardHost>().As<IOrchardHost>();
|
||||
//builder.Register<DatabaseMigrationManager>().As<IDatabaseMigrationManager>();
|
||||
//builder.Register<ShellSettingsLoader>().As<IShellSettingsLoader>();
|
||||
//builder.Register<DefaultTenantManager>().As<ITenantManager>();
|
||||
//builder.Register<TestAppDataFolder>().As<IAppDataFolder>();
|
||||
//_container = builder.Build();
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ using Orchard.Environment.Configuration;
|
||||
|
||||
namespace Orchard.Tests.Environment.Configuration {
|
||||
[TestFixture]
|
||||
public class ShellSettingsLoaderTests {
|
||||
public class DefaultTenantManagerTests {
|
||||
private string _tempFolder;
|
||||
private AppDataFolder _appData;
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace Orchard.Tests.Environment.Configuration {
|
||||
|
||||
_appData.CreateFile("Sites\\Default\\Settings.txt", "Name: Default\r\nDataProvider: SQLite\r\nDataConnectionString: something else");
|
||||
|
||||
IShellSettingsLoader loader = new ShellSettingsLoader(_appData);
|
||||
ITenantManager loader = new DefaultTenantManager(_appData);
|
||||
var settings = loader.LoadSettings().Single();
|
||||
Assert.That(settings, Is.Not.Null);
|
||||
Assert.That(settings.Name, Is.EqualTo("Default"));
|
||||
@@ -41,7 +41,7 @@ namespace Orchard.Tests.Environment.Configuration {
|
||||
_appData.CreateFile("Sites\\Default\\Settings.txt", "Name: Default\r\nDataProvider: SQLite\r\nDataConnectionString: something else");
|
||||
_appData.CreateFile("Sites\\Another\\Settings.txt", "Name: Another\r\nDataProvider: SQLite2\r\nDataConnectionString: something else2");
|
||||
|
||||
IShellSettingsLoader loader = new ShellSettingsLoader(_appData);
|
||||
ITenantManager loader = new DefaultTenantManager(_appData);
|
||||
var settings = loader.LoadSettings();
|
||||
Assert.That(settings.Count(), Is.EqualTo(2));
|
||||
|
||||
@@ -60,7 +60,7 @@ namespace Orchard.Tests.Environment.Configuration {
|
||||
public void NewSettingsCanBeStored() {
|
||||
_appData.CreateFile("Sites\\Default\\Settings.txt", "Name: Default\r\nDataProvider: SQLite\r\nDataConnectionString: something else");
|
||||
|
||||
IShellSettingsLoader loader = new ShellSettingsLoader(_appData);
|
||||
ITenantManager loader = new DefaultTenantManager(_appData);
|
||||
var foo = new ShellSettings {Name = "Foo", DataProvider = "Bar", DataConnectionString = "Quux"};
|
||||
|
||||
Assert.That(loader.LoadSettings().Count(), Is.EqualTo(1));
|
||||
|
||||
@@ -47,7 +47,7 @@ namespace Orchard.Tests.Environment {
|
||||
builder.RegisterInstance(new ViewEngineCollection { new WebFormViewEngine() });
|
||||
builder.RegisterInstance(new StuExtensionManager()).As<IExtensionManager>();
|
||||
builder.RegisterInstance(new Mock<IHackInstallationGenerator>().Object);
|
||||
builder.RegisterInstance(new StubShellSettingsLoader()).As<IShellSettingsLoader>();
|
||||
builder.RegisterInstance(new StubShellSettingsLoader()).As<ITenantManager>();
|
||||
});
|
||||
_lifetime = _container.BeginLifetimeScope();
|
||||
var updater = new ContainerUpdater();
|
||||
@@ -55,7 +55,7 @@ namespace Orchard.Tests.Environment {
|
||||
updater.Update(_lifetime);
|
||||
}
|
||||
|
||||
public class StubShellSettingsLoader : IShellSettingsLoader {
|
||||
public class StubShellSettingsLoader : ITenantManager {
|
||||
private readonly List<IShellSettings> _shellSettings = new List<IShellSettings>
|
||||
{new ShellSettings {Name = "testing"}};
|
||||
|
||||
|
||||
@@ -153,7 +153,7 @@
|
||||
<Compile Include="Data\StubLocator.cs" />
|
||||
<Compile Include="Environment\AutofacUtil\DynamicProxy2\DynamicProxyTests.cs" />
|
||||
<Compile Include="Environment\Configuration\AppDataFolderTests.cs" />
|
||||
<Compile Include="Environment\Configuration\ShellSettingsLoaderTests.cs" />
|
||||
<Compile Include="Environment\Configuration\DefaultTenantManagerTests.cs" />
|
||||
<Compile Include="Environment\DefaultCompositionStrategyTests.cs" />
|
||||
<Compile Include="Environment\DefaultOrchardHostTests.cs" />
|
||||
<Compile Include="Environment\DefaultOrchardShellTests.cs" />
|
||||
|
||||
@@ -21,17 +21,17 @@ namespace Orchard.Setup.Controllers {
|
||||
public class SetupController : Controller {
|
||||
private readonly INotifier _notifier;
|
||||
private readonly IOrchardHost _orchardHost;
|
||||
private readonly IShellSettingsLoader _shellSettingsLoader;
|
||||
private readonly ITenantManager _tenantManager;
|
||||
private readonly IAppDataFolder _appDataFolder;
|
||||
|
||||
public SetupController(
|
||||
INotifier notifier,
|
||||
IOrchardHost orchardHost,
|
||||
IShellSettingsLoader shellSettingsLoader,
|
||||
ITenantManager tenantManager,
|
||||
IAppDataFolder appDataFolder) {
|
||||
_notifier = notifier;
|
||||
_orchardHost = orchardHost;
|
||||
_shellSettingsLoader = shellSettingsLoader;
|
||||
_tenantManager = tenantManager;
|
||||
_appDataFolder = appDataFolder;
|
||||
T = NullLocalizer.Instance;
|
||||
}
|
||||
@@ -134,7 +134,7 @@ namespace Orchard.Setup.Controllers {
|
||||
}
|
||||
}
|
||||
|
||||
_shellSettingsLoader.SaveSettings(shellSettings);
|
||||
_tenantManager.SaveSettings(shellSettings);
|
||||
|
||||
_orchardHost.Reinitialize();
|
||||
|
||||
|
||||
@@ -44,6 +44,7 @@ namespace Orchard.Environment.Configuration {
|
||||
public string Name { get; set; }
|
||||
public string DataProvider { get; set; }
|
||||
public string DataConnectionString { get; set; }
|
||||
public string DataPrefix { get; set; }
|
||||
}
|
||||
|
||||
static IShellSettings ParseSettings(string text) {
|
||||
@@ -57,15 +58,16 @@ namespace Orchard.Environment.Configuration {
|
||||
};
|
||||
}
|
||||
|
||||
static string ComposeSettings(IShellSettings shellSettings) {
|
||||
if (shellSettings == null)
|
||||
static string ComposeSettings(IShellSettings settings) {
|
||||
if (settings == null)
|
||||
return "";
|
||||
|
||||
var ser = new YamlSerializer();
|
||||
return ser.Serialize(new Content {
|
||||
Name = shellSettings.Name,
|
||||
DataProvider = shellSettings.DataProvider,
|
||||
DataConnectionString = shellSettings.DataConnectionString
|
||||
Name = settings.Name,
|
||||
DataProvider = settings.DataProvider,
|
||||
DataConnectionString = settings.DataConnectionString,
|
||||
DataPrefix = settings.DataPrefix,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,17 +15,17 @@ namespace Orchard.Environment {
|
||||
private readonly ControllerBuilder _controllerBuilder;
|
||||
private readonly IEnumerable<IShellContainerFactory> _shellContainerFactories;
|
||||
|
||||
private readonly IShellSettingsLoader _shellSettingsLoader;
|
||||
private readonly ITenantManager _tenantManager;
|
||||
private IOrchardShell _current;
|
||||
|
||||
|
||||
public DefaultOrchardHost(
|
||||
IContainerProvider containerProvider,
|
||||
IShellSettingsLoader shellSettingsLoader,
|
||||
ITenantManager tenantManager,
|
||||
ControllerBuilder controllerBuilder,
|
||||
IEnumerable<IShellContainerFactory> shellContainerFactories) {
|
||||
_containerProvider = containerProvider;
|
||||
_shellSettingsLoader = shellSettingsLoader;
|
||||
_tenantManager = tenantManager;
|
||||
_controllerBuilder = controllerBuilder;
|
||||
_shellContainerFactories = shellContainerFactories;
|
||||
}
|
||||
@@ -95,7 +95,7 @@ namespace Orchard.Environment {
|
||||
}
|
||||
|
||||
public virtual ILifetimeScope CreateShellContainer() {
|
||||
var settings = _shellSettingsLoader.LoadSettings();
|
||||
var settings = _tenantManager.LoadSettings();
|
||||
if (settings.Any()) {
|
||||
//TEMP: multi-tenancy not implemented yet
|
||||
var shellContainer = CreateShellContainer(settings.Single());
|
||||
|
||||
@@ -1,14 +1,11 @@
|
||||
using System;
|
||||
using Autofac;
|
||||
using Autofac.Builder;
|
||||
using Autofac.Core;
|
||||
using Autofac.Integration.Web;
|
||||
using Orchard.Environment.AutofacUtil;
|
||||
using Orchard.Environment.Configuration;
|
||||
using Orchard.Environment.ShellBuilders;
|
||||
using Orchard.Extensions;
|
||||
using Orchard.Extensions.Loaders;
|
||||
using Orchard.Mvc;
|
||||
|
||||
namespace Orchard.Environment {
|
||||
public static class OrchardStarter {
|
||||
@@ -20,7 +17,7 @@ namespace Orchard.Environment {
|
||||
builder.RegisterType<DefaultCompositionStrategy>().As<ICompositionStrategy>().SingleInstance();
|
||||
builder.RegisterType<DefaultShellContainerFactory>().As<IShellContainerFactory>().SingleInstance();
|
||||
builder.RegisterType<AppDataFolder>().As<IAppDataFolder>().SingleInstance();
|
||||
builder.RegisterType<ShellSettingsLoader>().As<IShellSettingsLoader>().SingleInstance();
|
||||
builder.RegisterType<DefaultTenantManager>().As<ITenantManager>().SingleInstance();
|
||||
builder.RegisterType<SafeModeShellContainerFactory>().As<IShellContainerFactory>().SingleInstance();
|
||||
|
||||
// The container provider gives you access to the lowest container at the time,
|
||||
|
||||
@@ -158,7 +158,8 @@
|
||||
<Compile Include="Environment\AutofacUtil\DynamicProxy2\DynamicProxyExtensions.cs" />
|
||||
<Compile Include="Environment\AutofacUtil\DynamicProxy2\ConstructorFinderWrapper.cs" />
|
||||
<Compile Include="Environment\Configuration\AppDataFolder.cs" />
|
||||
<Compile Include="Environment\Configuration\ShellSettingsLoader.cs" />
|
||||
<Compile Include="Environment\Configuration\DefaultTenantManager.cs" />
|
||||
<Compile Include="Environment\Configuration\ITenantManager.cs" />
|
||||
<Compile Include="Environment\AutofacUtil\ContainerUpdater.cs" />
|
||||
<Compile Include="Environment\ShellBuilders\DefaultShellContainerFactory.cs" />
|
||||
<Compile Include="Environment\ShellBuilders\IShellContainerFactory.cs" />
|
||||
|
||||
Reference in New Issue
Block a user