diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2013-01-05 22:39:18 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2013-01-05 22:39:18 +0100 |
commit | 12606726c11efbbf7213b05284c94e28a1ae4b8e (patch) | |
tree | 415a400218f3bbaac4f13a43461446f64f74028c /src/main/java/io/trygvis/esper/testing/core/db | |
parent | abf160e56be50781b0f78f3f938513ab6102809b (diff) | |
download | esper-testing-12606726c11efbbf7213b05284c94e28a1ae4b8e.tar.gz esper-testing-12606726c11efbbf7213b05284c94e28a1ae4b8e.tar.bz2 esper-testing-12606726c11efbbf7213b05284c94e28a1ae4b8e.tar.xz esper-testing-12606726c11efbbf7213b05284c94e28a1ae4b8e.zip |
o Including state in both badge and badge progress.
o Removing count from badge, inserting one badge per badge received.
Diffstat (limited to 'src/main/java/io/trygvis/esper/testing/core/db')
-rwxr-xr-x | src/main/java/io/trygvis/esper/testing/core/db/BuildDao.java | 4 | ||||
-rwxr-xr-x | src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java | 44 | ||||
-rw-r--r-- | src/main/java/io/trygvis/esper/testing/core/db/PersonalBadgeDto.java (renamed from src/main/java/io/trygvis/esper/testing/core/db/PersonBadgeDto.java) | 8 |
3 files changed, 23 insertions, 33 deletions
diff --git a/src/main/java/io/trygvis/esper/testing/core/db/BuildDao.java b/src/main/java/io/trygvis/esper/testing/core/db/BuildDao.java index cd103d6..32afe42 100755 --- a/src/main/java/io/trygvis/esper/testing/core/db/BuildDao.java +++ b/src/main/java/io/trygvis/esper/testing/core/db/BuildDao.java @@ -57,7 +57,7 @@ public class BuildDao { } } - public List<UUID> selectBuildParticipantByBuild(UUID build) throws SQLException { + public List<Uuid> selectBuildParticipantByBuild(UUID build) throws SQLException { try (PreparedStatement s = c.prepareStatement("SELECT person FROM build_participant WHERE build=?")) { int i = 1; s.setString(i, build.toString()); @@ -86,7 +86,7 @@ public class BuildDao { int i = 1; s.setString(i++, ref.type); s.setString(i, ref.uuid.toString()); - return fromRs(s.executeQuery()).map(getUuid); + return fromRs(s.executeQuery()).map(getUUID); } } diff --git a/src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java b/src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java index 0f80219..7a682dc 100755 --- a/src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java +++ b/src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java @@ -2,7 +2,7 @@ package io.trygvis.esper.testing.core.db; import fj.data.*; import io.trygvis.esper.testing.*; -import io.trygvis.esper.testing.core.db.PersonBadgeDto.*; +import io.trygvis.esper.testing.core.db.PersonalBadgeDto.*; import io.trygvis.esper.testing.util.sql.*; import org.joda.time.*; @@ -30,18 +30,18 @@ public class PersonDao { } }; - public static final String PERSON_BADGE = "uuid, created_date, person, name, level, count"; + public static final String PERSON_BADGE = "uuid, created_date, person, name, level, state"; - public static final SqlF<ResultSet, PersonBadgeDto> personBadge = new SqlF<ResultSet, PersonBadgeDto>() { - public PersonBadgeDto apply(ResultSet rs) throws SQLException { + public static final SqlF<ResultSet, PersonalBadgeDto> personBadge = new SqlF<ResultSet, PersonalBadgeDto>() { + public PersonalBadgeDto apply(ResultSet rs) throws SQLException { int i = 1; - return new PersonBadgeDto( + return new PersonalBadgeDto( UUID.fromString(rs.getString(i++)), new DateTime(rs.getTimestamp(i++).getTime()), Uuid.fromString(rs.getString(i++)), BadgeType.valueOf(rs.getString(i++)), rs.getInt(i++), - rs.getInt(i)); + rs.getString(i)); } }; @@ -146,41 +146,31 @@ public class PersonDao { // Badge // ----------------------------------------------------------------------- - public UUID insertBadge(UUID person, BadgeType type, int level, int count) throws SQLException { + public UUID insertBadge(DateTime createdDate, Uuid person, BadgeType type, int level, String state) throws SQLException { try (PreparedStatement s = c.prepareStatement("INSERT INTO person_badge(" + PERSON_BADGE + ") VALUES(?, ?, ?, ?, ?, ?)")) { UUID uuid = UUID.randomUUID(); int i = 1; s.setString(i++, uuid.toString()); - s.setTimestamp(i++, new Timestamp(currentTimeMillis())); - s.setString(i++, person.toString()); + s.setTimestamp(i++, new Timestamp(createdDate.getMillis())); + s.setString(i++, person.toUuidString()); s.setString(i++, type.toString()); s.setInt(i++, level); - s.setInt(i, count); + s.setString(i, state); s.executeUpdate(); return uuid; } } - public void incrementBadgeCount(UUID person, BadgeType type, int level) throws SQLException { - try (PreparedStatement s = c.prepareStatement("UPDATE person_badge SET count=count+1 WHERE person=? AND name=? AND level=?")) { - int i = 1; - s.setString(i++, person.toString()); - s.setString(i++, type.toString()); - s.setInt(i, level); - s.executeUpdate(); - } - } - - public List<PersonBadgeDto> selectBadges(Uuid person) throws SQLException { - try (PreparedStatement s = c.prepareStatement("SELECT " + PERSON_BADGE + " FROM person_badge WHERE person=? ORDER BY name, level DESC")) { + public List<PersonalBadgeDto> selectBadges(Uuid person) throws SQLException { + try (PreparedStatement s = c.prepareStatement("SELECT " + PERSON_BADGE + " FROM person_badge WHERE person=? ORDER BY created_date DESC")) { int i = 1; s.setString(i, person.toUuidString()); return toList(s, personBadge); } } - public SqlOption<PersonBadgeDto> selectBadge(UUID person, BadgeType type, int level) throws SQLException { - try (PreparedStatement s = c.prepareStatement("SELECT " + PERSON_BADGE + " FROM person_badge WHERE person=? AND name=? AND level=?")) { + public SqlOption<PersonalBadgeDto> selectBadge(UUID person, BadgeType type, int level) throws SQLException { + try (PreparedStatement s = c.prepareStatement("SELECT " + PERSON_BADGE + " FROM person_badge WHERE person=? AND name=? AND level=? LIMIT 1")) { int i = 1; s.setString(i++, person.toString()); s.setString(i++, type.toString()); @@ -189,7 +179,7 @@ public class PersonDao { } } - public List<PersonBadgeDto> selectBadges(Option<Uuid> person, Option<BadgeType> type, Option<Integer> level, PageRequest page) throws SQLException { + public List<PersonalBadgeDto> selectBadges(Option<Uuid> person, Option<BadgeType> type, Option<Integer> level, PageRequest page) throws SQLException { String sql = "SELECT " + PERSON_BADGE + " FROM person_badge WHERE 1=1"; if (person.isSome()) { @@ -227,10 +217,10 @@ public class PersonDao { // Badge Progress // ----------------------------------------------------------------------- - public SqlOption<PersonBadgeProgressDto> selectBadgeProgress(UUID person, BadgeType type) throws SQLException { + public SqlOption<PersonBadgeProgressDto> selectBadgeProgress(Uuid person, BadgeType type) throws SQLException { try (PreparedStatement s = c.prepareStatement("SELECT " + PERSON_BADGE_PROGRESS + " FROM person_badge_progress WHERE person=? AND badge=?")) { int i = 1; - s.setString(i++, person.toString()); + s.setString(i++, person.toUuidString()); s.setString(i, type.toString()); return fromRs(s.executeQuery()).map(personBadgeProgress); } diff --git a/src/main/java/io/trygvis/esper/testing/core/db/PersonBadgeDto.java b/src/main/java/io/trygvis/esper/testing/core/db/PersonalBadgeDto.java index 0f34347..cc2a739 100644 --- a/src/main/java/io/trygvis/esper/testing/core/db/PersonBadgeDto.java +++ b/src/main/java/io/trygvis/esper/testing/core/db/PersonalBadgeDto.java @@ -5,7 +5,7 @@ import org.joda.time.*; import java.util.*; -public class PersonBadgeDto extends AbstractEntity { +public class PersonalBadgeDto extends AbstractEntity { public enum BadgeType { UNBREAKABLE } @@ -13,13 +13,13 @@ public class PersonBadgeDto extends AbstractEntity { public final Uuid person; public final BadgeType type; public final int level; - public final int count; + public final String state; - public PersonBadgeDto(UUID uuid, DateTime createdDate, Uuid person, BadgeType type, int level, int count) { + public PersonalBadgeDto(UUID uuid, DateTime createdDate, Uuid person, BadgeType type, int level, String state) { super(uuid, createdDate); this.person = person; this.type = type; this.level = level; - this.count = count; + this.state = state; } } |