From e1cf8889628d2d31cf7067b8c002f229fc22007d Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sat, 3 Aug 2013 18:00:10 +0200 Subject: wip --- .../java/io/trygvis/persistence/TypeHandler.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java') 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"; + } } } -- cgit v1.2.3