diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2012-12-26 13:30:42 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2012-12-26 13:30:42 +0100 |
commit | 348ec4e14aeaf4e98fcab96f0ae7242d178db69b (patch) | |
tree | 642b16e2fa6ffcfaf1429571d2f4771acc620e2e /src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java | |
parent | 97b1b1eeacd72845cc7065c86d68444881370275 (diff) | |
download | esper-testing-348ec4e14aeaf4e98fcab96f0ae7242d178db69b.tar.gz esper-testing-348ec4e14aeaf4e98fcab96f0ae7242d178db69b.tar.bz2 esper-testing-348ec4e14aeaf4e98fcab96f0ae7242d178db69b.tar.xz esper-testing-348ec4e14aeaf4e98fcab96f0ae7242d178db69b.zip |
o Starting on a better front page.
Diffstat (limited to 'src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java')
-rw-r--r-- | src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java | 38 |
1 files changed, 34 insertions, 4 deletions
diff --git a/src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java b/src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java index 871be25..dc9a5bc 100644 --- a/src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java +++ b/src/main/java/io/trygvis/esper/testing/core/badge/UnbreakableBadgeProgress.java @@ -1,25 +1,27 @@ package io.trygvis.esper.testing.core.badge; +import static fj.P.*; import fj.*; import fj.data.*; +import static fj.data.Option.*; import io.trygvis.esper.testing.core.db.*; +import io.trygvis.esper.testing.core.db.PersonBadgeDto.*; import java.util.*; -import static fj.P.p; -import static fj.data.Option.some; - -class UnbreakableBadgeProgress { +public class UnbreakableBadgeProgress extends BadgeProgress { public final UUID person; public final int count; private UnbreakableBadgeProgress(UUID person, int count) { + super(BadgeType.UNBREAKABLE); this.person = person; this.count = count; } @SuppressWarnings("UnusedDeclaration") private UnbreakableBadgeProgress() { + super(BadgeType.UNBREAKABLE); person = null; count = -1; } @@ -50,6 +52,34 @@ class UnbreakableBadgeProgress { return p(new UnbreakableBadgeProgress(person, count), Option.<UnbreakableBadge>none()); } + public int progression() { + return count; + } + + public int goal() { + if (count > UnbreakableBadge.LEVEL_2_COUNT) { + return UnbreakableBadge.LEVEL_3_COUNT; + } + + if (count > UnbreakableBadge.LEVEL_1_COUNT) { + return UnbreakableBadge.LEVEL_2_COUNT; + } + + return UnbreakableBadge.LEVEL_1_COUNT; + } + + public int progressingAgainstLevel() { + if (count > UnbreakableBadge.LEVEL_2_COUNT) { + return 3; + } + + if (count > UnbreakableBadge.LEVEL_1_COUNT) { + return 2; + } + + return 1; + } + @Override public String toString() { return "UnbreakableBadgeProgress{person=" + person + ", count=" + count + '}'; |