1
0
Fork 0
mirror of https://github.com/lidarr/Lidarr synced 2024-12-30 19:45:57 +00:00
Lidarr/NzbDrone.Core/Indexers/Newznab/NewznabParser.cs

43 lines
1.1 KiB
C#
Raw Normal View History

2013-04-07 07:30:37 +00:00
using System;
using System.ServiceModel.Syndication;
using NzbDrone.Core.Parser.Model;
2013-04-07 07:30:37 +00:00
namespace NzbDrone.Core.Indexers.Newznab
{
public class NewznabParser : BasicRssParser
{
private readonly Newznab _newznabIndexer;
public NewznabParser(Newznab newznabIndexer)
{
_newznabIndexer = newznabIndexer;
}
protected override string GetNzbInfoUrl(SyndicationItem item)
{
return item.Id;
}
protected override ReportInfo PostProcessor(SyndicationItem item, ReportInfo currentResult)
2013-04-07 07:30:37 +00:00
{
if (currentResult != null)
{
if (item.Links.Count > 1)
{
2013-04-07 07:30:37 +00:00
currentResult.Size = item.Links[1].Length;
}
2013-04-07 07:30:37 +00:00
currentResult.Indexer = GetName(item);
}
return currentResult;
}
private string GetName(SyndicationItem item)
{
var hostname = item.Links[0].Uri.DnsSafeHost.ToLower();
return String.Format("{0}_{1}", _newznabIndexer.Name, hostname);
}
}
}