mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
- More work related to moving Orchard to Autofac 2.1.
Need to rework the host/shell container spin-off for multitenancy. Need to rework interception. dev branch is now broken until the end of this sprint, enjoy the default branch. --HG-- branch : dev
This commit is contained in:
@@ -3,8 +3,6 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Autofac;
|
||||
using Autofac.Builder;
|
||||
using Autofac.Modules;
|
||||
using NHibernate;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Data;
|
||||
@@ -40,9 +38,9 @@ namespace Orchard.Tests.Modules {
|
||||
_clock = new StubClock();
|
||||
|
||||
var builder = new ContainerBuilder();
|
||||
builder.RegisterModule(new ImplicitCollectionSupportModule());
|
||||
builder.Register(new StubLocator(_session)).As<ISessionLocator>();
|
||||
builder.Register(_clock).As<IClock>();
|
||||
//builder.RegisterModule(new ImplicitCollectionSupportModule());
|
||||
builder.RegisterInstance(new StubLocator(_session)).As<ISessionLocator>();
|
||||
builder.RegisterInstance(_clock).As<IClock>();
|
||||
builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>));
|
||||
Register(builder);
|
||||
_container = builder.Build();
|
||||
|
||||
@@ -31,6 +31,10 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Autofac, Version=2.1.13.813, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\lib\autofac\Autofac.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="FluentNHibernate, Version=1.0.0.593, Culture=neutral, PublicKeyToken=8aa435e3cb308880, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\lib\fluentnhibernate\FluentNHibernate.dll</HintPath>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Autofac.Builder;
|
||||
using Autofac;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Roles.Models;
|
||||
using Orchard.Roles.Services;
|
||||
@@ -10,7 +10,7 @@ namespace Orchard.Tests.Modules.Roles.Services {
|
||||
[TestFixture]
|
||||
public class RoleServiceTests : DatabaseEnabledTestsBase{
|
||||
public override void Register(ContainerBuilder builder) {
|
||||
builder.Register<RoleService>().As<IRoleService>();
|
||||
builder.RegisterType<RoleService>().As<IRoleService>();
|
||||
}
|
||||
|
||||
protected override IEnumerable<Type> DatabaseTypes {
|
||||
|
||||
@@ -3,13 +3,10 @@ using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Routing;
|
||||
using Autofac;
|
||||
using Autofac.Builder;
|
||||
using JetBrains.Annotations;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Data.Builders;
|
||||
using Orchard.Environment;
|
||||
using Orchard.Environment.Configuration;
|
||||
using Orchard.Environment.ShellBuilders;
|
||||
using Orchard.Setup.Controllers;
|
||||
using Orchard.Setup.ViewModels;
|
||||
using Orchard.UI.Notify;
|
||||
@@ -18,7 +15,7 @@ namespace Orchard.Tests.Modules.Setup {
|
||||
[TestFixture, Ignore("this can't be made to work")]
|
||||
public class SetupControllerTests {
|
||||
private string _tempFolder;
|
||||
private IContainer _container;
|
||||
private ILifetimeScope _container;
|
||||
|
||||
[SetUp]
|
||||
public void Init() {
|
||||
@@ -27,20 +24,19 @@ namespace Orchard.Tests.Modules.Setup {
|
||||
Directory.CreateDirectory(_tempFolder);
|
||||
|
||||
var hostContainer = OrchardStarter.CreateHostContainer(builder => {
|
||||
builder.Register(new ControllerBuilder());
|
||||
builder.Register(new ViewEngineCollection { new WebFormViewEngine() });
|
||||
builder.Register(new RouteCollection());
|
||||
builder.Register(new ModelBinderDictionary());
|
||||
builder.RegisterInstance(new ControllerBuilder());
|
||||
builder.RegisterInstance(new ViewEngineCollection { new WebFormViewEngine() });
|
||||
builder.RegisterInstance(new RouteCollection());
|
||||
builder.RegisterInstance(new ModelBinderDictionary());
|
||||
});
|
||||
|
||||
hostContainer.Resolve<IAppDataFolder>().SetBasePath(_tempFolder);
|
||||
|
||||
var host = (DefaultOrchardHost)hostContainer.Resolve<IOrchardHost>();
|
||||
_container = host.CreateShellContainer();
|
||||
_container.Build(builder => {
|
||||
builder.Register<SetupController>();
|
||||
});
|
||||
|
||||
_container = host.CreateShellContainer().BeginLifetimeScope();
|
||||
var updater = new ContainerUpdater();
|
||||
updater.RegisterType<SetupController>();
|
||||
updater.Update(_container);
|
||||
|
||||
//var builder = new ContainerBuilder();
|
||||
//builder.Register<SetupController>();
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Routing;
|
||||
using Autofac.Builder;
|
||||
using Autofac;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Data;
|
||||
@@ -30,17 +28,17 @@ namespace Orchard.Tests.Modules.Users.Controllers {
|
||||
private Mock<IAuthorizer> _authorizer;
|
||||
|
||||
public override void Register(ContainerBuilder builder) {
|
||||
builder.Register<AdminController>();
|
||||
builder.Register<DefaultContentManager>().As<IContentManager>();
|
||||
builder.Register<DefaultContentQuery>().As<IContentQuery>().FactoryScoped();
|
||||
builder.Register<MembershipService>().As<IMembershipService>();
|
||||
builder.Register<UserService>().As<IUserService>();
|
||||
builder.Register<UserHandler>().As<IContentHandler>();
|
||||
builder.Register<OrchardServices>().As<IOrchardServices>();
|
||||
builder.Register<TransactionManager>().As<ITransactionManager>();
|
||||
builder.Register(new Mock<INotifier>().Object);
|
||||
builder.RegisterType<AdminController>().SingleInstance();
|
||||
builder.RegisterType<DefaultContentManager>().As<IContentManager>();
|
||||
builder.RegisterType<DefaultContentQuery>().As<IContentQuery>().InstancePerDependency();
|
||||
builder.RegisterType<MembershipService>().As<IMembershipService>();
|
||||
builder.RegisterType<UserService>().As<IUserService>();
|
||||
builder.RegisterType<UserHandler>().As<IContentHandler>();
|
||||
builder.RegisterType<OrchardServices>().As<IOrchardServices>();
|
||||
builder.RegisterType<TransactionManager>().As<ITransactionManager>();
|
||||
builder.RegisterInstance(new Mock<INotifier>().Object);
|
||||
_authorizer = new Mock<IAuthorizer>();
|
||||
builder.Register(_authorizer.Object);
|
||||
builder.RegisterInstance(_authorizer.Object);
|
||||
}
|
||||
|
||||
protected override IEnumerable<Type> DatabaseTypes {
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
using System;
|
||||
using System.Web.Security;
|
||||
using Autofac;
|
||||
using Autofac.Builder;
|
||||
using Autofac.Modules;
|
||||
using NHibernate;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Data;
|
||||
@@ -54,13 +52,13 @@ namespace Orchard.Tests.Modules.Users.Services {
|
||||
[SetUp]
|
||||
public void Init() {
|
||||
var builder = new ContainerBuilder();
|
||||
builder.RegisterModule(new ImplicitCollectionSupportModule());
|
||||
builder.Register<MembershipService>().As<IMembershipService>();
|
||||
builder.Register<DefaultContentManager>().As<IContentManager>();
|
||||
builder.Register<UserHandler>().As<IContentHandler>();
|
||||
//builder.RegisterModule(new ImplicitCollectionSupportModule());
|
||||
builder.RegisterType<MembershipService>().As<IMembershipService>();
|
||||
builder.RegisterType<DefaultContentManager>().As<IContentManager>();
|
||||
builder.RegisterType<UserHandler>().As<IContentHandler>();
|
||||
builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>));
|
||||
_session = _sessionFactory.OpenSession();
|
||||
builder.Register(new TestSessionLocator(_session)).As<ISessionLocator>();
|
||||
builder.RegisterInstance(new TestSessionLocator(_session)).As<ISessionLocator>();
|
||||
_container = builder.Build();
|
||||
_membershipService = _container.Resolve<IMembershipService>();
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
using System.Xml.Linq;
|
||||
using Autofac.Builder;
|
||||
using Autofac.Modules;
|
||||
using Autofac;
|
||||
using NUnit.Framework;
|
||||
using Orchard.Core.XmlRpc;
|
||||
using Orchard.Core.XmlRpc.Controllers;
|
||||
@@ -16,12 +15,12 @@ namespace Orchard.Tests.Modules.XmlRpc.Controllers {
|
||||
var thing2 = new StubHandler();
|
||||
|
||||
var builder = new ContainerBuilder();
|
||||
builder.RegisterModule(new ImplicitCollectionSupportModule()); ;
|
||||
builder.Register<HomeController>();
|
||||
builder.Register<XmlRpcReader>().As<IMapper<XElement, XRpcMethodCall>>();
|
||||
builder.Register<XmlRpcWriter>().As<IMapper<XRpcMethodResponse, XElement>>();
|
||||
builder.Register(thing1).As<IXmlRpcHandler>();
|
||||
builder.Register(thing2).As<IXmlRpcHandler>();
|
||||
//builder.RegisterModule(new ImplicitCollectionSupportModule()); ;
|
||||
builder.RegisterType<HomeController>();
|
||||
builder.RegisterType<XmlRpcReader>().As<IMapper<XElement, XRpcMethodCall>>();
|
||||
builder.RegisterType<XmlRpcWriter>().As<IMapper<XRpcMethodResponse, XElement>>();
|
||||
builder.RegisterInstance(thing1).As<IXmlRpcHandler>();
|
||||
builder.RegisterInstance(thing2).As<IXmlRpcHandler>();
|
||||
|
||||
var container = builder.Build();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user