2016-10-07 14:34:55 +02:00
|
|
|
|
using Umbraco.Core;
|
2016-08-31 16:48:57 +02:00
|
|
|
|
using Umbraco.Core.Cache;
|
|
|
|
|
|
using Umbraco.Core.Components;
|
|
|
|
|
|
using Umbraco.Core.Persistence.UnitOfWork;
|
|
|
|
|
|
using Umbraco.Core.Services;
|
|
|
|
|
|
using Umbraco.Core.Strings;
|
2016-09-11 19:57:33 +02:00
|
|
|
|
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;
|
2017-10-17 17:43:15 +02:00
|
|
|
|
using Umbraco.Core.Models.PublishedContent;
|
2016-08-31 16:48:57 +02:00
|
|
|
|
|
|
|
|
|
|
namespace Umbraco.Web.PublishedCache.XmlPublishedCache
|
|
|
|
|
|
{
|
|
|
|
|
|
[DisableComponent] // is not enabled by default
|
|
|
|
|
|
public class XmlCacheComponent : UmbracoComponentBase, IUmbracoCoreComponent
|
|
|
|
|
|
{
|
2016-10-07 14:34:55 +02:00
|
|
|
|
public override void Compose(Composition composition)
|
2016-08-31 16:48:57 +02:00
|
|
|
|
{
|
2016-10-07 14:34:55 +02:00
|
|
|
|
base.Compose(composition);
|
2016-08-31 16:48:57 +02:00
|
|
|
|
|
|
|
|
|
|
// register the XML facade service
|
2016-10-07 14:34:55 +02:00
|
|
|
|
composition.SetFacadeService(factory => new FacadeService(
|
2016-08-31 16:48:57 +02:00
|
|
|
|
factory.GetInstance<ServiceContext>(),
|
2017-10-17 17:43:15 +02:00
|
|
|
|
factory.GetInstance<IPublishedContentTypeFactory>(),
|
2017-05-31 10:53:01 +02:00
|
|
|
|
factory.GetInstance<IScopeProvider>(),
|
2017-05-12 14:49:44 +02:00
|
|
|
|
factory.GetInstance<IScopeUnitOfWorkProvider>(),
|
2016-08-31 16:48:57 +02:00
|
|
|
|
factory.GetInstance<CacheHelper>().RequestCache,
|
2016-10-07 14:34:55 +02:00
|
|
|
|
factory.GetInstance<UrlSegmentProviderCollection>(),
|
2016-09-01 19:06:08 +02:00
|
|
|
|
factory.GetInstance<IFacadeAccessor>(),
|
2016-09-11 19:57:33 +02:00
|
|
|
|
factory.GetInstance<ILogger>(),
|
2016-09-01 19:06:08 +02:00
|
|
|
|
factory.GetInstance<MainDom>()));
|
2016-09-08 18:43:58 +02:00
|
|
|
|
|
|
|
|
|
|
// add the Xml cache health check (hidden from type finder)
|
2016-10-07 14:34:55 +02:00
|
|
|
|
composition.HealthChecks().Add<XmlDataIntegrityHealthCheck>();
|
2016-08-31 16:48:57 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void Initialize(IFacadeService service)
|
|
|
|
|
|
{
|
|
|
|
|
|
// nothing - this just ensures that the service is created at boot time
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|