replace comparison data with comparedate

This commit is contained in:
Luke Pulverenti 2013-06-21 09:43:34 -04:00
parent b9c1113df9
commit 43c9ab9cdc
4 changed files with 20 additions and 75 deletions

View File

@ -148,22 +148,13 @@ namespace MediaBrowser.Providers.Movies
return false;
}
// Refresh if tmdb id has changed
if (providerInfo.Data != GetComparisonData(item.GetProviderId(MetadataProviders.Tmdb)))
{
return true;
}
return base.NeedsRefreshInternal(item, providerInfo);
}
/// <summary>
/// Gets the comparison data.
/// </summary>
/// <param name="id">The id.</param>
/// <returns>Guid.</returns>
private Guid GetComparisonData(string id)
protected override DateTime CompareDate(BaseItem item)
{
var id = item.GetProviderId(MetadataProviders.Tmdb);
if (!string.IsNullOrEmpty(id))
{
// Process images
@ -171,16 +162,16 @@ namespace MediaBrowser.Providers.Movies
var files = new DirectoryInfo(path)
.EnumerateFiles("*.xml", SearchOption.TopDirectoryOnly)
.Select(i => i.FullName + i.LastWriteTimeUtc.Ticks)
.Select(i => i.LastWriteTimeUtc)
.ToArray();
if (files.Length > 0)
{
return string.Join(string.Empty, files).GetMD5();
return files.Max();
}
}
return Guid.Empty;
return base.CompareDate(item);
}
/// <summary>
@ -253,7 +244,6 @@ namespace MediaBrowser.Providers.Movies
await FetchFromXml(item, xmlPath, cancellationToken).ConfigureAwait(false);
}
data.Data = GetComparisonData(item.GetProviderId(MetadataProviders.Tmdb));
SetLastRefreshed(item, DateTime.UtcNow);
return true;
}

View File

@ -132,20 +132,10 @@ namespace MediaBrowser.Providers.Music
return false;
}
if (GetComparisonData(item) != providerInfo.Data)
{
return true;
}
return base.NeedsRefreshInternal(item, providerInfo);
}
/// <summary>
/// Gets the comparison data.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>Guid.</returns>
private Guid GetComparisonData(BaseItem item)
protected override DateTime CompareDate(BaseItem item)
{
var musicBrainzId = item.GetProviderId(MetadataProviders.Musicbrainz);
@ -156,16 +146,16 @@ namespace MediaBrowser.Providers.Music
var files = new DirectoryInfo(path)
.EnumerateFiles("*.xml", SearchOption.TopDirectoryOnly)
.Select(i => i.FullName + i.LastWriteTimeUtc.Ticks)
.Select(i => i.LastWriteTimeUtc)
.ToArray();
if (files.Length > 0)
{
return string.Join(string.Empty, files).GetMD5();
return files.Max();
}
}
return Guid.Empty;
return base.CompareDate(item);
}
/// <summary>
@ -249,8 +239,6 @@ namespace MediaBrowser.Providers.Music
item.ProviderData[Id] = data;
}
data.Data = GetComparisonData(item);
SetLastRefreshed(item, DateTime.UtcNow);
return true;
}

View File

@ -1,5 +1,4 @@
using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.IO;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Configuration;
@ -79,21 +78,14 @@ namespace MediaBrowser.Providers.TV
{
return false;
}
if (providerInfo.Data != GetComparisonData(item.GetProviderId(MetadataProviders.Tvdb)))
{
return true;
}
return base.NeedsRefreshInternal(item, providerInfo);
}
/// <summary>
/// Gets the comparison data.
/// </summary>
/// <returns>Guid.</returns>
private Guid GetComparisonData(string id)
protected override DateTime CompareDate(BaseItem item)
{
var id = item.GetProviderId(MetadataProviders.Tvdb);
if (!string.IsNullOrEmpty(id))
{
// Process images
@ -101,16 +93,16 @@ namespace MediaBrowser.Providers.TV
var files = new DirectoryInfo(path)
.EnumerateFiles("*.xml", SearchOption.TopDirectoryOnly)
.Select(i => i.FullName + i.LastWriteTimeUtc.Ticks)
.Select(i => i.LastWriteTimeUtc)
.ToArray();
if (files.Length > 0)
{
return string.Join(string.Empty, files).GetMD5();
return files.Max();
}
}
return Guid.Empty;
return base.CompareDate(item);
}
/// <summary>
@ -202,7 +194,6 @@ namespace MediaBrowser.Providers.TV
await FetchFromXml(item, xmlPath, cancellationToken).ConfigureAwait(false);
}
data.Data = GetComparisonData(item.GetProviderId(MetadataProviders.Tvdb));
SetLastRefreshed(item, DateTime.UtcNow);
return true;

View File

@ -162,29 +162,7 @@ namespace MediaBrowser.Providers.TV
}
}
/// <summary>
/// Needses the refresh internal.
/// </summary>
/// <param name="item">The item.</param>
/// <param name="providerInfo">The provider info.</param>
/// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns>
protected override bool NeedsRefreshInternal(BaseItem item, BaseProviderInfo providerInfo)
{
// Refresh even if local metadata exists because we need episode infos
if (GetComparisonData(item) != providerInfo.Data)
{
return true;
}
return base.NeedsRefreshInternal(item, providerInfo);
}
/// <summary>
/// Gets the comparison data.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>Guid.</returns>
private Guid GetComparisonData(BaseItem item)
protected override DateTime CompareDate(BaseItem item)
{
var seriesId = item.GetProviderId(MetadataProviders.Tvdb);
@ -195,16 +173,16 @@ namespace MediaBrowser.Providers.TV
var files = new DirectoryInfo(path)
.EnumerateFiles("*.xml", SearchOption.TopDirectoryOnly)
.Select(i => i.FullName + i.LastWriteTimeUtc.Ticks)
.Select(i => i.LastWriteTimeUtc)
.ToArray();
if (files.Length > 0)
{
return string.Join(string.Empty, files).GetMD5();
return files.Max();
}
}
return Guid.Empty;
return base.CompareDate(item);
}
/// <summary>
@ -245,8 +223,6 @@ namespace MediaBrowser.Providers.TV
item.ProviderData[Id] = data;
}
data.Data = GetComparisonData(item);
SetLastRefreshed(item, DateTime.UtcNow);
return true;
}