Newzbin override for getting proper and quality.

pull/4/head
Mark McDowall 14 years ago
parent 9028e498ca
commit 64bbf8a9b5

@ -206,7 +206,7 @@ namespace NzbDrone.Core
return title.ToLower().Contains("proper"); return title.ToLower().Contains("proper");
} }
private static QualityTypes ParseQuality(string name) internal static QualityTypes ParseQuality(string name)
{ {
Logger.Trace("Trying to parse quality for {0}", name); Logger.Trace("Trying to parse quality for {0}", name);

@ -42,7 +42,6 @@ namespace NzbDrone.Core.Providers.Indexer
/// </summary> /// </summary>
public abstract string Name { get; } public abstract string Name { get; }
/// <summary> /// <summary>
/// Generates direct link to download an NZB /// Generates direct link to download an NZB
/// </summary> /// </summary>
@ -50,7 +49,6 @@ namespace NzbDrone.Core.Providers.Indexer
/// <returns>Download link URL</returns> /// <returns>Download link URL</returns>
protected abstract string NzbDownloadUrl(SyndicationItem item); protected abstract string NzbDownloadUrl(SyndicationItem item);
/// <summary> /// <summary>
/// Parses the RSS feed item and. /// Parses the RSS feed item and.
/// </summary> /// </summary>
@ -74,6 +72,16 @@ namespace NzbDrone.Core.Providers.Indexer
return null; return null;
} }
/// <summary>
/// This method can be overwritten to provide indexer specific info parsing
/// </summary>
/// <param name="item">RSS item that needs to be parsed</param>
/// <param name="currentResult">Result of the built in parse function.</param>
/// <returns></returns>
protected virtual EpisodeParseResult CustomParser(SyndicationItem item, EpisodeParseResult currentResult)
{
return currentResult;
}
/// <summary> /// <summary>
/// Fetches RSS feed and process each news item. /// Fetches RSS feed and process each news item.

@ -1,4 +1,5 @@
using System.ServiceModel.Syndication; using System.ServiceModel.Syndication;
using NzbDrone.Core.Model;
using NzbDrone.Core.Providers.Core; using NzbDrone.Core.Providers.Core;
using SubSonic.Repository; using SubSonic.Repository;
@ -32,5 +33,16 @@ namespace NzbDrone.Core.Providers.Indexer
{ {
return item.Id; return item.Id;
} }
protected override EpisodeParseResult CustomParser(SyndicationItem item, EpisodeParseResult currentResult)
{
var quality = Parser.ParseQuality(item.Summary.Text);
var proper = Parser.ParseProper(item.Summary.Text);
currentResult.Quality = quality;
currentResult.Proper = proper;
return currentResult;
}
} }
} }
Loading…
Cancel
Save