public UmbracoRequestMiddleware(
     ILogger <UmbracoRequestMiddleware> logger,
     IUmbracoContextFactory umbracoContextFactory,
     IRequestCache requestCache,
     IEventAggregator eventAggregator,
     IProfiler profiler,
     IHostingEnvironment hostingEnvironment,
     UmbracoRequestPaths umbracoRequestPaths,
     BackOfficeWebAssets backOfficeWebAssets,
     IOptionsMonitor <SmidgeOptions> smidgeOptions,
     IRuntimeState runtimeState,
     IVariationContextAccessor variationContextAccessor,
     IDefaultCultureAccessor defaultCultureAccessor)
     : this(
         logger,
         umbracoContextFactory,
         requestCache,
         eventAggregator,
         profiler,
         hostingEnvironment,
         umbracoRequestPaths,
         backOfficeWebAssets,
         smidgeOptions,
         runtimeState,
         variationContextAccessor,
         defaultCultureAccessor,
         StaticServiceProvider.Instance.GetRequiredService <IOptions <UmbracoRequestOptions> >())
 {
 }
 // used in WebBootManager + tests
 public XmlPublishedSnapshotService(
     ServiceContext serviceContext,
     IPublishedContentTypeFactory publishedContentTypeFactory,
     IScopeProvider scopeProvider,
     IAppCache requestCache,
     IPublishedSnapshotAccessor publishedSnapshotAccessor,
     IVariationContextAccessor variationContextAccessor,
     IUmbracoContextAccessor umbracoContextAccessor,
     IDocumentRepository documentRepository,
     IMediaRepository mediaRepository,
     IMemberRepository memberRepository,
     IDefaultCultureAccessor defaultCultureAccessor,
     ILoggerFactory loggerFactory,
     GlobalSettings globalSettings,
     IHostingEnvironment hostingEnvironment,
     IApplicationShutdownRegistry hostingLifetime,
     IShortStringHelper shortStringHelper,
     IEntityXmlSerializer entitySerializer,
     MainDom mainDom,
     bool testing = false,
     bool enableRepositoryEvents = true)
     : this(serviceContext, publishedContentTypeFactory, scopeProvider, requestCache,
            publishedSnapshotAccessor, variationContextAccessor, umbracoContextAccessor,
            documentRepository, mediaRepository, memberRepository,
            defaultCultureAccessor,
            loggerFactory, globalSettings, hostingEnvironment, hostingLifetime, shortStringHelper, entitySerializer, null, mainDom, testing, enableRepositoryEvents)
 {
     _umbracoContextAccessor = umbracoContextAccessor;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="UmbracoRequestMiddleware"/> class.
        /// </summary>
        public UmbracoRequestMiddleware(
            ILogger <UmbracoRequestMiddleware> logger,
            IUmbracoContextFactory umbracoContextFactory,
            IRequestCache requestCache,
            IEventAggregator eventAggregator,
            IProfiler profiler,
            IHostingEnvironment hostingEnvironment,
            UmbracoRequestPaths umbracoRequestPaths,
            BackOfficeWebAssets backOfficeWebAssets,
            IOptionsMonitor <SmidgeOptions> smidgeOptions,
            IRuntimeState runtimeState,
            IVariationContextAccessor variationContextAccessor,
            IDefaultCultureAccessor defaultCultureAccessor,
            IOptions <UmbracoRequestOptions> umbracoRequestOptions)
        {
            _logger = logger;
            _umbracoContextFactory    = umbracoContextFactory;
            _requestCache             = requestCache;
            _eventAggregator          = eventAggregator;
            _hostingEnvironment       = hostingEnvironment;
            _umbracoRequestPaths      = umbracoRequestPaths;
            _backOfficeWebAssets      = backOfficeWebAssets;
            _runtimeState             = runtimeState;
            _variationContextAccessor = variationContextAccessor;
            _defaultCultureAccessor   = defaultCultureAccessor;
            _umbracoRequestOptions    = umbracoRequestOptions;
            _smidgeOptions            = smidgeOptions.CurrentValue;
            _profiler = profiler as WebProfiler; // Ignore if not a WebProfiler

            smidgeOptions.OnChange(x => _smidgeOptions = x);
        }
        private PublishedSnapshotService(ServiceContext serviceContext,
                                         IPublishedContentTypeFactory publishedContentTypeFactory,
                                         IScopeProvider scopeProvider,
                                         ICacheProvider requestCache,
                                         IEnumerable <IUrlSegmentProvider> segmentProviders,
                                         IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor,
                                         IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository,
                                         IDefaultCultureAccessor defaultCultureAccessor,
                                         ILogger logger,
                                         IGlobalSettings globalSettings,
                                         ISiteDomainHelper siteDomainHelper,
                                         PublishedContentTypeCache contentTypeCache,
                                         MainDom mainDom,
                                         bool testing, bool enableRepositoryEvents)
            : base(publishedSnapshotAccessor, variationContextAccessor)
        {
            _routesCache = new RoutesCache();
            _publishedContentTypeFactory = publishedContentTypeFactory;
            _contentTypeCache            = contentTypeCache
                                           ?? new PublishedContentTypeCache(serviceContext.ContentTypeService, serviceContext.MediaTypeService, serviceContext.MemberTypeService, publishedContentTypeFactory, logger);

            _xmlStore = new XmlStore(serviceContext, scopeProvider, _routesCache,
                                     _contentTypeCache, segmentProviders, publishedSnapshotAccessor, mainDom, testing, enableRepositoryEvents,
                                     documentRepository, mediaRepository, memberRepository, globalSettings);

            _domainService          = serviceContext.DomainService;
            _memberService          = serviceContext.MemberService;
            _mediaService           = serviceContext.MediaService;
            _userService            = serviceContext.UserService;
            _defaultCultureAccessor = defaultCultureAccessor;

            _requestCache     = requestCache;
            _globalSettings   = globalSettings;
            _siteDomainHelper = siteDomainHelper;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="UmbracoContextFactory"/> class.
        /// </summary>
        public UmbracoContextFactory(IUmbracoContextAccessor umbracoContextAccessor, IPublishedSnapshotService publishedSnapshotService, IVariationContextAccessor variationContextAccessor, IDefaultCultureAccessor defaultCultureAccessor, IUmbracoSettingsSection umbracoSettings, IGlobalSettings globalSettings, UrlProviderCollection urlProviders, IUserService userService)
        {
            _umbracoContextAccessor   = umbracoContextAccessor ?? throw new ArgumentNullException(nameof(umbracoContextAccessor));
            _publishedSnapshotService = publishedSnapshotService ?? throw new ArgumentNullException(nameof(publishedSnapshotService));
            _variationContextAccessor = variationContextAccessor ?? throw new ArgumentNullException(nameof(variationContextAccessor));
            _defaultCultureAccessor   = defaultCultureAccessor ?? throw new ArgumentNullException(nameof(defaultCultureAccessor));

            _umbracoSettings = umbracoSettings ?? throw new ArgumentNullException(nameof(umbracoSettings));
            _globalSettings  = globalSettings ?? throw new ArgumentNullException(nameof(globalSettings));
            _urlProviders    = urlProviders ?? throw new ArgumentNullException(nameof(urlProviders));
            _userService     = userService ?? throw new ArgumentNullException(nameof(userService));
        }
        // used in some tests
        internal XmlPublishedSnapshotService(
            ServiceContext serviceContext,
            IPublishedContentTypeFactory publishedContentTypeFactory,
            IScopeProvider scopeProvider,
            IAppCache requestCache,
            IPublishedSnapshotAccessor publishedSnapshotAccessor,
            IVariationContextAccessor variationContextAccessor,
            IUmbracoContextAccessor umbracoContextAccessor,
            IDocumentRepository documentRepository,
            IMediaRepository mediaRepository,
            IMemberRepository memberRepository,
            IDefaultCultureAccessor defaultCultureAccessor,
            ILoggerFactory loggerFactory,
            GlobalSettings globalSettings,
            IHostingEnvironment hostingEnvironment,
            IApplicationShutdownRegistry hostingLifetime,
            IShortStringHelper shortStringHelper,
            IEntityXmlSerializer entitySerializer,
            PublishedContentTypeCache contentTypeCache,
            MainDom mainDom,
            bool testing,
            bool enableRepositoryEvents)
        {
            _routesCache = new RoutesCache();
            _publishedContentTypeFactory = publishedContentTypeFactory;
            _contentTypeCache            = contentTypeCache
                                           ?? new PublishedContentTypeCache(serviceContext.ContentTypeService, serviceContext.MediaTypeService, serviceContext.MemberTypeService, publishedContentTypeFactory, loggerFactory.CreateLogger <PublishedContentTypeCache>());

            _xmlStore = new XmlStore(serviceContext.ContentTypeService, serviceContext.ContentService, scopeProvider, _routesCache,
                                     _contentTypeCache, publishedSnapshotAccessor, mainDom, testing, enableRepositoryEvents,
                                     documentRepository, mediaRepository, memberRepository, entitySerializer, hostingEnvironment, hostingLifetime, shortStringHelper);

            _domainService            = serviceContext.DomainService;
            _mediaService             = serviceContext.MediaService;
            _userService              = serviceContext.UserService;
            _defaultCultureAccessor   = defaultCultureAccessor;
            _variationContextAccessor = variationContextAccessor;
            _requestCache             = requestCache;
            _umbracoContextAccessor   = umbracoContextAccessor;
            _globalSettings           = globalSettings;
            _entitySerializer         = entitySerializer;
        }
 // used in some tests
 internal PublishedSnapshotService(ServiceContext serviceContext,
                                   IPublishedContentTypeFactory publishedContentTypeFactory,
                                   IScopeProvider scopeProvider,
                                   ICacheProvider requestCache,
                                   IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor,
                                   IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository,
                                   IDefaultCultureAccessor defaultCultureAccessor,
                                   ILogger logger,
                                   IGlobalSettings globalSettings,
                                   ISiteDomainHelper siteDomainHelper,
                                   PublishedContentTypeCache contentTypeCache,
                                   MainDom mainDom,
                                   bool testing, bool enableRepositoryEvents)
     : this(serviceContext, publishedContentTypeFactory, scopeProvider, requestCache, Enumerable.Empty <IUrlSegmentProvider>(),
            publishedSnapshotAccessor, variationContextAccessor,
            documentRepository, mediaRepository, memberRepository,
            defaultCultureAccessor,
            logger, globalSettings, siteDomainHelper, contentTypeCache, mainDom, testing, enableRepositoryEvents)
 {
 }
예제 #8
0
 // used in WebBootManager + tests
 public XmlPublishedSnapshotService(ServiceContext serviceContext,
                                    IPublishedContentTypeFactory publishedContentTypeFactory,
                                    IScopeProvider scopeProvider,
                                    IAppCache requestCache,
                                    IPublishedSnapshotAccessor publishedSnapshotAccessor, IVariationContextAccessor variationContextAccessor,
                                    IUmbracoContextAccessor umbracoContextAccessor,
                                    IDocumentRepository documentRepository, IMediaRepository mediaRepository, IMemberRepository memberRepository,
                                    IDefaultCultureAccessor defaultCultureAccessor,
                                    ILogger logger,
                                    IGlobalSettings globalSettings,
                                    ISiteDomainHelper siteDomainHelper,
                                    IEntityXmlSerializer entitySerializer,
                                    MainDom mainDom,
                                    bool testing = false, bool enableRepositoryEvents = true)
     : this(serviceContext, publishedContentTypeFactory, scopeProvider, requestCache,
            publishedSnapshotAccessor, variationContextAccessor, umbracoContextAccessor,
            documentRepository, mediaRepository, memberRepository,
            defaultCultureAccessor,
            logger, globalSettings, siteDomainHelper, entitySerializer, null, mainDom, testing, enableRepositoryEvents)
 {
     _umbracoContextAccessor = umbracoContextAccessor;
 }
예제 #9
0
 public PublishedSnapshotService(
     PublishedSnapshotServiceOptions options,
     ISyncBootStateAccessor syncBootStateAccessor,
     IMainDom mainDom,
     ServiceContext serviceContext,
     IPublishedContentTypeFactory publishedContentTypeFactory,
     IPublishedSnapshotAccessor publishedSnapshotAccessor,
     IVariationContextAccessor variationContextAccessor,
     IProfilingLogger profilingLogger,
     ILoggerFactory loggerFactory,
     IScopeProvider scopeProvider,
     INuCacheContentService publishedContentService,
     IDefaultCultureAccessor defaultCultureAccessor,
     IOptions <GlobalSettings> globalSettings,
     IPublishedModelFactory publishedModelFactory,
     IHostingEnvironment hostingEnvironment,
     IOptions <NuCacheSettings> config,
     ContentDataSerializer contentDataSerializer)
 {
     _options = options;
     _syncBootStateAccessor = syncBootStateAccessor;
     _mainDom        = mainDom;
     _serviceContext = serviceContext;
     _publishedContentTypeFactory = publishedContentTypeFactory;
     _publishedSnapshotAccessor   = publishedSnapshotAccessor;
     _variationContextAccessor    = variationContextAccessor;
     _profilingLogger             = profilingLogger;
     _loggerFactory           = loggerFactory;
     _logger                  = _loggerFactory.CreateLogger <PublishedSnapshotService>();
     _scopeProvider           = scopeProvider;
     _publishedContentService = publishedContentService;
     _defaultCultureAccessor  = defaultCultureAccessor;
     _globalSettings          = globalSettings.Value;
     _hostingEnvironment      = hostingEnvironment;
     _contentDataSerializer   = contentDataSerializer;
     _config                  = config.Value;
     _publishedModelFactory   = publishedModelFactory;
 }
예제 #10
0
 public DomainCache(IDomainService domainService, IDefaultCultureAccessor defaultCultureAccessor)
 {
     _domainService = domainService;
     DefaultCulture = defaultCultureAccessor.DefaultCulture;
 }