aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2013-01-05 22:39:18 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2013-01-05 22:39:18 +0100
commit12606726c11efbbf7213b05284c94e28a1ae4b8e (patch)
tree415a400218f3bbaac4f13a43461446f64f74028c /src/main/java/io/trygvis/esper/testing/core/db/PersonDao.java
parentabf160e56be50781b0f78f3f938513ab6102809b (diff)
downloadesper-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/PersonDao.java')
-rwxr-xr-xsrc/main/java/io/trygvis/esper/testing/core/db/PersonDao.java44
1 files changed, 17 insertions, 27 deletions
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);
}