NetCore: MSDI refactor remove IFactory & IRegister (#9308)
* Replace IFactory with IServiceProvider * Replace IRegister with IServiceCollection * Fix Rte.cshtml so the view can service locate. * Replace Composing Lifetime with MSDI ServiceLifetime * Remove ServiceProvider AddMultipleUnique extension * Remove Umbraco.Web.Composing.Current.Reset and any calls * Remove LightInject from net framework projects * Brought back a helper for setting MediaFileSystem underlying IFileSystem
This commit is contained in:
@@ -45,39 +45,42 @@ namespace Umbraco.Web.Common.Runtime
|
||||
base.Compose(composition);
|
||||
|
||||
// AspNetCore specific services
|
||||
composition.RegisterUnique<IHttpContextAccessor, HttpContextAccessor>();
|
||||
composition.RegisterUnique<IRequestAccessor, AspNetCoreRequestAccessor>();
|
||||
composition.Services.AddUnique<IHttpContextAccessor, HttpContextAccessor>();
|
||||
composition.Services.AddUnique<IRequestAccessor, AspNetCoreRequestAccessor>();
|
||||
|
||||
// Our own netcore implementations
|
||||
composition.RegisterMultipleUnique<IUmbracoApplicationLifetimeManager, IUmbracoApplicationLifetime, AspNetCoreUmbracoApplicationLifetime>();
|
||||
composition.Services.AddUnique<IUmbracoApplicationLifetimeManager, AspNetCoreUmbracoApplicationLifetime>();
|
||||
composition.Services.AddUnique<IUmbracoApplicationLifetime, AspNetCoreUmbracoApplicationLifetime>();
|
||||
|
||||
composition.RegisterUnique<IApplicationShutdownRegistry, AspNetCoreApplicationShutdownRegistry>();
|
||||
composition.Services.AddUnique<IApplicationShutdownRegistry, AspNetCoreApplicationShutdownRegistry>();
|
||||
|
||||
// The umbraco request lifetime
|
||||
composition.RegisterMultipleUnique<IUmbracoRequestLifetime, IUmbracoRequestLifetimeManager, UmbracoRequestLifetime>();
|
||||
composition.Services.AddUnique<IUmbracoRequestLifetime, UmbracoRequestLifetime>();
|
||||
composition.Services.AddUnique<IUmbracoRequestLifetimeManager, UmbracoRequestLifetime>();
|
||||
|
||||
//Password hasher
|
||||
composition.RegisterUnique<IPasswordHasher, AspNetCorePasswordHasher>();
|
||||
composition.Services.AddUnique<IPasswordHasher, AspNetCorePasswordHasher>();
|
||||
|
||||
|
||||
composition.RegisterUnique<ICookieManager, AspNetCoreCookieManager>();
|
||||
composition.Services.AddUnique<ICookieManager, AspNetCoreCookieManager>();
|
||||
composition.Services.AddTransient<IIpResolver, AspNetCoreIpResolver>();
|
||||
composition.RegisterUnique<IUserAgentProvider, AspNetCoreUserAgentProvider>();
|
||||
composition.Services.AddUnique<IUserAgentProvider, AspNetCoreUserAgentProvider>();
|
||||
|
||||
composition.RegisterMultipleUnique<ISessionIdResolver, ISessionManager, AspNetCoreSessionManager>();
|
||||
composition.Services.AddUnique<ISessionIdResolver, AspNetCoreSessionManager>();
|
||||
composition.Services.AddUnique<ISessionManager, AspNetCoreSessionManager>();
|
||||
|
||||
composition.RegisterUnique<IMarchal, AspNetCoreMarchal>();
|
||||
composition.Services.AddUnique<IMarchal, AspNetCoreMarchal>();
|
||||
|
||||
composition.RegisterUnique<IProfilerHtml, WebProfilerHtml>();
|
||||
composition.Services.AddUnique<IProfilerHtml, WebProfilerHtml>();
|
||||
|
||||
composition.RegisterUnique<IMacroRenderer, MacroRenderer>();
|
||||
composition.RegisterUnique<IMemberUserKeyProvider, MemberUserKeyProvider>();
|
||||
composition.Services.AddUnique<IMacroRenderer, MacroRenderer>();
|
||||
composition.Services.AddUnique<IMemberUserKeyProvider, MemberUserKeyProvider>();
|
||||
|
||||
|
||||
// register the umbraco context factory
|
||||
composition.RegisterUnique<IUmbracoContextFactory, UmbracoContextFactory>();
|
||||
composition.RegisterUnique<IBackofficeSecurityFactory, BackofficeSecurityFactory>();
|
||||
composition.RegisterUnique<IBackofficeSecurityAccessor, HybridBackofficeSecurityAccessor>();
|
||||
composition.Services.AddUnique<IUmbracoContextFactory, UmbracoContextFactory>();
|
||||
composition.Services.AddUnique<IBackofficeSecurityFactory, BackofficeSecurityFactory>();
|
||||
composition.Services.AddUnique<IBackofficeSecurityAccessor, HybridBackofficeSecurityAccessor>();
|
||||
|
||||
//register the install components
|
||||
//NOTE: i tried to not have these registered if we weren't installing or upgrading but post install when the site restarts
|
||||
@@ -89,17 +92,17 @@ namespace Umbraco.Web.Common.Runtime
|
||||
.Add(umbracoApiControllerTypes);
|
||||
|
||||
|
||||
composition.RegisterUnique<InstallAreaRoutes>();
|
||||
composition.Services.AddUnique<InstallAreaRoutes>();
|
||||
|
||||
composition.RegisterUnique<UmbracoRequestLoggingMiddleware>();
|
||||
composition.RegisterUnique<UmbracoRequestMiddleware>();
|
||||
composition.RegisterUnique<BootFailedMiddleware>();
|
||||
composition.Services.AddUnique<UmbracoRequestLoggingMiddleware>();
|
||||
composition.Services.AddUnique<UmbracoRequestMiddleware>();
|
||||
composition.Services.AddUnique<BootFailedMiddleware>();
|
||||
|
||||
composition.RegisterUnique<UmbracoJsonModelBinder>();
|
||||
composition.Services.AddUnique<UmbracoJsonModelBinder>();
|
||||
|
||||
composition.RegisterUnique<ITemplateRenderer, TemplateRenderer>();
|
||||
composition.RegisterUnique<IPublicAccessChecker, PublicAccessChecker>();
|
||||
composition.RegisterUnique(factory => new LegacyPasswordSecurity());
|
||||
composition.Services.AddUnique<ITemplateRenderer, TemplateRenderer>();
|
||||
composition.Services.AddUnique<IPublicAccessChecker, PublicAccessChecker>();
|
||||
composition.Services.AddUnique(factory => new LegacyPasswordSecurity());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user