diff --git a/src/java/com/threerings/stats/server/persist/MaxStatCodeRecord.java b/src/java/com/threerings/stats/server/persist/MaxStatCodeRecord.java new file mode 100644 index 00000000..4111814c --- /dev/null +++ b/src/java/com/threerings/stats/server/persist/MaxStatCodeRecord.java @@ -0,0 +1,26 @@ +// +// $Id$ + +package com.threerings.stats.server.persist; + +import com.samskivert.jdbc.depot.PersistentRecord; +import com.samskivert.jdbc.depot.annotation.Column; +import com.samskivert.jdbc.depot.annotation.Computed; +import com.samskivert.jdbc.depot.annotation.Entity; +import com.samskivert.jdbc.depot.expression.ColumnExp; + +@Computed @Entity +public class MaxStatCodeRecord extends PersistentRecord { + + // AUTO-GENERATED: FIELDS START + /** The column identifier for the {@link #maxCode} field. */ + public static final String MAX_CODE = "maxCode"; + + /** The qualified column identifier for the {@link #maxCode} field. */ + public static final ColumnExp MAX_CODE_C = + new ColumnExp(MaxStatCodeRecord.class, MAX_CODE); + // AUTO-GENERATED: FIELDS END + + @Column + public int maxCode; +} diff --git a/src/java/com/threerings/stats/server/persist/StatRepository.java b/src/java/com/threerings/stats/server/persist/StatRepository.java index 48c7963e..82296770 100644 --- a/src/java/com/threerings/stats/server/persist/StatRepository.java +++ b/src/java/com/threerings/stats/server/persist/StatRepository.java @@ -21,8 +21,6 @@ import com.samskivert.jdbc.depot.DepotRepository; import com.samskivert.jdbc.depot.PersistenceContext.CacheEvictionFilter; import com.samskivert.jdbc.depot.PersistenceContext; import com.samskivert.jdbc.depot.PersistentRecord; -import com.samskivert.jdbc.depot.annotation.Computed; -import com.samskivert.jdbc.depot.annotation.Entity; import com.samskivert.jdbc.depot.clause.FieldOverride; import com.samskivert.jdbc.depot.clause.FromOverride; import com.samskivert.jdbc.depot.clause.QueryClause; @@ -229,7 +227,8 @@ public class StatRepository extends DepotRepository MaxStatCodeRecord maxRecord = load( MaxStatCodeRecord.class, new FromOverride(StringCodeRecord.class), - new FieldOverride("maxCode", new FunctionExp("MAX", StringCodeRecord.CODE_C)), + new FieldOverride(MaxStatCodeRecord.MAX_CODE, + new FunctionExp("MAX", StringCodeRecord.CODE_C)), new Where(StringCodeRecord.STAT_CODE_C, type.code())); int code = maxRecord != null ? maxRecord.maxCode + 1 : 1; @@ -311,11 +310,6 @@ public class StatRepository extends DepotRepository classes.add(StringCodeRecord.class); } - @Computed @Entity - protected static class MaxStatCodeRecord extends PersistentRecord { - int maxCode; - }; - protected HashMap> _stringToCode = new HashMap>(); protected HashMap> _codeToString = diff --git a/src/java/com/threerings/stats/server/persist/StringCodeRecord.java b/src/java/com/threerings/stats/server/persist/StringCodeRecord.java index 576bf2fa..a9a957eb 100644 --- a/src/java/com/threerings/stats/server/persist/StringCodeRecord.java +++ b/src/java/com/threerings/stats/server/persist/StringCodeRecord.java @@ -97,12 +97,12 @@ public class StringCodeRecord extends PersistentRecord * Create and return a primary {@link Key} to identify a {@link #StringCodeRecord} * with the supplied key values. */ - public static Key getKey (int statCode, String value, int code) + public static Key getKey (int statCode, String value) { return new Key( StringCodeRecord.class, - new String[] { STAT_CODE, VALUE, CODE }, - new Comparable[] { statCode, value, code }); + new String[] { STAT_CODE, VALUE }, + new Comparable[] { statCode, value }); } // AUTO-GENERATED: METHODS END }