summaryrefslogtreecommitdiff
path: root/container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java
diff options
context:
space:
mode:
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.java22
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";
+ }
}
}