diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2011-10-09 12:15:53 +0200 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2011-10-09 12:15:55 +0200 |
| commit | 4fd81318fb41f4e53e5c56aaf84d531d8b385c69 (patch) | |
| tree | 9a34291febb6c316c8b9df050561dbe48c8d81e5 /main/src | |
| parent | 30532d0e7e25ce269c176e13a7a081f6991274f1 (diff) | |
| download | cgeo-4fd81318fb41f4e53e5c56aaf84d531d8b385c69.zip cgeo-4fd81318fb41f4e53e5c56aaf84d531d8b385c69.tar.gz cgeo-4fd81318fb41f4e53e5c56aaf84d531d8b385c69.tar.bz2 | |
Simplify filterSearchResults (was processSearchResults)
Diffstat (limited to 'main/src')
| -rw-r--r-- | main/src/cgeo/geocaching/cgBase.java | 17 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/connector/GCConnector.java | 2 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/connector/opencaching/ApiOpenCachingConnector.java | 2 |
3 files changed, 11 insertions, 10 deletions
diff --git a/main/src/cgeo/geocaching/cgBase.java b/main/src/cgeo/geocaching/cgBase.java index 86ebfef..f4e50ce 100644 --- a/main/src/cgeo/geocaching/cgBase.java +++ b/main/src/cgeo/geocaching/cgBase.java @@ -2290,7 +2290,7 @@ public class cgBase { return null; } - List<cgCache> cacheList = processSearchResults(search, caches, Settings.isExcludeDisabledCaches(), false, null); + List<cgCache> cacheList = filterSearchResults(search, caches, Settings.isExcludeDisabledCaches(), false, null); app.addSearch(search, cacheList, true, reason); @@ -2364,7 +2364,7 @@ public class cgBase { return null; } - List<cgCache> cacheList = processSearchResults(search, caches, Settings.isExcludeDisabledCaches(), Settings.isExcludeMyCaches(), Settings.getCacheType()); + List<cgCache> cacheList = filterSearchResults(search, caches, Settings.isExcludeDisabledCaches(), Settings.isExcludeMyCaches(), Settings.getCacheType()); app.addSearch(search, cacheList, true, reason); @@ -2447,7 +2447,7 @@ public class cgBase { return users; } - public static List<cgCache> processSearchResults(final cgSearch search, final cgCacheWrap caches, final boolean excludeDisabled, final boolean excludeMine, final String cacheType) { + public static List<cgCache> filterSearchResults(final cgSearch search, final cgCacheWrap caches, final boolean excludeDisabled, final boolean excludeMine, final String cacheType) { List<cgCache> cacheList = new ArrayList<cgCache>(); if (caches != null) { if (caches.error != null) { @@ -2460,11 +2460,12 @@ public class cgBase { search.totalCnt = caches.totalCnt; if (CollectionUtils.isNotEmpty(caches.cacheList)) { - for (cgCache cache : caches.cacheList) { - if ((!excludeDisabled || (excludeDisabled && cache.disabled == false)) - && (!excludeMine || (excludeMine && cache.own == false)) - && (!excludeMine || (excludeMine && cache.found == false)) - && (cacheType == null || (cacheType.equals(cache.type)))) { + for (final cgCache cache : caches.cacheList) { + // Is there any reason to exclude the cache from the list? + final boolean excludeCache = (excludeDisabled && cache.disabled) || + (excludeMine && (cache.own || cache.found)) || + (cacheType != null && !cacheType.equals(cache.type)); + if (!excludeCache) { search.addGeocode(cache.geocode); cacheList.add(cache); } diff --git a/main/src/cgeo/geocaching/connector/GCConnector.java b/main/src/cgeo/geocaching/connector/GCConnector.java index d0e2d61..f65b944 100644 --- a/main/src/cgeo/geocaching/connector/GCConnector.java +++ b/main/src/cgeo/geocaching/connector/GCConnector.java @@ -124,7 +124,7 @@ public class GCConnector extends AbstractConnector implements IConnector { return null; } - List<cgCache> cacheList = cgBase.processSearchResults(search, caches, false, false, null); + List<cgCache> cacheList = cgBase.filterSearchResults(search, caches, false, false, null); app.addSearch(search, cacheList, true, reason); return search.getCurrentId(); diff --git a/main/src/cgeo/geocaching/connector/opencaching/ApiOpenCachingConnector.java b/main/src/cgeo/geocaching/connector/opencaching/ApiOpenCachingConnector.java index 013fc18..6334973 100644 --- a/main/src/cgeo/geocaching/connector/opencaching/ApiOpenCachingConnector.java +++ b/main/src/cgeo/geocaching/connector/opencaching/ApiOpenCachingConnector.java @@ -47,7 +47,7 @@ public class ApiOpenCachingConnector extends OpenCachingConnector implements ICo final cgCacheWrap caches = new cgCacheWrap(); caches.cacheList.add(cache); - final List<cgCache> cacheList = cgBase.processSearchResults(search, caches, false, false, null); + final List<cgCache> cacheList = cgBase.filterSearchResults(search, caches, false, false, null); app.addSearch(search, cacheList, true, reason); return search.getCurrentId(); |
