diff --git a/src/Umbraco.Core/CoreRuntime.cs b/src/Umbraco.Core/CoreRuntime.cs index e6394b219a..c9beb18f02 100644 --- a/src/Umbraco.Core/CoreRuntime.cs +++ b/src/Umbraco.Core/CoreRuntime.cs @@ -228,8 +228,7 @@ namespace Umbraco.Core container.RegisterSingleton(f => f.GetInstance()); // register the scope provider - container.RegisterSingleton(); - container.RegisterSingleton(f => f.GetInstance()); + container.RegisterSingleton(); // register MainDom container.RegisterSingleton(); diff --git a/src/Umbraco.Core/Scoping/IScopeProvider.cs b/src/Umbraco.Core/Scoping/IScopeProvider.cs index 6cdb7ec41a..3be0f73a98 100644 --- a/src/Umbraco.Core/Scoping/IScopeProvider.cs +++ b/src/Umbraco.Core/Scoping/IScopeProvider.cs @@ -19,7 +19,7 @@ namespace Umbraco.Core.Scoping /// The repositories cache mode. /// An optional events dispatcher. /// A value indicating whether to scope the filesystems. - /// fixme what is this + /// A value indicating whether this scope should always be registered in the call context. /// The created ambient scope. /// /// The created scope becomes the ambient scope. @@ -38,7 +38,10 @@ namespace Umbraco.Core.Scoping /// Creates a detached scope. /// /// A detached scope. - /// fixme - params! + /// The transaction isolation level. + /// The repositories cache mode. + /// An optional events dispatcher. + /// A value indicating whether to scope the filesystems. /// /// A detached scope is not ambient and has no parent. /// It is meant to be attached by . diff --git a/src/Umbraco.Core/Scoping/IScopeProviderInternal.cs b/src/Umbraco.Core/Scoping/IScopeProviderInternal.cs deleted file mode 100644 index 6fc6776838..0000000000 --- a/src/Umbraco.Core/Scoping/IScopeProviderInternal.cs +++ /dev/null @@ -1,28 +0,0 @@ -namespace Umbraco.Core.Scoping -{ - /// - /// Provides additional, internal scope provider functionnalities. - /// - /// Extends with internal features. - internal interface IScopeProviderInternal : IScopeProvider // fixme - define what's internal and why - { - /// - /// Gets the ambient context. - /// - /// May be null. - ScopeContext AmbientContext { get; } - - /// - /// Gets the ambient scope. - /// - /// May be null. - IScopeInternal AmbientScope { get; } - - /// - /// Resets the ambient scope. - /// - /// Resets the ambient scope (not completed anymore) and disposes the - /// entire scopes chain until there is no more scopes. - void Reset(); - } -} diff --git a/src/Umbraco.Core/Scoping/ScopeProvider.cs b/src/Umbraco.Core/Scoping/ScopeProvider.cs index 38fe772d33..b23c162bd4 100644 --- a/src/Umbraco.Core/Scoping/ScopeProvider.cs +++ b/src/Umbraco.Core/Scoping/ScopeProvider.cs @@ -19,7 +19,7 @@ namespace Umbraco.Core.Scoping /// /// Implements . /// - internal class ScopeProvider : IScopeProviderInternal + internal class ScopeProvider : IScopeProvider { private readonly ILogger _logger; private readonly FileSystems _fileSystems; diff --git a/src/Umbraco.Core/Scoping/ScopeReference.cs b/src/Umbraco.Core/Scoping/ScopeReference.cs index 998f21c587..6f378e2abb 100644 --- a/src/Umbraco.Core/Scoping/ScopeReference.cs +++ b/src/Umbraco.Core/Scoping/ScopeReference.cs @@ -8,9 +8,9 @@ /// chain). internal class ScopeReference : IDisposeOnRequestEnd // implies IDisposable { - private readonly IScopeProviderInternal _scopeProvider; + private readonly ScopeProvider _scopeProvider; - public ScopeReference(IScopeProviderInternal scopeProvider) + public ScopeReference(ScopeProvider scopeProvider) { _scopeProvider = scopeProvider; } diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index f50339658f..eb1b7b0b15 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -54,7 +54,8 @@ - + + @@ -83,7 +84,1389 @@ Constants.cs --> - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Component diff --git a/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs b/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs index 353a73c54c..90fdf3810d 100644 --- a/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs +++ b/src/Umbraco.Tests/IO/ShadowFileSystemTests.cs @@ -611,26 +611,6 @@ namespace Umbraco.Tests.IO TestHelper.TryAssert(() => Assert.IsFalse(File.Exists(path + "/test/inner/f3.txt"))); } - [Test] - public void MockTest() - { - var scoped = false; - var provider = MockScopeProvider(() => scoped); - - Assert.IsFalse(provider.AmbientScope.ScopedFileSystems); - scoped = true; - Assert.IsTrue(provider.AmbientScope.ScopedFileSystems); - } - - private static IScopeProviderInternal MockScopeProvider(Func f) - { - var scopeMock = new Mock(); - scopeMock.Setup(x => x.ScopedFileSystems).Returns(f); - var providerMock = new Mock(); - providerMock.Setup(x => x.AmbientScope).Returns(scopeMock.Object); - return providerMock.Object; - } - /// /// Check that GetFiles will return all files on the shadow, while returning /// just one on each of the filesystems used by the shadow. diff --git a/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs b/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs index 7b19d639d0..aa3bd3dd05 100644 --- a/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeFileSystemsTests.cs @@ -127,7 +127,7 @@ namespace Umbraco.Tests.Scoping [Test] public void SingleShadowEvenDetached() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope(scopeFileSystems: true)) { using (new SafeCallContext()) // not nesting! diff --git a/src/Umbraco.Tests/Scoping/ScopeTests.cs b/src/Umbraco.Tests/Scoping/ScopeTests.cs index fdb8927932..a4e13cc6f7 100644 --- a/src/Umbraco.Tests/Scoping/ScopeTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopeTests.cs @@ -21,13 +21,13 @@ namespace Umbraco.Tests.Scoping { base.SetUp(); - Assert.IsNull((ScopeProvider as IScopeProviderInternal).AmbientScope); // gone + Assert.IsNull(ScopeProvider.AmbientScope); // gone } [Test] public void SimpleCreateScope() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); using (var scope = scopeProvider.CreateScope()) @@ -42,7 +42,7 @@ namespace Umbraco.Tests.Scoping [Test] public void SimpleCreateScopeContext() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); using (var scope = scopeProvider.CreateScope()) @@ -61,7 +61,7 @@ namespace Umbraco.Tests.Scoping [Test] public void SimpleCreateScopeDatabase() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; IUmbracoDatabase database; @@ -82,7 +82,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedCreateScope() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); using (var scope = scopeProvider.CreateScope()) @@ -152,7 +152,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedCreateScopeContext() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); using (var scope = scopeProvider.CreateScope()) @@ -185,7 +185,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedCreateScopeInnerException() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; bool? scopeCompleted = null; Assert.IsNull(scopeProvider.AmbientScope); @@ -224,7 +224,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedCreateScopeDatabase() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; IUmbracoDatabase database; @@ -254,7 +254,7 @@ namespace Umbraco.Tests.Scoping [Test] public void Transaction() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope()) { @@ -291,7 +291,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedTransactionInnerFail() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope()) { @@ -330,7 +330,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedTransactionOuterFail() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope()) { @@ -368,7 +368,7 @@ namespace Umbraco.Tests.Scoping [Test] public void NestedTransactionComplete() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope()) { @@ -407,7 +407,7 @@ namespace Umbraco.Tests.Scoping [Test] public void CallContextScope1() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; using (var scope = scopeProvider.CreateScope()) { Assert.IsNotNull(scopeProvider.AmbientScope); @@ -438,7 +438,7 @@ namespace Umbraco.Tests.Scoping [Test] public void CallContextScope2() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); var httpContextItems = new Hashtable(); @@ -486,7 +486,7 @@ namespace Umbraco.Tests.Scoping [Test] public void ScopeReference() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; var scope = scopeProvider.CreateScope(); var nested = scopeProvider.CreateScope(); Assert.IsNotNull(scopeProvider.AmbientScope); @@ -507,7 +507,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void ScopeContextEnlist(bool complete) { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; bool? completed = null; IScope ambientScope = null; @@ -537,7 +537,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void ScopeContextEnlistAgain(bool complete) { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; bool? completed = null; Exception exception = null; @@ -574,7 +574,7 @@ namespace Umbraco.Tests.Scoping [Test] public void ScopeContextException() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; bool? completed = null; @@ -615,7 +615,7 @@ namespace Umbraco.Tests.Scoping [Test] public void DetachableScope() { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; Assert.IsNull(scopeProvider.AmbientScope); using (var scope = scopeProvider.CreateScope()) diff --git a/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs b/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs index 9884fc11c6..f3efe56a2c 100644 --- a/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedRepositoryTests.cs @@ -28,7 +28,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void DefaultRepositoryCachePolicy(bool complete) { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; var service = Current.Services.UserService; var globalCache = Current.ApplicationCache.IsolatedRuntimeCache.GetOrCreateCache(typeof(IUser)); @@ -103,7 +103,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void FullDataSetRepositoryCachePolicy(bool complete) { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; var service = Current.Services.LocalizationService; var globalCache = Current.ApplicationCache.IsolatedRuntimeCache.GetOrCreateCache(typeof (ILanguage)); @@ -195,7 +195,7 @@ namespace Umbraco.Tests.Scoping [TestCase(false)] public void SingleItemsOnlyRepositoryCachePolicy(bool complete) { - var scopeProvider = ScopeProvider as IScopeProviderInternal; + var scopeProvider = ScopeProvider; var service = Current.Services.LocalizationService; var globalCache = Current.ApplicationCache.IsolatedRuntimeCache.GetOrCreateCache(typeof (IDictionaryItem)); diff --git a/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs b/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs index d2fb6d3068..fc43b508c4 100644 --- a/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs +++ b/src/Umbraco.Tests/Scoping/ScopedXmlTests.cs @@ -238,7 +238,7 @@ namespace Umbraco.Tests.Scoping // Assert.AreEqual(beforeOuterXml, xml.OuterXml); // } - // var scopeProvider = ScopeProvider as IScopeProviderInternal; + // var scopeProvider = ScopeProvider; // Assert.IsNotNull(scopeProvider); // // ambient scope may be null, or maybe not, depending on whether the code that // // was called did proper scoped work, or some direct (NoScope) use of the database diff --git a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs index e2462ad8b4..d6c4666441 100644 --- a/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs +++ b/src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs @@ -54,15 +54,15 @@ namespace Umbraco.Tests.TestHelpers protected CacheHelper DisabledCache => _disabledCacheHelper ?? (_disabledCacheHelper = CacheHelper.CreateDisabledCacheHelper()); - protected IScopeUnitOfWorkProvider UowProvider => Core.Composing.Current.Container.GetInstance(); + protected IScopeUnitOfWorkProvider UowProvider => Current.Container.GetInstance(); protected PublishedContentTypeCache ContentTypesCache { get; private set; } protected override ISqlSyntaxProvider SqlSyntax => GetSyntaxProvider(); - protected ServiceContext ServiceContext => Core.Composing.Current.Services; + protected ServiceContext ServiceContext => Current.Services; - protected IScopeProvider ScopeProvider => Core.Composing.Current.ScopeProvider; + internal ScopeProvider ScopeProvider => Current.ScopeProvider as ScopeProvider; public override void SetUp() { @@ -239,18 +239,18 @@ namespace Umbraco.Tests.TestHelpers var cache = new NullCacheProvider(); ContentTypesCache = new PublishedContentTypeCache( - Core.Composing.Current.Services.ContentTypeService, - Core.Composing.Current.Services.MediaTypeService, - Core.Composing.Current.Services.MemberTypeService, - Core.Composing.Current.Logger); + Current.Services.ContentTypeService, + Current.Services.MediaTypeService, + Current.Services.MemberTypeService, + Current.Logger); // testing=true so XmlStore will not use the file nor the database var facadeAccessor = new TestFacadeAccessor(); var service = new FacadeService( - Core.Composing.Current.Services, - (IScopeProviderInternal) Core.Composing.Current.ScopeProvider, + Current.Services, + (ScopeProvider) Current.ScopeProvider, UowProvider, - cache, facadeAccessor, Core.Composing.Current.Logger, ContentTypesCache, null, true, Options.FacadeServiceRepositoryEvents); + cache, facadeAccessor, Current.Logger, ContentTypesCache, null, true, Options.FacadeServiceRepositoryEvents); // initialize PublishedCacheService content with an Xml source service.XmlStore.GetXmlDocument = () => diff --git a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs index 358c60ba10..f1400c38b9 100644 --- a/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs +++ b/src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs @@ -421,7 +421,7 @@ namespace Umbraco.Tests.Web.Mvc var cache = new NullCacheProvider(); //var provider = new ScopeUnitOfWorkProvider(databaseFactory, new RepositoryFactory(Mock.Of())); - var scopeProvider = TestObjects.GetScopeProvider(Mock.Of()) as IScopeProviderInternal; + var scopeProvider = TestObjects.GetScopeProvider(Mock.Of()); var uowProvider = TestObjects.GetScopeUnitOfWorkProvider(Mock.Of(), scopeProvider: scopeProvider); _service = new FacadeService(svcCtx, scopeProvider, uowProvider, cache, Enumerable.Empty(), null, Current.Logger, null, true, false); // no events diff --git a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/FacadeService.cs b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/FacadeService.cs index 8f607c146e..dacc5e8783 100644 --- a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/FacadeService.cs +++ b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/FacadeService.cs @@ -35,7 +35,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache // used in WebBootManager + tests public FacadeService(ServiceContext serviceContext, - IScopeProviderInternal scopeProvider, + IScopeProvider scopeProvider, IScopeUnitOfWorkProvider uowProvider, ICacheProvider requestCache, IEnumerable segmentProviders, @@ -48,7 +48,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache // used in some tests internal FacadeService(ServiceContext serviceContext, - IScopeProviderInternal scopeProvider, + IScopeProvider scopeProvider, IScopeUnitOfWorkProvider uowProvider, ICacheProvider requestCache, IFacadeAccessor facadeAccessor, @@ -59,8 +59,8 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache : this(serviceContext, scopeProvider, uowProvider, requestCache, Enumerable.Empty(), facadeAccessor, logger, contentTypeCache, mainDom, testing, enableRepositoryEvents) { } - private FacadeService(ServiceContext serviceContext, - IScopeProviderInternal scopeProvider, + private FacadeService(ServiceContext serviceContext, + IScopeProvider scopeProvider, IScopeUnitOfWorkProvider uowProvider, ICacheProvider requestCache, IEnumerable segmentProviders, diff --git a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/SafeXmlReaderWriter.cs b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/SafeXmlReaderWriter.cs index 314d1724a9..bf31691cca 100644 --- a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/SafeXmlReaderWriter.cs +++ b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/SafeXmlReaderWriter.cs @@ -28,7 +28,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache _xml = IsWriter ? Clone(xml) : xml; } - public static SafeXmlReaderWriter Get(IScopeProviderInternal scopeProvider, AsyncLock xmlLock, XmlDocument xml, Action refresh, Action apply, bool writer) + public static SafeXmlReaderWriter Get(IScopeProvider scopeProvider, AsyncLock xmlLock, XmlDocument xml, Action refresh, Action apply, bool writer) { var scopeContext = scopeProvider.Context; diff --git a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlCacheComponent.cs b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlCacheComponent.cs index 6986a7a945..1500e8a79d 100644 --- a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlCacheComponent.cs +++ b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlCacheComponent.cs @@ -21,7 +21,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache // register the XML facade service composition.SetFacadeService(factory => new FacadeService( factory.GetInstance(), - factory.GetInstance(), + (ScopeProvider) factory.GetInstance(), factory.GetInstance(), factory.GetInstance().RequestCache, factory.GetInstance(), diff --git a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlStore.cs b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlStore.cs index ba87e92060..d6875b5a1e 100644 --- a/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlStore.cs +++ b/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlStore.cs @@ -54,7 +54,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache private readonly RoutesCache _routesCache; private readonly ServiceContext _serviceContext; // fixme WHY private readonly IScopeUnitOfWorkProvider _uowProvider; - private readonly IScopeProviderInternal _scopeProvider; + private readonly IScopeProvider _scopeProvider; #region Constructors @@ -62,7 +62,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache /// Initializes a new instance of the class. /// /// The default constructor will boot the cache, load data from file or database, /// wire events in order to manage changes, etc. - public XmlStore(ServiceContext serviceContext, IScopeProviderInternal scopeProvider, IScopeUnitOfWorkProvider uowProvider, RoutesCache routesCache, PublishedContentTypeCache contentTypeCache, + public XmlStore(ServiceContext serviceContext, IScopeProvider scopeProvider, IScopeUnitOfWorkProvider uowProvider, RoutesCache routesCache, PublishedContentTypeCache contentTypeCache, IEnumerable segmentProviders, IFacadeAccessor facadeAccessor, MainDom mainDom) : this(serviceContext, scopeProvider, uowProvider, routesCache, contentTypeCache, segmentProviders, facadeAccessor, mainDom, false, false) { } @@ -70,7 +70,7 @@ namespace Umbraco.Web.PublishedCache.XmlPublishedCache // internal for unit tests // no file nor db, no config check // fixme - er, we DO have a DB? - internal XmlStore(ServiceContext serviceContext, IScopeProviderInternal scopeProvider, IScopeUnitOfWorkProvider uowProvider, RoutesCache routesCache, PublishedContentTypeCache contentTypeCache, + internal XmlStore(ServiceContext serviceContext, IScopeProvider scopeProvider, IScopeUnitOfWorkProvider uowProvider, RoutesCache routesCache, PublishedContentTypeCache contentTypeCache, IEnumerable segmentProviders, IFacadeAccessor facadeAccessor, MainDom mainDom, bool testing, bool enableRepositoryEvents) {