2016-12-23 21:45:24 +00:00
|
|
|
|
using System.IO;
|
2015-07-07 20:13:01 +00:00
|
|
|
|
using NLog;
|
|
|
|
|
using NzbDrone.Common.Disk;
|
|
|
|
|
using NzbDrone.Common.EnvironmentInfo;
|
2015-07-22 02:42:38 +00:00
|
|
|
|
using NzbDrone.Core.Configuration;
|
2015-07-07 20:13:01 +00:00
|
|
|
|
|
2018-11-23 07:03:32 +00:00
|
|
|
|
namespace Radarr.Http.Frontend.Mappers
|
2015-07-07 20:13:01 +00:00
|
|
|
|
{
|
2018-11-23 07:03:32 +00:00
|
|
|
|
public class ManifestMapper : StaticResourceMapperBase
|
2015-07-07 20:13:01 +00:00
|
|
|
|
{
|
|
|
|
|
private readonly IAppFolderInfo _appFolderInfo;
|
2015-07-22 02:42:38 +00:00
|
|
|
|
private readonly IConfigFileProvider _configFileProvider;
|
2015-07-07 20:13:01 +00:00
|
|
|
|
|
2018-11-23 07:03:32 +00:00
|
|
|
|
public ManifestMapper(IAppFolderInfo appFolderInfo, IDiskProvider diskProvider, IConfigFileProvider configFileProvider, Logger logger)
|
2015-07-07 20:13:01 +00:00
|
|
|
|
: base(diskProvider, logger)
|
|
|
|
|
{
|
|
|
|
|
_appFolderInfo = appFolderInfo;
|
2015-07-22 02:42:38 +00:00
|
|
|
|
_configFileProvider = configFileProvider;
|
2015-07-07 20:13:01 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override string Map(string resourceUrl)
|
|
|
|
|
{
|
2018-11-23 07:03:32 +00:00
|
|
|
|
var path = resourceUrl.Replace('/', Path.DirectorySeparatorChar);
|
|
|
|
|
path = path.Trim(Path.DirectorySeparatorChar);
|
2015-07-07 20:13:01 +00:00
|
|
|
|
|
2018-11-23 07:03:32 +00:00
|
|
|
|
return Path.ChangeExtension(Path.Combine(_appFolderInfo.StartUpFolder, _configFileProvider.UiFolder, path), "json");
|
2015-07-07 20:13:01 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override bool CanHandle(string resourceUrl)
|
|
|
|
|
{
|
2018-11-23 07:03:32 +00:00
|
|
|
|
return resourceUrl.StartsWith("/Content/Images/Icons/manifest");
|
2015-07-07 20:13:01 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2018-11-23 07:03:32 +00:00
|
|
|
|
}
|