aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-08 17:38:02 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-08 17:38:02 -0500
commit7f5a4c2d4e3d8e1881dae0403367e35ad5699eaf (patch)
treeb8cd714ee0c027c49001f263be885511954f5787 /MediaBrowser.Providers
parent3ffd95a6371c40246a8163c17da3626374685271 (diff)
added item type to refresh info
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/All/InternalMetadataFolderImageProvider.cs4
-rw-r--r--MediaBrowser.Providers/All/LocalImageProvider.cs40
-rw-r--r--MediaBrowser.Providers/Books/BookMetadataService.cs2
-rw-r--r--MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs4
-rw-r--r--MediaBrowser.Providers/Folders/CollectionFolderImageProvider.cs4
-rw-r--r--MediaBrowser.Providers/Folders/ImagesByNameImageProvider.cs4
-rw-r--r--MediaBrowser.Providers/Manager/ItemImageProvider.cs6
-rw-r--r--MediaBrowser.Providers/Manager/MetadataService.cs8
-rw-r--r--MediaBrowser.Providers/Movies/MovieMetadataService.cs2
-rw-r--r--MediaBrowser.Providers/Movies/TrailerMetadataService.cs2
-rw-r--r--MediaBrowser.Providers/Music/AudioMetadataService.cs4
-rw-r--r--MediaBrowser.Providers/People/PersonMetadataService.cs2
-rw-r--r--MediaBrowser.Providers/TV/EpisodeLocalImageProvider.cs92
-rw-r--r--MediaBrowser.Providers/TV/SeasonMetadataService.cs2
-rw-r--r--MediaBrowser.Providers/TV/SeriesPostScanTask.cs4
-rw-r--r--MediaBrowser.Providers/TV/TvdbEpisodeImageProvider.cs8
-rw-r--r--MediaBrowser.Providers/TV/TvdbEpisodeProvider.cs3
-rw-r--r--MediaBrowser.Providers/TV/TvdbSeasonImageProvider.cs8
-rw-r--r--MediaBrowser.Providers/TV/TvdbSeriesProvider.cs28
19 files changed, 123 insertions, 104 deletions
diff --git a/MediaBrowser.Providers/All/InternalMetadataFolderImageProvider.cs b/MediaBrowser.Providers/All/InternalMetadataFolderImageProvider.cs
index cecde64ca3..2526160066 100644
--- a/MediaBrowser.Providers/All/InternalMetadataFolderImageProvider.cs
+++ b/MediaBrowser.Providers/All/InternalMetadataFolderImageProvider.cs
@@ -54,13 +54,13 @@ namespace MediaBrowser.Providers.All
}
}
- public List<LocalImageInfo> GetImages(IHasImages item)
+ public List<LocalImageInfo> GetImages(IHasImages item, DirectoryService directoryService)
{
var path = _config.ApplicationPaths.GetInternalMetadataPath(item.Id);
try
{
- return new LocalImageProvider().GetImages(item, path);
+ return new LocalImageProvider().GetImages(item, path, directoryService);
}
catch (DirectoryNotFoundException)
{
diff --git a/MediaBrowser.Providers/All/LocalImageProvider.cs b/MediaBrowser.Providers/All/LocalImageProvider.cs
index 7d70a35b6d..f54975a69d 100644
--- a/MediaBrowser.Providers/All/LocalImageProvider.cs
+++ b/MediaBrowser.Providers/All/LocalImageProvider.cs
@@ -57,7 +57,7 @@ namespace MediaBrowser.Providers.All
return false;
}
- private IEnumerable<FileSystemInfo> GetFiles(IHasImages item, bool includeDirectories)
+ private IEnumerable<FileSystemInfo> GetFiles(IHasImages item, bool includeDirectories, DirectoryService directoryService)
{
if (item.LocationType != LocationType.FileSystem)
{
@@ -68,34 +68,34 @@ namespace MediaBrowser.Providers.All
if (includeDirectories)
{
- return new DirectoryInfo(path).EnumerateFileSystemInfos("*", SearchOption.TopDirectoryOnly)
+ return directoryService.GetFileSystemEntries(path)
.Where(i => BaseItem.SupportedImageExtensions.Contains(i.Extension, StringComparer.OrdinalIgnoreCase) ||
(i.Attributes & FileAttributes.Directory) == FileAttributes.Directory);
}
- return new DirectoryInfo(path).EnumerateFiles("*", SearchOption.TopDirectoryOnly)
+ return directoryService.GetFiles(path)
.Where(i => BaseItem.SupportedImageExtensions.Contains(i.Extension, StringComparer.OrdinalIgnoreCase));
}
- public List<LocalImageInfo> GetImages(IHasImages item)
+ public List<LocalImageInfo> GetImages(IHasImages item, DirectoryService directoryService)
{
- var files = GetFiles(item, true).ToList();
+ var files = GetFiles(item, true, directoryService).ToList();
var list = new List<LocalImageInfo>();
- PopulateImages(item, list, files, true);
+ PopulateImages(item, list, files, true, directoryService);
return list;
}
- public List<LocalImageInfo> GetImages(IHasImages item, string path)
+ public List<LocalImageInfo> GetImages(IHasImages item, string path, DirectoryService directoryService)
{
- return GetImages(item, new[] { path });
+ return GetImages(item, new[] { path }, directoryService);
}
- public List<LocalImageInfo> GetImages(IHasImages item, IEnumerable<string> paths)
+ public List<LocalImageInfo> GetImages(IHasImages item, IEnumerable<string> paths, DirectoryService directoryService)
{
- var files = paths.SelectMany(i => new DirectoryInfo(i).EnumerateFiles("*", SearchOption.TopDirectoryOnly))
+ var files = paths.SelectMany(directoryService.GetFiles)
.Where(i =>
{
var ext = i.Extension;
@@ -108,12 +108,12 @@ namespace MediaBrowser.Providers.All
var list = new List<LocalImageInfo>();
- PopulateImages(item, list, files, false);
+ PopulateImages(item, list, files, false, directoryService);
return list;
}
- private void PopulateImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, bool supportParentSeriesFiles)
+ private void PopulateImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, bool supportParentSeriesFiles, DirectoryService directoryService)
{
var imagePrefix = string.Empty;
@@ -124,7 +124,7 @@ namespace MediaBrowser.Providers.All
}
PopulatePrimaryImages(item, images, files, imagePrefix);
- PopulateBackdrops(item, images, files, imagePrefix);
+ PopulateBackdrops(item, images, files, imagePrefix, directoryService);
PopulateScreenshots(images, files, imagePrefix);
AddImage(files, images, imagePrefix + "logo", ImageType.Logo);
@@ -149,7 +149,7 @@ namespace MediaBrowser.Providers.All
if (season != null)
{
- PopulateSeasonImagesFromSeriesFolder(season, images);
+ PopulateSeasonImagesFromSeriesFolder(season, images, directoryService);
}
}
}
@@ -185,7 +185,7 @@ namespace MediaBrowser.Providers.All
}
}
- private void PopulateBackdrops(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix)
+ private void PopulateBackdrops(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix, DirectoryService directoryService)
{
PopulateBackdrops(images, files, imagePrefix, "backdrop", "backdrop", ImageType.Backdrop);
@@ -208,13 +208,13 @@ namespace MediaBrowser.Providers.All
if (extraFanartFolder != null)
{
- PopulateBackdropsFromExtraFanart(extraFanartFolder.FullName, images);
+ PopulateBackdropsFromExtraFanart(extraFanartFolder.FullName, images, directoryService);
}
}
- private void PopulateBackdropsFromExtraFanart(string path, List<LocalImageInfo> images)
+ private void PopulateBackdropsFromExtraFanart(string path, List<LocalImageInfo> images, DirectoryService directoryService)
{
- var imageFiles = new DirectoryInfo(path).EnumerateFiles("*", SearchOption.TopDirectoryOnly)
+ var imageFiles = directoryService.GetFiles(path)
.Where(i =>
{
var extension = i.Extension;
@@ -262,7 +262,7 @@ namespace MediaBrowser.Providers.All
}
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
- private void PopulateSeasonImagesFromSeriesFolder(Season season, List<LocalImageInfo> images)
+ private void PopulateSeasonImagesFromSeriesFolder(Season season, List<LocalImageInfo> images, DirectoryService directoryService)
{
var seasonNumber = season.IndexNumber;
@@ -272,7 +272,7 @@ namespace MediaBrowser.Providers.All
return;
}
- var seriesFiles = GetFiles(series, false).ToList();
+ var seriesFiles = GetFiles(series, false, directoryService).ToList();
// Try using the season name
var prefix = season.Name.ToLower().Replace(" ", string.Empty);
diff --git a/MediaBrowser.Providers/Books/BookMetadataService.cs b/MediaBrowser.Providers/Books/BookMetadataService.cs
index 0cf672e2d5..6e070fec96 100644
--- a/MediaBrowser.Providers/Books/BookMetadataService.cs
+++ b/MediaBrowser.Providers/Books/BookMetadataService.cs
@@ -7,8 +7,6 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Providers.Manager;
using System.Collections.Generic;
-using System.Threading;
-using System.Threading.Tasks;
namespace MediaBrowser.Providers.Books
{
diff --git a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
index f4716f6ddb..9547eedd94 100644
--- a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
+++ b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
@@ -11,12 +11,10 @@ using MediaBrowser.Providers.Manager;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Threading;
-using System.Threading.Tasks;
namespace MediaBrowser.Providers.BoxSets
{
- public class BoxSetMetadataService : MetadataService<BoxSet, ItemLookupInfo>
+ public class BoxSetMetadataService : MetadataService<BoxSet, BoxSetInfo>
{
private readonly ILibraryManager _libraryManager;
private readonly ILocalizationManager _iLocalizationManager;
diff --git a/MediaBrowser.Providers/Folders/CollectionFolderImageProvider.cs b/MediaBrowser.Providers/Folders/CollectionFolderImageProvider.cs
index f1b9a8384e..a55c42e4ba 100644
--- a/MediaBrowser.Providers/Folders/CollectionFolderImageProvider.cs
+++ b/MediaBrowser.Providers/Folders/CollectionFolderImageProvider.cs
@@ -27,11 +27,11 @@ namespace MediaBrowser.Providers.Folders
}
}
- public List<LocalImageInfo> GetImages(IHasImages item)
+ public List<LocalImageInfo> GetImages(IHasImages item, DirectoryService directoryService)
{
var collectionFolder = (CollectionFolder)item;
- return new LocalImageProvider().GetImages(item, collectionFolder.PhysicalLocations);
+ return new LocalImageProvider().GetImages(item, collectionFolder.PhysicalLocations, directoryService);
}
}
}
diff --git a/MediaBrowser.Providers/Folders/ImagesByNameImageProvider.cs b/MediaBrowser.Providers/Folders/ImagesByNameImageProvider.cs
index e87f0919fd..daefe25ace 100644
--- a/MediaBrowser.Providers/Folders/ImagesByNameImageProvider.cs
+++ b/MediaBrowser.Providers/Folders/ImagesByNameImageProvider.cs
@@ -38,7 +38,7 @@ namespace MediaBrowser.Providers.Folders
}
}
- public List<LocalImageInfo> GetImages(IHasImages item)
+ public List<LocalImageInfo> GetImages(IHasImages item, DirectoryService directoryService)
{
var name = _fileSystem.GetValidFilename(item.Name);
@@ -46,7 +46,7 @@ namespace MediaBrowser.Providers.Folders
try
{
- return new LocalImageProvider().GetImages(item, path);
+ return new LocalImageProvider().GetImages(item, path, directoryService);
}
catch (DirectoryNotFoundException)
{
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
index b50e028bff..521f2869b5 100644
--- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs
+++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
@@ -34,13 +34,13 @@ namespace MediaBrowser.Providers.Manager
_fileSystem = fileSystem;
}
- public bool ValidateImages(IHasImages item, IEnumerable<IImageProvider> providers)
+ public bool ValidateImages(IHasImages item, IEnumerable<IImageProvider> providers, DirectoryService directoryService)
{
- var hasChanges = item.ValidateImages();
+ var hasChanges = item.ValidateImages(directoryService);
foreach (var provider in providers.OfType<ILocalImageFileProvider>())
{
- var images = provider.GetImages(item);
+ var images = provider.GetImages(item, directoryService);
if (MergeImages(item, images))
{
diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs
index be42589b7c..b594c8cc88 100644
--- a/MediaBrowser.Providers/Manager/MetadataService.cs
+++ b/MediaBrowser.Providers/Manager/MetadataService.cs
@@ -44,6 +44,7 @@ namespace MediaBrowser.Providers.Manager
{
result.ItemId = item.Id;
result.ItemName = item.Name;
+ result.ItemType = item.GetType().Name;
var series = item as IHasSeries;
@@ -64,6 +65,11 @@ namespace MediaBrowser.Providers.Manager
public async Task RefreshMetadata(IHasMetadata item, MetadataRefreshOptions refreshOptions, CancellationToken cancellationToken)
{
+ if (refreshOptions.DirectoryService == null)
+ {
+ refreshOptions.DirectoryService = new DirectoryService(Logger);
+ }
+
var itemOfType = (TItemType)item;
var config = GetMetadataOptions(itemOfType);
@@ -81,7 +87,7 @@ namespace MediaBrowser.Providers.Manager
try
{
// Always validate images and check for new locally stored ones.
- if (itemImageProvider.ValidateImages(item, allImageProviders.OfType<ILocalImageProvider>()))
+ if (itemImageProvider.ValidateImages(item, allImageProviders.OfType<ILocalImageProvider>(), refreshOptions.DirectoryService))
{
updateType = updateType | ItemUpdateType.ImageUpdate;
}
diff --git a/MediaBrowser.Providers/Movies/MovieMetadataService.cs b/MediaBrowser.Providers/Movies/MovieMetadataService.cs
index 34536d97da..9ea43786eb 100644
--- a/MediaBrowser.Providers/Movies/MovieMetadataService.cs
+++ b/MediaBrowser.Providers/Movies/MovieMetadataService.cs
@@ -12,7 +12,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Providers.Movies
{
- public class MovieMetadataService : MetadataService<Movie, ItemLookupInfo>
+ public class MovieMetadataService : MetadataService<Movie, MovieInfo>
{
private readonly ILibraryManager _libraryManager;
diff --git a/MediaBrowser.Providers/Movies/TrailerMetadataService.cs b/MediaBrowser.Providers/Movies/TrailerMetadataService.cs
index d9ae6187cf..9c937db846 100644
--- a/MediaBrowser.Providers/Movies/TrailerMetadataService.cs
+++ b/MediaBrowser.Providers/Movies/TrailerMetadataService.cs
@@ -12,7 +12,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Providers.Movies
{
- public class TrailerMetadataService : MetadataService<Trailer, ItemLookupInfo>
+ public class TrailerMetadataService : MetadataService<Trailer, TrailerInfo>
{
private readonly ILibraryManager _libraryManager;
diff --git a/MediaBrowser.Providers/Music/AudioMetadataService.cs b/MediaBrowser.Providers/Music/AudioMetadataService.cs
index cda22b0f5e..93be8d2e60 100644
--- a/MediaBrowser.Providers/Music/AudioMetadataService.cs
+++ b/MediaBrowser.Providers/Music/AudioMetadataService.cs
@@ -7,12 +7,10 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Providers.Manager;
using System.Collections.Generic;
-using System.Threading;
-using System.Threading.Tasks;
namespace MediaBrowser.Providers.Music
{
- public class AudioMetadataService : MetadataService<Audio, ItemLookupInfo>
+ public class AudioMetadataService : MetadataService<Audio, SongInfo>
{
private readonly ILibraryManager _libraryManager;
diff --git a/MediaBrowser.Providers/People/PersonMetadataService.cs b/MediaBrowser.Providers/People/PersonMetadataService.cs
index b3b3e88d05..faf606f3e4 100644
--- a/MediaBrowser.Providers/People/PersonMetadataService.cs
+++ b/MediaBrowser.Providers/People/PersonMetadataService.cs
@@ -12,7 +12,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Providers.People
{
- public class PersonMetadataService : MetadataService<Person, ItemLookupInfo>
+ public class PersonMetadataService : MetadataService<Person, PersonLookupInfo>
{
private readonly ILibraryManager _libraryManager;
diff --git a/MediaBrowser.Providers/TV/EpisodeLocalImageProvider.cs b/MediaBrowser.Providers/TV/EpisodeLocalImageProvider.cs
index df3b8b48f7..8a3af13d86 100644
--- a/MediaBrowser.Providers/TV/EpisodeLocalImageProvider.cs
+++ b/MediaBrowser.Providers/TV/EpisodeLocalImageProvider.cs
@@ -2,8 +2,10 @@
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
+using System;
using System.Collections.Generic;
using System.IO;
+using System.Linq;
namespace MediaBrowser.Providers.TV
{
@@ -19,48 +21,84 @@ namespace MediaBrowser.Providers.TV
return item is Episode && item.LocationType == LocationType.FileSystem;
}
- public List<LocalImageInfo> GetImages(IHasImages item)
+ public List<LocalImageInfo> GetImages(IHasImages item, DirectoryService directoryService)
{
- var file = GetFile(item);
+ var parentPath = Path.GetDirectoryName(item.Path);
+
+ var parentPathFiles = directoryService.GetFileSystemEntries(parentPath);
+
+ var nameWithoutExtension = Path.GetFileNameWithoutExtension(item.Path);
+
+ var files = GetFilesFromParentFolder(nameWithoutExtension, parentPathFiles);
+
+ if (files.Count > 0)
+ {
+ return files;
+ }
- var list = new List<LocalImageInfo>();
+ var metadataPath = Path.Combine(parentPath, "metadata");
- if (file != null)
+ if (parentPathFiles.Any(i => string.Equals(i.FullName, metadataPath, StringComparison.OrdinalIgnoreCase)))
{
- list.Add(new LocalImageInfo
- {
- FileInfo = file,
- Type = ImageType.Primary
- });
+ return GetFilesFromParentFolder(nameWithoutExtension, directoryService.GetFiles(metadataPath));
}
- return list;
+ return new List<LocalImageInfo>();
}
- private FileInfo GetFile(IHasImages item)
+ private List<LocalImageInfo> GetFilesFromParentFolder(string filenameWithoutExtension, IEnumerable<FileSystemInfo> parentPathFiles)
{
- var parentPath = Path.GetDirectoryName(item.Path);
+ var thumbName = filenameWithoutExtension + "-thumb";
- var nameWithoutExtension = Path.GetFileNameWithoutExtension(item.Path);
- var thumbName = nameWithoutExtension + "-thumb";
+ return parentPathFiles
+ .Where(i =>
+ {
+ if (BaseItem.SupportedImageExtensions.Contains(i.Extension))
+ {
+ var currentNameWithoutExtension = Path.GetFileNameWithoutExtension(i.Name);
- var path = Path.Combine(parentPath, thumbName + ".jpg");
- var fileInfo = new FileInfo(path);
+ if (string.Equals(filenameWithoutExtension, currentNameWithoutExtension, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
- if (fileInfo.Exists)
- {
- return fileInfo;
- }
+ if (string.Equals(thumbName, currentNameWithoutExtension, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+ }
- path = Path.Combine(parentPath, "metadata", nameWithoutExtension + ".jpg");
- fileInfo = new FileInfo(path);
+ return false;
+ })
+ .Select(i => new LocalImageInfo
+ {
+ FileInfo = (FileInfo)i,
+ Type = ImageType.Primary
+ })
+ .ToList();
+ }
- if (fileInfo.Exists)
- {
- return fileInfo;
- }
+ private List<LocalImageInfo> GetFilesFromMetadataFolder(string filenameWithoutExtension, IEnumerable<FileInfo> metadataFiles)
+ {
+ return metadataFiles
+ .Where(i =>
+ {
+ if (BaseItem.SupportedImageExtensions.Contains(i.Extension))
+ {
+ if (string.Equals(filenameWithoutExtension, Path.GetFileNameWithoutExtension(i.Name), StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+ }
- return null;
+ return false;
+ })
+ .Select(i => new LocalImageInfo
+ {
+ FileInfo = i,
+ Type = ImageType.Primary
+ })
+ .ToList();
}
}
}
diff --git a/MediaBrowser.Providers/TV/SeasonMetadataService.cs b/MediaBrowser.Providers/TV/SeasonMetadataService.cs
index b0c80d5d67..e76ad90752 100644
--- a/MediaBrowser.Providers/TV/SeasonMetadataService.cs
+++ b/MediaBrowser.Providers/TV/SeasonMetadataService.cs
@@ -12,7 +12,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Providers.TV
{
- public class SeasonMetadataService : MetadataService<Season, ItemLookupInfo>
+ public class SeasonMetadataService : MetadataService<Season, SeasonInfo>
{
private readonly ILibraryManager _libraryManager;
diff --git a/MediaBrowser.Providers/TV/SeriesPostScanTask.cs b/MediaBrowser.Providers/TV/SeriesPostScanTask.cs
index dc06857ce3..68d05012f0 100644
--- a/MediaBrowser.Providers/TV/SeriesPostScanTask.cs
+++ b/MediaBrowser.Providers/TV/SeriesPostScanTask.cs
@@ -174,8 +174,7 @@ namespace MediaBrowser.Providers.TV
{
await series.RefreshMetadata(new MetadataRefreshOptions
{
- }, cancellationToken)
- .ConfigureAwait(false);
+ }, cancellationToken).ConfigureAwait(false);
await series.ValidateChildren(new Progress<double>(), cancellationToken, true)
.ConfigureAwait(false);
@@ -469,6 +468,7 @@ namespace MediaBrowser.Providers.TV
};
await series.AddChild(season, cancellationToken).ConfigureAwait(false);
+
await season.RefreshMetadata(new MetadataRefreshOptions
{
}, cancellationToken).ConfigureAwait(false);
diff --git a/MediaBrowser.Providers/TV/TvdbEpisodeImageProvider.cs b/MediaBrowser.Providers/TV/TvdbEpisodeImageProvider.cs
index 754f973bc8..7d8f9e1864 100644
--- a/MediaBrowser.Providers/TV/TvdbEpisodeImageProvider.cs
+++ b/MediaBrowser.Providers/TV/TvdbEpisodeImageProvider.cs
@@ -194,9 +194,13 @@ namespace MediaBrowser.Providers.TV
public bool HasChanged(IHasMetadata item, DateTime date)
{
- if (!_config.Configuration.EnableTvDbUpdates && item.LocationType != LocationType.Virtual)
+ if (item.LocationType != LocationType.Virtual)
{
- return false;
+ // For non-virtual items, only enable if configured
+ if (!_config.Configuration.EnableTvDbUpdates)
+ {
+ return false;
+ }
}
if (!item.HasImage(ImageType.Primary))
diff --git a/MediaBrowser.Providers/TV/TvdbEpisodeProvider.cs b/MediaBrowser.Providers/TV/TvdbEpisodeProvider.cs
index 1c9f565f3c..d0b4050172 100644
--- a/MediaBrowser.Providers/TV/TvdbEpisodeProvider.cs
+++ b/MediaBrowser.Providers/TV/TvdbEpisodeProvider.cs
@@ -68,7 +68,8 @@ namespace MediaBrowser.Providers.TV
public bool HasChanged(IHasMetadata item, DateTime date)
{
- if (!_config.Configuration.EnableTvDbUpdates && item.LocationType != LocationType.Virtual)
+ // Only enable for virtual items
+ if (item.LocationType != LocationType.Virtual)
{
return false;
}
diff --git a/MediaBrowser.Providers/TV/TvdbSeasonImageProvider.cs b/MediaBrowser.Providers/TV/TvdbSeasonImageProvider.cs
index a6276d0d75..5216d84c5f 100644
--- a/MediaBrowser.Providers/TV/TvdbSeasonImageProvider.cs
+++ b/MediaBrowser.Providers/TV/TvdbSeasonImageProvider.cs
@@ -342,9 +342,13 @@ namespace MediaBrowser.Providers.TV
public bool HasChanged(IHasMetadata item, DateTime date)
{
- if (!_config.Configuration.EnableTvDbUpdates && item.LocationType != LocationType.Virtual)
+ if (item.LocationType != LocationType.Virtual)
{
- return false;
+ // For non-virtual items, only enable if configured
+ if (!_config.Configuration.EnableTvDbUpdates)
+ {
+ return false;
+ }
}
var season = (Season)item;
diff --git a/MediaBrowser.Providers/TV/TvdbSeriesProvider.cs b/MediaBrowser.Providers/TV/TvdbSeriesProvider.cs
index ba8ac9fd6a..80c50e9589 100644
--- a/MediaBrowser.Providers/TV/TvdbSeriesProvider.cs
+++ b/MediaBrowser.Providers/TV/TvdbSeriesProvider.cs
@@ -1079,33 +1079,5 @@ namespace MediaBrowser.Providers.TV
{
get { return "TheTVDB"; }
}
-
- public bool HasChanged(IHasMetadata item, DateTime date)
- {
- if (!_config.Configuration.EnableTvDbUpdates)
- {
- return false;
- }
-
- var seriesId = item.GetProviderId(MetadataProviders.Tvdb);
-
- if (!string.IsNullOrEmpty(seriesId))
- {
- var seriesDataPath = GetSeriesDataPath(_config.ApplicationPaths, seriesId);
-
- var seriesXmlFilename = item.GetPreferredMetadataLanguage() + ".xml";
-
- var filePath = Path.Combine(seriesDataPath, seriesXmlFilename);
-
- var seriesFile = new FileInfo(filePath);
-
- if (!seriesFile.Exists || _fileSystem.GetLastWriteTimeUtc(seriesFile) > date)
- {
- return true;
- }
- }
-
- return false;
- }
}
}