jellyfin/MediaBrowser.Providers/Plugins/MusicBrainz/Configuration/PluginConfiguration.cs
2023-02-20 08:04:30 -07:00

58 lines
1.3 KiB
C#

using MediaBrowser.Model.Plugins;
namespace MediaBrowser.Providers.Plugins.MusicBrainz.Configuration;
/// <summary>
/// MusicBrainz plugin configuration.
/// </summary>
public class PluginConfiguration : BasePluginConfiguration
{
/// <summary>
/// The default server URL.
/// </summary>
public const string DefaultServer = "https://musicbrainz.org";
/// <summary>
/// The default rate limit.
/// </summary>
public const double DefaultRateLimit = 1.0;
private string _server = DefaultServer;
private double _rateLimit = DefaultRateLimit;
/// <summary>
/// Gets or sets the server URL.
/// </summary>
public string Server
{
get => _server;
set => _server = value.TrimEnd('/');
}
/// <summary>
/// Gets or sets the rate limit.
/// </summary>
public double RateLimit
{
get => _rateLimit;
set
{
if (value < DefaultRateLimit && _server == DefaultServer)
{
_rateLimit = DefaultRateLimit;
}
else
{
_rateLimit = value;
}
}
}
/// <summary>
/// Gets or sets a value indicating whether to replace the artist name.
/// </summary>
public bool ReplaceArtistName { get; set; }
}