diff --git a/MediaBrowser.Controller/Providers/Music/LastfmBaseProvider.cs b/MediaBrowser.Controller/Providers/Music/LastfmBaseProvider.cs
index 7e99d684f0..364986130f 100644
--- a/MediaBrowser.Controller/Providers/Music/LastfmBaseProvider.cs
+++ b/MediaBrowser.Controller/Providers/Music/LastfmBaseProvider.cs
@@ -1,13 +1,9 @@
using System.Net;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using System;
-using System.Collections.Generic;
-using System.Text;
-using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Model.Serialization;
@@ -75,16 +71,6 @@ namespace MediaBrowser.Controller.Providers.Music
get { return MetadataProviderPriority.Second; }
}
- ///
- /// Supportses the specified item.
- ///
- /// The item.
- /// true if XXXX, false otherwise
- public override bool Supports(BaseItem item)
- {
- return item is MusicArtist;
- }
-
///
/// Gets a value indicating whether [requires internet].
///
@@ -111,11 +97,6 @@ namespace MediaBrowser.Controller.Providers.Music
protected const string RootUrl = @"http://ws.audioscrobbler.com/2.0/";
protected static string ApiKey = "7b76553c3eb1d341d642755aecc40a33";
- static readonly Regex[] NameMatches = new[] {
- new Regex(@"(?.*)\((?\d{4})\)"), // matches "My Movie (2001)" and gives us the name and the year
- new Regex(@"(?.*)") // last resort matches the whole string as the name
- };
-
protected override bool NeedsRefreshInternal(BaseItem item, BaseProviderInfo providerInfo)
{
if (item.DontFetchMeta) return false;
@@ -207,30 +188,6 @@ namespace MediaBrowser.Controller.Providers.Music
/// Task.
protected abstract Task FetchData(BaseItem item, CancellationToken cancellationToken);
- ///
- /// Parses the name.
- ///
- /// The name.
- /// Name of the just.
- /// The year.
- protected void ParseName(string name, out string justName, out int? year)
- {
- justName = null;
- year = null;
- foreach (var re in NameMatches)
- {
- Match m = re.Match(name);
- if (m.Success)
- {
- justName = m.Groups["name"].Value.Trim();
- string y = m.Groups["year"] != null ? m.Groups["year"].Value : null;
- int temp;
- year = Int32.TryParse(y, out temp) ? temp : (int?)null;
- break;
- }
- }
- }
-
///
/// Encodes an URL.
///
@@ -241,125 +198,5 @@ namespace MediaBrowser.Controller.Providers.Music
return WebUtility.UrlEncode(name);
}
- ///
- /// The remove
- ///
- const string remove = "\"'!`?";
- // "Face/Off" support.
- ///
- /// The spacers
- ///
- const string spacers = "/,.:;\\(){}[]+-_=–*"; // (there are not actually two - in the they are different char codes)
- ///
- /// The replace start numbers
- ///
- static readonly Dictionary ReplaceStartNumbers = new Dictionary {
- {"1 ","one "},
- {"2 ","two "},
- {"3 ","three "},
- {"4 ","four "},
- {"5 ","five "},
- {"6 ","six "},
- {"7 ","seven "},
- {"8 ","eight "},
- {"9 ","nine "},
- {"10 ","ten "},
- {"11 ","eleven "},
- {"12 ","twelve "},
- {"13 ","thirteen "},
- {"100 ","one hundred "},
- {"101 ","one hundred one "}
- };
-
- ///
- /// The replace end numbers
- ///
- static readonly Dictionary ReplaceEndNumbers = new Dictionary {
- {" 1"," i"},
- {" 2"," ii"},
- {" 3"," iii"},
- {" 4"," iv"},
- {" 5"," v"},
- {" 6"," vi"},
- {" 7"," vii"},
- {" 8"," viii"},
- {" 9"," ix"},
- {" 10"," x"}
- };
-
- ///
- /// Gets the name of the comparable.
- ///
- /// The name.
- /// The logger.
- /// System.String.
- internal static string GetComparableName(string name, ILogger logger)
- {
- name = name.ToLower();
- name = name.Replace("á", "a");
- name = name.Replace("é", "e");
- name = name.Replace("í", "i");
- name = name.Replace("ó", "o");
- name = name.Replace("ú", "u");
- name = name.Replace("ü", "u");
- name = name.Replace("ñ", "n");
- foreach (var pair in ReplaceStartNumbers)
- {
- if (name.StartsWith(pair.Key))
- {
- name = name.Remove(0, pair.Key.Length);
- name = pair.Value + name;
- logger.Info("MovieDbProvider - Replaced Start Numbers: " + name);
- }
- }
- foreach (var pair in ReplaceEndNumbers)
- {
- if (name.EndsWith(pair.Key))
- {
- name = name.Remove(name.IndexOf(pair.Key), pair.Key.Length);
- name = name + pair.Value;
- logger.Info("MovieDbProvider - Replaced End Numbers: " + name);
- }
- }
- name = name.Normalize(NormalizationForm.FormKD);
- var sb = new StringBuilder();
- foreach (var c in name)
- {
- if (c >= 0x2B0 && c <= 0x0333)
- {
- // skip char modifier and diacritics
- }
- else if (remove.IndexOf(c) > -1)
- {
- // skip chars we are removing
- }
- else if (spacers.IndexOf(c) > -1)
- {
- sb.Append(" ");
- }
- else if (c == '&')
- {
- sb.Append(" and ");
- }
- else
- {
- sb.Append(c);
- }
- }
- name = sb.ToString();
- name = name.Replace(", the", "");
- name = name.Replace(" the ", " ");
- name = name.Replace("the ", "");
-
- string prevName;
- do
- {
- prevName = name;
- name = name.Replace(" ", " ");
- } while (name.Length != prevName.Length);
-
- return name.Trim();
- }
-
}
}