Updates content-type to "application/xml"
removes sitemap cache from previous commits.
This commit is contained in:
@ -25,28 +25,23 @@ namespace Oqtane.Pages
|
||||
private readonly IPageRepository _pages;
|
||||
private readonly IPageModuleRepository _pageModules;
|
||||
private readonly IModuleDefinitionRepository _moduleDefinitions;
|
||||
private readonly ISettingRepository _settings;
|
||||
private readonly IUserPermissions _userPermissions;
|
||||
private readonly ILogManager _logger;
|
||||
private readonly Alias _alias;
|
||||
private readonly IMemoryCache _memoryCache;
|
||||
private string sitemapXml;
|
||||
|
||||
public SitemapModel(IServiceProvider serviceProvider, IPageRepository pages, IPageModuleRepository pageModules, IModuleDefinitionRepository moduleDefinitions, ISettingRepository settings, IUserPermissions userPermissions, IUrlMappingRepository urlMappings, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager, IMemoryCache memoryCache)
|
||||
public SitemapModel(IServiceProvider serviceProvider, IPageRepository pages, IPageModuleRepository pageModules, IModuleDefinitionRepository moduleDefinitions, IUserPermissions userPermissions, IUrlMappingRepository urlMappings, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager)
|
||||
{
|
||||
_serviceProvider = serviceProvider;
|
||||
_pages = pages;
|
||||
_pageModules = pageModules;
|
||||
_moduleDefinitions = moduleDefinitions;
|
||||
_settings = settings;
|
||||
_userPermissions = userPermissions;
|
||||
_logger = logger;
|
||||
_alias = tenantManager.GetAlias();
|
||||
_memoryCache = memoryCache;
|
||||
}
|
||||
|
||||
public IActionResult OnGet()
|
||||
{
|
||||
if (!_memoryCache.TryGetValue("Sitemap", out string sitemapXml))
|
||||
public IActionResult OnGetAsync()
|
||||
{
|
||||
var sitemap = new List<Sitemap>();
|
||||
|
||||
@ -71,7 +66,6 @@ namespace Oqtane.Pages
|
||||
{
|
||||
try
|
||||
{
|
||||
pageModule.Module.Settings = _settings.GetSettings(EntityNames.Module, pageModule.ModuleId).ToDictionary(x => x.SettingName, x => x.SettingValue);
|
||||
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
|
||||
var urls = ((ISitemap)moduleobject).GetUrls(_alias.Path, page.Path, pageModule.Module);
|
||||
foreach (var url in urls)
|
||||
@ -115,8 +109,7 @@ namespace Oqtane.Pages
|
||||
}
|
||||
// Cache the sitemap XML
|
||||
sitemapXml = builder.ToString();
|
||||
_memoryCache.Set("Sitemap", sitemapXml, TimeSpan.FromHours(1));
|
||||
}
|
||||
|
||||
return Content(sitemapXml, "application/xml");
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user