aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/FileOrganization
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-19 11:24:06 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-19 11:24:06 -0500
commit411ce2175102c7e37546971b7f07f593260732c3 (patch)
treedff57cc6846e965a8431f324cdf253879848ca5a /MediaBrowser.Server.Implementations/FileOrganization
parent950623b95d75b292a3b7a6dea50e8fb1c3ea6581 (diff)
fix resolution in photo provider
Diffstat (limited to 'MediaBrowser.Server.Implementations/FileOrganization')
-rw-r--r--MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs14
-rw-r--r--MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs12
2 files changed, 25 insertions, 1 deletions
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs b/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
index a2e094e9a..d4d7f2f21 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
+++ b/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
@@ -50,7 +50,8 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
Date = DateTime.UtcNow,
OriginalPath = path,
OriginalFileName = Path.GetFileName(path),
- Type = FileOrganizerType.Episode
+ Type = FileOrganizerType.Episode,
+ FileSize = new FileInfo(path).Length
};
var seriesName = TVUtils.GetSeriesNameFromEpisodeFile(path);
@@ -102,6 +103,17 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
_logger.Warn(msg);
}
+ var previousResult = _organizationService.GetResultBySourcePath(path);
+
+ if (previousResult != null)
+ {
+ // Don't keep saving the same result over and over if nothing has changed
+ if (previousResult.Status == result.Status && result.Status != FileSortingStatus.Success)
+ {
+ return previousResult;
+ }
+ }
+
await _organizationService.SaveResult(result, CancellationToken.None).ConfigureAwait(false);
return result;
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs b/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs
index 518a7bb48..c03ceb6e5 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs
+++ b/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs
@@ -64,6 +64,18 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
return _repo.GetResult(id);
}
+ public FileOrganizationResult GetResultBySourcePath(string path)
+ {
+ if (string.IsNullOrEmpty(path))
+ {
+ throw new ArgumentNullException("path");
+ }
+
+ var id = path.GetMD5().ToString("N");
+
+ return GetResult(id);
+ }
+
public Task DeleteOriginalFile(string resultId)
{
var result = _repo.GetResult(resultId);