jellyfin/MediaBrowser.Providers/Music/MusicExternalIds.cs

106 lines
2.9 KiB
C#
Raw Normal View History

using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
2014-02-21 11:48:15 -07:00
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Providers.Music
{
public class MusicBrainzReleaseGroupExternalId : IExternalId
{
public string Name => "MusicBrainz Release Group";
2014-02-21 11:48:15 -07:00
public string Key => MetadataProviders.MusicBrainzReleaseGroup.ToString();
2014-02-21 11:48:15 -07:00
public string UrlFormatString => "https://musicbrainz.org/release-group/{0}";
2014-02-21 11:48:15 -07:00
public bool Supports(IHasProviderIds item)
{
2014-03-05 22:17:13 -07:00
return item is Audio || item is MusicAlbum;
2014-02-21 11:48:15 -07:00
}
}
public class MusicBrainzAlbumArtistExternalId : IExternalId
{
public string Name => "MusicBrainz Album Artist";
2014-02-21 11:48:15 -07:00
public string Key => MetadataProviders.MusicBrainzAlbumArtist.ToString();
2014-02-21 11:48:15 -07:00
public string UrlFormatString => "https://musicbrainz.org/artist/{0}";
2014-02-21 11:48:15 -07:00
public bool Supports(IHasProviderIds item)
{
return item is Audio;
2014-02-21 11:48:15 -07:00
}
}
public class MusicBrainzAlbumExternalId : IExternalId
{
public string Name => "MusicBrainz Album";
2014-02-21 11:48:15 -07:00
public string Key => MetadataProviders.MusicBrainzAlbum.ToString();
2014-02-21 11:48:15 -07:00
public string UrlFormatString => "https://musicbrainz.org/release/{0}";
2014-02-21 11:48:15 -07:00
public bool Supports(IHasProviderIds item)
{
return item is Audio || item is MusicAlbum;
}
}
public class MusicBrainzArtistExternalId : IExternalId
{
public string Name => "MusicBrainz";
2014-02-21 11:48:15 -07:00
public string Key => MetadataProviders.MusicBrainzArtist.ToString();
2014-02-21 11:48:15 -07:00
public string UrlFormatString => "https://musicbrainz.org/artist/{0}";
2014-02-21 11:48:15 -07:00
public bool Supports(IHasProviderIds item)
{
return item is MusicArtist;
}
}
public class MusicBrainzOtherArtistExternalId : IExternalId
{
public string Name => "MusicBrainz Artist";
2014-02-21 11:48:15 -07:00
public string Key => MetadataProviders.MusicBrainzArtist.ToString();
2014-02-21 11:48:15 -07:00
public string UrlFormatString => "https://musicbrainz.org/artist/{0}";
2014-02-21 11:48:15 -07:00
public bool Supports(IHasProviderIds item)
{
return item is Audio || item is MusicAlbum;
}
}
2015-01-27 15:45:59 -07:00
public class MusicBrainzTrackId : IExternalId
{
public string Name => "MusicBrainz Track";
2015-01-27 15:45:59 -07:00
public string Key => MetadataProviders.MusicBrainzTrack.ToString();
2015-01-27 15:45:59 -07:00
public string UrlFormatString => "https://musicbrainz.org/track/{0}";
2015-01-27 15:45:59 -07:00
public bool Supports(IHasProviderIds item)
{
return item is Audio;
}
}
2018-09-12 10:26:21 -07:00
public class ImvdbId : IExternalId
{
public string Name => "IMVDb";
2018-09-12 10:26:21 -07:00
public string Key => "IMVDb";
2018-09-12 10:26:21 -07:00
public string UrlFormatString => null;
2018-09-12 10:26:21 -07:00
public bool Supports(IHasProviderIds item)
{
return item is MusicVideo;
}
}
2014-02-21 11:48:15 -07:00
}