aboutsummaryrefslogtreecommitdiffstats
path: root/src/cgeo/geocaching/sorting/PopularityComparator.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/cgeo/geocaching/sorting/PopularityComparator.java')
-rw-r--r--src/cgeo/geocaching/sorting/PopularityComparator.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/cgeo/geocaching/sorting/PopularityComparator.java b/src/cgeo/geocaching/sorting/PopularityComparator.java
new file mode 100644
index 0000000..cc1a6ea
--- /dev/null
+++ b/src/cgeo/geocaching/sorting/PopularityComparator.java
@@ -0,0 +1,25 @@
+package cgeo.geocaching.sorting;
+
+import cgeo.geocaching.cgCache;
+
+/**
+ * sorts caches by popularity (favorite count)
+ *
+ */
+public class PopularityComparator extends AbstractCacheComparator {
+
+ @Override
+ protected boolean canCompare(cgCache cache1, cgCache cache2) {
+ return cache1.favouriteCnt != null && cache2.favouriteCnt != null;
+ }
+
+ @Override
+ protected int compareCaches(cgCache cache1, cgCache cache2) {
+ if (cache1.favouriteCnt < cache2.favouriteCnt) {
+ return 1;
+ } else if (cache2.favouriteCnt < cache1.favouriteCnt) {
+ return -1;
+ }
+ return 0;
+ }
+}