From 07f44e13c920c71ed7b17689ae1715d4b3179e6f Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Sat, 28 Jul 2012 10:54:41 +0000 Subject: [PATCH] * special handling for disk folders --- .../filebot/media/ReleaseInfo.properties | 10 +++---- .../filebot/ui/rename/MovieHashMatcher.java | 27 ++++++++++++++----- 2 files changed, 25 insertions(+), 12 deletions(-) diff --git a/source/net/sourceforge/filebot/media/ReleaseInfo.properties b/source/net/sourceforge/filebot/media/ReleaseInfo.properties index 6bf07ec7..723ac9d3 100644 --- a/source/net/sourceforge/filebot/media/ReleaseInfo.properties +++ b/source/net/sourceforge/filebot/media/ReleaseInfo.properties @@ -5,19 +5,19 @@ pattern.video.source: CAMRip|CAM|PDVD|TS|TELESYNC|PDVD|PPV|PPVRip|Screener|SCR|S pattern.video.format: DivX|Xvid|AVC|x264|h264|3ivx|mpeg|mpeg4|mp3|aac|ac3|2ch|6ch|WS|HR|720p|1080p|NTSC # known release group names -url.release-groups: http://filebot.sourceforge.net/data/release-groups.txt +url.release-groups: file:///d:/Development/eclipse/filebot/website/data/release-groups.txt # blacklisted terms that will be ignored -url.query-blacklist: http://filebot.sourceforge.net/data/query-blacklist.txt +url.query-blacklist: file:///d:/Development/eclipse/filebot/website/data/query-blacklist.txt # clutter files that will be ignored -url.exclude-blacklist: http://filebot.sourceforge.net/data/exclude-blacklist.txt +url.exclude-blacklist: file:///d:/Development/eclipse/filebot/website/data/exclude-blacklist.txt # list of all movies (id, name, year) -url.movie-list: http://filebot.sourceforge.net/data/movies.txt.gz +url.movie-list: file:///d:/Development/eclipse/filebot/website/data/movies.txt.gz # list of tv show and anime names -url.series-list: http://filebot.sourceforge.net/data/series.list.gz +url.series-list: file:///d:/Development/eclipse/filebot/website/data/series.list.gz # disk folder matcher pattern.diskfolder.entry: ^BDMV$|^HVDVD_TS$|^VIDEO_TS$|^AUDIO_TS$|^VCD$|^movie.nfo$ diff --git a/source/net/sourceforge/filebot/ui/rename/MovieHashMatcher.java b/source/net/sourceforge/filebot/ui/rename/MovieHashMatcher.java index 49243a6d..c2e9474a 100644 --- a/source/net/sourceforge/filebot/ui/rename/MovieHashMatcher.java +++ b/source/net/sourceforge/filebot/ui/rename/MovieHashMatcher.java @@ -114,6 +114,10 @@ class MovieHashMatcher implements AutoCompleteMatcher { for (File dir : mapByFolder(movieFiles).keySet()) { addAll(effectiveNfoFileSet, dir.listFiles(NFO_FILES)); } + for (File dir : filter(fileset, FOLDERS)) { + addAll(effectiveNfoFileSet, dir.listFiles(NFO_FILES)); + } + for (File nfo : effectiveNfoFileSet) { try { Movie movie = grepMovie(nfo, service, locale); @@ -127,13 +131,22 @@ class MovieHashMatcher implements AutoCompleteMatcher { movieByFile.put(nfo, movie); } - // match movie info to movie files that match the nfo file name - SortedSet siblingMovieFiles = new TreeSet(filter(movieFiles, new ParentFilter(nfo.getParentFile()))); - String baseName = stripReleaseInfo(getName(nfo)).toLowerCase(); - - for (File movieFile : siblingMovieFiles) { - if (stripReleaseInfo(getName(movieFile)).toLowerCase().startsWith(baseName)) { - movieByFile.put(movieFile, movie); + if (isDiskFolder(nfo.getParentFile())) { + // special handling for disk folders + for (File folder : fileset) { + if (nfo.getParentFile().equals(folder)) { + movieByFile.put(folder, movie); + } + } + } else { + // match movie info to movie files that match the nfo file name + SortedSet siblingMovieFiles = new TreeSet(filter(movieFiles, new ParentFilter(nfo.getParentFile()))); + String baseName = stripReleaseInfo(getName(nfo)).toLowerCase(); + + for (File movieFile : siblingMovieFiles) { + if (stripReleaseInfo(getName(movieFile)).toLowerCase().startsWith(baseName)) { + movieByFile.put(movieFile, movie); + } } } } catch (NoSuchElementException e) {