2011-04-22 06:23:29 +00:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
2011-04-20 01:20:20 +00:00
|
|
|
|
using NLog;
|
2011-04-20 07:44:13 +00:00
|
|
|
|
using NzbDrone.Core.Model.Notification;
|
2011-04-22 06:23:29 +00:00
|
|
|
|
using NzbDrone.Core.Providers.Indexer;
|
2011-04-20 01:20:20 +00:00
|
|
|
|
|
2011-04-20 07:44:13 +00:00
|
|
|
|
namespace NzbDrone.Core.Providers.Jobs
|
2011-04-20 01:20:20 +00:00
|
|
|
|
{
|
2011-04-20 07:44:13 +00:00
|
|
|
|
public class RssSyncJob : IJob
|
2011-04-20 01:20:20 +00:00
|
|
|
|
{
|
2011-05-20 04:21:18 +00:00
|
|
|
|
private readonly IEnumerable<IndexerBase> _indexers;
|
2011-04-22 06:23:29 +00:00
|
|
|
|
|
2011-04-20 01:20:20 +00:00
|
|
|
|
|
|
|
|
|
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
|
|
|
|
|
2011-05-20 04:21:18 +00:00
|
|
|
|
public RssSyncJob(IEnumerable<IndexerBase> indexers)
|
2011-04-20 01:20:20 +00:00
|
|
|
|
{
|
2011-04-22 06:23:29 +00:00
|
|
|
|
_indexers = indexers;
|
2011-04-20 01:20:20 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public string Name
|
|
|
|
|
{
|
|
|
|
|
get { return "RSS Sync"; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public int DefaultInterval
|
|
|
|
|
{
|
|
|
|
|
get { return 15; }
|
|
|
|
|
}
|
|
|
|
|
|
2011-04-20 07:44:13 +00:00
|
|
|
|
public void Start(ProgressNotification notification, int targetId)
|
2011-04-20 01:20:20 +00:00
|
|
|
|
{
|
2011-04-22 17:09:06 +00:00
|
|
|
|
foreach (var indexer in _indexers.Where(i => i.Settings.Enable))
|
2011-04-20 01:20:20 +00:00
|
|
|
|
{
|
2011-04-22 06:23:29 +00:00
|
|
|
|
indexer.Fetch();
|
2011-04-20 01:20:20 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|