diff options
Diffstat (limited to 'container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java')
-rw-r--r-- | container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java b/container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java index 1d7d424..ff2ad0a 100644 --- a/container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java +++ b/container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java @@ -3,11 +3,18 @@ package io.trygvis.persistence; public interface TypeHandler { String resultSetSetter(int i, String o, FieldMirror field); + String sqlType(FieldMirror field); + public static class IntTypeHandler implements TypeHandler { @Override public String resultSetSetter(int i, String o, FieldMirror field) { return "setInt(" + i + ", " + o + "." + field.javaName + ")"; } + + @Override + public String sqlType(FieldMirror field) { + return "INTEGER"; + } } public static class LongTypeHandler implements TypeHandler { @@ -15,6 +22,11 @@ public interface TypeHandler { public String resultSetSetter(int i, String o, FieldMirror field) { return "setLong(" + i + ", " + o + "." + field.javaName + ")"; } + + @Override + public String sqlType(FieldMirror field) { + return "BIGINT"; + } } public static class StringTypeHandler implements TypeHandler { @@ -22,6 +34,11 @@ public interface TypeHandler { public String resultSetSetter(int i, String o, FieldMirror field) { return "setString(" + i + ", " + o + "." + field.javaName + ")"; } + + @Override + public String sqlType(FieldMirror field) { + return "VARCHAR(1000)"; + } } public static class DateTypeHandler implements TypeHandler { @@ -29,5 +46,10 @@ public interface TypeHandler { public String resultSetSetter(int i, String o, FieldMirror field) { return "setTimestamp(" + i + ", new java.sql.Timestamp(" + o + "." + field.javaName + ".getTime()))"; } + + @Override + public String sqlType(FieldMirror field) { + return "TIMESTAMP"; + } } } |