2016-08-31 16:48:57 +02:00
|
|
|
|
using LightInject;
|
|
|
|
|
|
using Umbraco.Core;
|
|
|
|
|
|
using Umbraco.Core.Components;
|
|
|
|
|
|
using Umbraco.Core.DependencyInjection;
|
|
|
|
|
|
using Umbraco.Core.Logging;
|
|
|
|
|
|
using Umbraco.Core.Persistence.UnitOfWork;
|
|
|
|
|
|
using Umbraco.Core.Services;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Umbraco.Web.PublishedCache.NuCache
|
|
|
|
|
|
{
|
|
|
|
|
|
public class NuCacheComponent : UmbracoComponentBase, IUmbracoCoreComponent
|
|
|
|
|
|
{
|
|
|
|
|
|
public override void Compose(ServiceContainer container)
|
|
|
|
|
|
{
|
|
|
|
|
|
base.Compose(container);
|
|
|
|
|
|
|
|
|
|
|
|
// register the NuCache facade service
|
|
|
|
|
|
container.RegisterSingleton<IFacadeService>(factory => new FacadeService(
|
|
|
|
|
|
new FacadeService.Options { FacadeCacheIsApplicationRequestCache = true },
|
2016-09-01 19:06:08 +02:00
|
|
|
|
factory.GetInstance<MainDom>(),
|
|
|
|
|
|
factory.GetInstance<IRuntimeState>(),
|
2016-08-31 16:48:57 +02:00
|
|
|
|
factory.GetInstance<ServiceContext>(),
|
|
|
|
|
|
factory.GetInstance<IDatabaseUnitOfWorkProvider>(),
|
|
|
|
|
|
factory.GetInstance<IFacadeAccessor>(),
|
|
|
|
|
|
factory.GetInstance<ILogger>()));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void Initialize(IFacadeService service)
|
|
|
|
|
|
{
|
|
|
|
|
|
// nothing - this just ensures that the service is created at boot time
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|