1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2024-12-16 11:37:58 +02:00
Sonarr/NzbDrone.Core/Indexers/IndexerWithSetting.cs

30 lines
847 B
C#
Raw Normal View History

2013-04-11 02:44:48 +03:00
using System;
using NzbDrone.Common.Messaging;
2013-04-11 02:44:48 +03:00
namespace NzbDrone.Core.Indexers
{
public abstract class IndexerWithSetting<TSetting> :
Indexer,
IHandle<IndexerSettingUpdatedEvent> where TSetting : IIndexerSetting, new()
{
protected IndexerWithSetting(IProviderIndexerSetting settingProvider)
{
Settings = settingProvider.Get<TSetting>(this);
}
public override bool IsConfigured
{
get { return Settings.IsValid; }
}
protected TSetting Settings { get; private set; }
public void Handle(IndexerSettingUpdatedEvent message)
{
if (message.IndexerName.Equals(Name, StringComparison.InvariantCultureIgnoreCase))
{
Settings = (TSetting)message.IndexerSetting;
}
}
}
}