aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Reed <ebr@mediabrowser3.com>2013-04-13 17:45:29 -0400
committerEric Reed <ebr@mediabrowser3.com>2013-04-13 17:45:29 -0400
commit5a3c46fd5e6fb1435d4d19db6b6624b061ff101a (patch)
tree3b5db1563c549bb74219c0c02b4feb764147b2f8
parent76fe2c061e9c0c649b2aa772cbec350a9483fc4d (diff)
Have DirectoryWatchers ignore some files
-rw-r--r--MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs13
1 files changed, 13 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs b/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
index c33975a64..684b72cc9 100644
--- a/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
+++ b/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
@@ -39,6 +39,11 @@ namespace MediaBrowser.Server.Implementations.IO
private readonly ConcurrentDictionary<string,string> _tempIgnoredPaths = new ConcurrentDictionary<string, string>(StringComparer.OrdinalIgnoreCase);
/// <summary>
+ /// Any file name ending in any of these will be ignored by the watchers
+ /// </summary>
+ private readonly List<string> _alwaysIgnoreFiles = new List<string> {"thumbs.db","small.jpg","albumart.jpg"};
+
+ /// <summary>
/// The timer lock
/// </summary>
private readonly object _timerLock = new object();
@@ -313,10 +318,18 @@ namespace MediaBrowser.Server.Implementations.IO
/// <param name="e">The <see cref="FileSystemEventArgs" /> instance containing the event data.</param>
void watcher_Changed(object sender, FileSystemEventArgs e)
{
+ // Ignore when someone manually creates a new folder
if (e.ChangeType == WatcherChangeTypes.Created && e.Name == "New folder")
{
return;
}
+
+ // Ignore certain files
+ if (_alwaysIgnoreFiles.Any(f => e.Name.EndsWith(f, StringComparison.OrdinalIgnoreCase)))
+ {
+ return;
+ }
+
if (_tempIgnoredPaths.ContainsKey(e.FullPath))
{
Logger.Info("Watcher requested to ignore change to " + e.FullPath);