public LiquidViewsFeatureProvider( ILiquidViewFileProviderAccessor fileProviderAccessor, IOptions <ExtensionExpanderOptions> expanderOptionsAccessor) { if (_sharedPaths != null) { return; } lock (_synLock) { if (_sharedPaths == null) { _sharedPaths = new List <string>(); foreach (var option in expanderOptionsAccessor.Value.Options) { var filePaths = fileProviderAccessor.FileProvider.GetViewFilePaths( option.SearchPath, new[] { LiquidViewTemplate.ViewExtension }, LiquidViewTemplate.ViewsFolder); _sharedPaths.AddRange(filePaths.Select(p => '/' + p)); } } } }
public LiquidViewsFeatureProvider( IHostingEnvironment hostingEnvironment, ILiquidViewFileProviderAccessor fileProviderAccessor) { _hostingEnvironment = hostingEnvironment; if (_sharedPaths != null) { return; } lock (_synLock) { if (_sharedPaths == null) { _sharedPaths = new List <string>(); var filePaths = fileProviderAccessor.FileProvider.GetViewFilePaths( Application.ModulesPath, new[] { LiquidViewTemplate.ViewExtension }, LiquidViewTemplate.ViewsFolder); _sharedPaths.AddRange(filePaths.Select(p => '/' + p)); } } }
public LiquidShapeTemplateOptionsSetup(ILiquidViewFileProviderAccessor fileProviderAccessor) { _fileProviderAccessor = fileProviderAccessor ?? throw new ArgumentNullException(nameof(fileProviderAccessor)); }