Files
Umbraco-CMS/src/Umbraco.Web/PublishedCache/XmlPublishedCache/XmlCacheComponent.cs

52 lines
2.0 KiB
C#
Raw Normal View History

using Umbraco.Core;
using Umbraco.Core.Cache;
using Umbraco.Core.Components;
using Umbraco.Core.Services;
using Umbraco.Core.Strings;
using Umbraco.Core.Logging;
2017-05-12 14:49:44 +02:00
using Umbraco.Core.Scoping;
2016-09-08 18:43:58 +02:00
using Umbraco.Web.HealthCheck.Checks.DataIntegrity;
2017-05-22 17:22:10 +02:00
using LightInject;
using Umbraco.Core.Configuration;
2017-10-17 17:43:15 +02:00
using Umbraco.Core.Models.PublishedContent;
2017-12-14 17:04:44 +01:00
using Umbraco.Core.Persistence.Repositories;
using Umbraco.Web.Routing;
namespace Umbraco.Web.PublishedCache.XmlPublishedCache
{
[DisableComponent] // is not enabled by default
public class XmlCacheComponent : UmbracoComponentBase, IUmbracoCoreComponent
{
public override void Compose(Composition composition)
{
base.Compose(composition);
// register the XML facade service
2017-10-31 12:48:24 +01:00
composition.SetPublishedSnapshotService(factory => new PublishedSnapshotService(
factory.GetInstance<ServiceContext>(),
2017-10-17 17:43:15 +02:00
factory.GetInstance<IPublishedContentTypeFactory>(),
factory.GetInstance<IScopeProvider>(),
factory.GetInstance<CacheHelper>().RequestCache,
factory.GetInstance<UrlSegmentProviderCollection>(),
2017-10-31 12:48:24 +01:00
factory.GetInstance<IPublishedSnapshotAccessor>(),
2018-04-30 21:29:49 +02:00
factory.GetInstance<IVariationContextAccessor>(),
factory.GetInstance<IDocumentRepository>(),
factory.GetInstance<IMediaRepository>(),
factory.GetInstance<IMemberRepository>(),
2018-04-30 21:29:49 +02:00
factory.GetInstance<IDefaultCultureAccessor>(),
factory.GetInstance<ILogger>(),
factory.GetInstance<IGlobalSettings>(),
factory.GetInstance<ISiteDomainHelper>(),
factory.GetInstance<MainDom>()));
2016-09-08 18:43:58 +02:00
// add the Xml cache health check (hidden from type finder)
composition.HealthChecks().Add<XmlDataIntegrityHealthCheck>();
}
2017-10-31 12:48:24 +01:00
public void Initialize(IPublishedSnapshotService service)
{
// nothing - this just ensures that the service is created at boot time
}
}
}