MusicExternalIds.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. using MediaBrowser.Controller.Entities.Audio;
  2. using MediaBrowser.Controller.Providers;
  3. using MediaBrowser.Model.Entities;
  4. using MediaBrowser.Controller.Entities;
  5. namespace MediaBrowser.Providers.Music
  6. {
  7. public class MusicBrainzReleaseGroupExternalId : IExternalId
  8. {
  9. public string Name
  10. {
  11. get { return "MusicBrainz Release Group"; }
  12. }
  13. public string Key
  14. {
  15. get { return MetadataProviders.MusicBrainzReleaseGroup.ToString(); }
  16. }
  17. public string UrlFormatString
  18. {
  19. get { return "https://musicbrainz.org/release-group/{0}"; }
  20. }
  21. public bool Supports(IHasProviderIds item)
  22. {
  23. return item is Audio || item is MusicAlbum;
  24. }
  25. }
  26. public class MusicBrainzAlbumArtistExternalId : IExternalId
  27. {
  28. public string Name
  29. {
  30. get { return "MusicBrainz Album Artist"; }
  31. }
  32. public string Key
  33. {
  34. get { return MetadataProviders.MusicBrainzAlbumArtist.ToString(); }
  35. }
  36. public string UrlFormatString
  37. {
  38. get { return "https://musicbrainz.org/artist/{0}"; }
  39. }
  40. public bool Supports(IHasProviderIds item)
  41. {
  42. return item is Audio;
  43. }
  44. }
  45. public class MusicBrainzAlbumExternalId : IExternalId
  46. {
  47. public string Name
  48. {
  49. get { return "MusicBrainz Album"; }
  50. }
  51. public string Key
  52. {
  53. get { return MetadataProviders.MusicBrainzAlbum.ToString(); }
  54. }
  55. public string UrlFormatString
  56. {
  57. get { return "https://musicbrainz.org/release/{0}"; }
  58. }
  59. public bool Supports(IHasProviderIds item)
  60. {
  61. return item is Audio || item is MusicAlbum;
  62. }
  63. }
  64. public class MusicBrainzArtistExternalId : IExternalId
  65. {
  66. public string Name
  67. {
  68. get { return "MusicBrainz"; }
  69. }
  70. public string Key
  71. {
  72. get { return MetadataProviders.MusicBrainzArtist.ToString(); }
  73. }
  74. public string UrlFormatString
  75. {
  76. get { return "https://musicbrainz.org/artist/{0}"; }
  77. }
  78. public bool Supports(IHasProviderIds item)
  79. {
  80. return item is MusicArtist;
  81. }
  82. }
  83. public class MusicBrainzOtherArtistExternalId : IExternalId
  84. {
  85. public string Name
  86. {
  87. get { return "MusicBrainz Artist"; }
  88. }
  89. public string Key
  90. {
  91. get { return MetadataProviders.MusicBrainzArtist.ToString(); }
  92. }
  93. public string UrlFormatString
  94. {
  95. get { return "https://musicbrainz.org/artist/{0}"; }
  96. }
  97. public bool Supports(IHasProviderIds item)
  98. {
  99. return item is Audio || item is MusicAlbum;
  100. }
  101. }
  102. public class MusicBrainzTrackId : IExternalId
  103. {
  104. public string Name
  105. {
  106. get { return "MusicBrainz Track"; }
  107. }
  108. public string Key
  109. {
  110. get { return MetadataProviders.MusicBrainzTrack.ToString(); }
  111. }
  112. public string UrlFormatString
  113. {
  114. get { return "https://musicbrainz.org/track/{0}"; }
  115. }
  116. public bool Supports(IHasProviderIds item)
  117. {
  118. return item is Audio;
  119. }
  120. }
  121. public class ImvdbId : IExternalId
  122. {
  123. public string Name
  124. {
  125. get { return "IMVDb"; }
  126. }
  127. public string Key
  128. {
  129. get { return "IMVDb"; }
  130. }
  131. public string UrlFormatString
  132. {
  133. get { return null; }
  134. }
  135. public bool Supports(IHasProviderIds item)
  136. {
  137. return item is MusicVideo;
  138. }
  139. }
  140. }