From 3d40c5ba36c5e98954c2bc6073b4cf35cd42711a Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 1 Oct 2013 14:24:27 -0400 Subject: fixed xml providers running over and over --- MediaBrowser.Controller/Entities/User.cs | 10 ++-------- MediaBrowser.Controller/IO/FileSystem.cs | 5 +---- MediaBrowser.Controller/MediaInfo/FFMpegManager.cs | 5 +---- .../Providers/BaseMetadataProvider.cs | 21 ++++++++++++++++----- 4 files changed, 20 insertions(+), 21 deletions(-) (limited to 'MediaBrowser.Controller') diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs index 82d81e5176..9d85399067 100644 --- a/MediaBrowser.Controller/Entities/User.cs +++ b/MediaBrowser.Controller/Entities/User.cs @@ -30,10 +30,7 @@ namespace MediaBrowser.Controller.Entities { var path = Configuration.UseCustomLibrary ? GetRootFolderPath(Name) : ConfigurationManager.ApplicationPaths.DefaultUserViewsPath; - if (!Directory.Exists(path)) - { - Directory.CreateDirectory(path); - } + Directory.CreateDirectory(path); return path; } @@ -256,10 +253,7 @@ namespace MediaBrowser.Controller.Entities { _configurationDirectoryPath = GetConfigurationDirectoryPath(Name); - if (!Directory.Exists(_configurationDirectoryPath)) - { - Directory.CreateDirectory(_configurationDirectoryPath); - } + Directory.CreateDirectory(_configurationDirectoryPath); } return _configurationDirectoryPath; diff --git a/MediaBrowser.Controller/IO/FileSystem.cs b/MediaBrowser.Controller/IO/FileSystem.cs index 3d425f13f0..30fdb8d397 100644 --- a/MediaBrowser.Controller/IO/FileSystem.cs +++ b/MediaBrowser.Controller/IO/FileSystem.cs @@ -205,10 +205,7 @@ namespace MediaBrowser.Controller.IO } // Check if the target directory exists, if not, create it. - if (!Directory.Exists(target)) - { - Directory.CreateDirectory(target); - } + Directory.CreateDirectory(target); foreach (var file in Directory.EnumerateFiles(source)) { diff --git a/MediaBrowser.Controller/MediaInfo/FFMpegManager.cs b/MediaBrowser.Controller/MediaInfo/FFMpegManager.cs index bbe5ddbaae..87036df84e 100644 --- a/MediaBrowser.Controller/MediaInfo/FFMpegManager.cs +++ b/MediaBrowser.Controller/MediaInfo/FFMpegManager.cs @@ -159,10 +159,7 @@ namespace MediaBrowser.Controller.MediaInfo { var parentPath = Path.GetDirectoryName(path); - if (!Directory.Exists(parentPath)) - { - Directory.CreateDirectory(parentPath); - } + Directory.CreateDirectory(parentPath); await _encoder.ExtractImage(inputPath, type, video.Video3DFormat, time, path, cancellationToken).ConfigureAwait(false); chapter.ImagePath = path; diff --git a/MediaBrowser.Controller/Providers/BaseMetadataProvider.cs b/MediaBrowser.Controller/Providers/BaseMetadataProvider.cs index 2364debed3..ad6be94814 100644 --- a/MediaBrowser.Controller/Providers/BaseMetadataProvider.cs +++ b/MediaBrowser.Controller/Providers/BaseMetadataProvider.cs @@ -233,27 +233,27 @@ namespace MediaBrowser.Controller.Providers throw new ArgumentNullException("providerInfo"); } - if (CompareDate(item) > providerInfo.LastRefreshed) + if (RefreshOnVersionChange && !String.Equals(ProviderVersion, providerInfo.ProviderVersion)) { return true; } - if (RefreshOnFileSystemStampChange && item.LocationType == LocationType.FileSystem && HasFileSystemStampChanged(item, providerInfo)) + if (RequiresInternet && DateTime.UtcNow > (providerInfo.LastRefreshed.AddDays(ConfigurationManager.Configuration.MetadataRefreshDays))) { return true; } - if (RefreshOnVersionChange && !String.Equals(ProviderVersion, providerInfo.ProviderVersion)) + if (providerInfo.LastRefreshStatus != ProviderRefreshStatus.Success) { return true; } - if (RequiresInternet && DateTime.UtcNow > (providerInfo.LastRefreshed.AddDays(ConfigurationManager.Configuration.MetadataRefreshDays))) + if (NeedsRefreshBasedOnCompareDate(item, providerInfo)) { return true; } - if (providerInfo.LastRefreshStatus != ProviderRefreshStatus.Success) + if (RefreshOnFileSystemStampChange && item.LocationType == LocationType.FileSystem && HasFileSystemStampChanged(item, providerInfo)) { return true; } @@ -261,6 +261,17 @@ namespace MediaBrowser.Controller.Providers return false; } + /// + /// Needses the refresh based on compare date. + /// + /// The item. + /// The provider info. + /// true if XXXX, false otherwise + protected virtual bool NeedsRefreshBasedOnCompareDate(BaseItem item, BaseProviderInfo providerInfo) + { + return CompareDate(item) > providerInfo.LastRefreshed; + } + /// /// Determines if the item's file system stamp has changed from the last time the provider refreshed /// -- cgit v1.2.3