summaryrefslogtreecommitdiff
path: root/container-compiler-plugin/src/main/java/io/trygvis/persistence
diff options
context:
space:
mode:
Diffstat (limited to 'container-compiler-plugin/src/main/java/io/trygvis/persistence')
-rw-r--r--container-compiler-plugin/src/main/java/io/trygvis/persistence/EntityMirror.java2
-rw-r--r--container-compiler-plugin/src/main/java/io/trygvis/persistence/GeneratorSupport.java8
-rw-r--r--container-compiler-plugin/src/main/java/io/trygvis/persistence/TypeHandler.java7
3 files changed, 13 insertions, 4 deletions
diff --git a/container-compiler-plugin/src/main/java/io/trygvis/persistence/EntityMirror.java b/container-compiler-plugin/src/main/java/io/trygvis/persistence/EntityMirror.java
index 7b45145..41ae1d4 100644
--- a/container-compiler-plugin/src/main/java/io/trygvis/persistence/EntityMirror.java
+++ b/container-compiler-plugin/src/main/java/io/trygvis/persistence/EntityMirror.java
@@ -62,7 +62,7 @@ public class EntityMirror {
body.add(" stmt.executeUpdate();");
body.add("}");
- g.addMethod(body, TypeRef.VOID, "insertInto", con, object).
+ g.addStaticMethod(body, TypeRef.VOID, "insertInto", con, object).
exception(g.addImport(SQLException.class));
}
}
diff --git a/container-compiler-plugin/src/main/java/io/trygvis/persistence/GeneratorSupport.java b/container-compiler-plugin/src/main/java/io/trygvis/persistence/GeneratorSupport.java
index d3293c3..379f6f6 100644
--- a/container-compiler-plugin/src/main/java/io/trygvis/persistence/GeneratorSupport.java
+++ b/container-compiler-plugin/src/main/java/io/trygvis/persistence/GeneratorSupport.java
@@ -2,6 +2,7 @@ package io.trygvis.persistence;
import javax.lang.model.element.Element;
import javax.lang.model.type.TypeMirror;
+import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@@ -11,9 +12,10 @@ public class GeneratorSupport {
private final Map<String, TypeHandler> typeHandlers = new HashMap<>();
{
- typeHandlers.put("java.lang.Integer", new TypeHandler.IntTypeHandler());
- typeHandlers.put("java.lang.Long", new TypeHandler.LongTypeHandler());
- typeHandlers.put("java.util.Date", new TypeHandler.DateTypeHandler());
+ typeHandlers.put(Integer.class.getName(), new TypeHandler.IntTypeHandler());
+ typeHandlers.put(Long.class.getName(), new TypeHandler.LongTypeHandler());
+ typeHandlers.put(String.class.getName(), new TypeHandler.StringTypeHandler());
+ typeHandlers.put(Date.class.getName(), new TypeHandler.DateTypeHandler());
primitiveTypeHandlers.putAll(typeHandlers);
}
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 252f4b4..1d7d424 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
@@ -17,6 +17,13 @@ public interface TypeHandler {
}
}
+ public static class StringTypeHandler implements TypeHandler {
+ @Override
+ public String resultSetSetter(int i, String o, FieldMirror field) {
+ return "setString(" + i + ", " + o + "." + field.javaName + ")";
+ }
+ }
+
public static class DateTypeHandler implements TypeHandler {
@Override
public String resultSetSetter(int i, String o, FieldMirror field) {