diff options
Diffstat (limited to 'container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java')
-rw-r--r-- | container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java | 62 |
1 files changed, 22 insertions, 40 deletions
diff --git a/container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java b/container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java index f92cc2c..07fa769 100644 --- a/container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java +++ b/container-compiler-plugin/src/main/java/io/trygvis/persistence/FieldMirror.java @@ -2,14 +2,12 @@ package io.trygvis.persistence; import io.trygvis.container.compiler.model.TypeRef; -import static io.trygvis.persistence.FieldMirror.FieldType.PRIMITIVE; -import static io.trygvis.persistence.FieldMirror.FieldType.REFERENCE; - /** * TODO: a single field might have to be mapped to multiple sql columns. */ -public abstract class FieldMirror { +public class FieldMirror { public final FieldType fieldType; + public final AccessorType accessorType; public final TypeRef type; public final String javaName; public final String sqlName; @@ -22,8 +20,15 @@ public abstract class FieldMirror { REFERENCE, } - protected FieldMirror(FieldType fieldType, TypeRef type, String javaName, String sqlName, boolean id, boolean notNull, boolean unique) { + public enum AccessorType { + FIELD, + METHOD, + } + + public FieldMirror(FieldType fieldType, AccessorType accessorType, TypeRef type, String javaName, String sqlName, + boolean id, boolean notNull, boolean unique) { this.fieldType = fieldType; + this.accessorType = accessorType; this.type = type; this.javaName = javaName; this.sqlName = sqlName; @@ -32,40 +37,17 @@ public abstract class FieldMirror { this.unique = unique; } - public static class PrimitiveFieldMirror extends FieldMirror { - public PrimitiveFieldMirror(TypeRef typeRef, String javaName, String sqlName, boolean id, boolean notNull, boolean unique) { - super(PRIMITIVE, typeRef, javaName, sqlName, id, notNull, unique); - } - - @Override - public String toString() { - return "PrimitiveFieldMirror{" + - "type='" + type + '\'' + - ", javaName='" + javaName + '\'' + - ", sqlName='" + sqlName + '\'' + - ", notNull=" + notNull + - ", unique=" + unique + - '}'; - } - } - - public static class ReferenceFieldMirror extends FieldMirror { - public ReferenceFieldMirror(TypeRef typeRef, String javaName, String sqlName, boolean notNull, boolean unique) { - super(REFERENCE, typeRef, javaName, sqlName, false, notNull, unique); - } - - @Override - public String toString() { - return "ReferenceFieldMirror{" + - "type='" + type + '\'' + - ", javaName='" + javaName + '\'' + - ", sqlName='" + sqlName + '\'' + - ", notNull=" + notNull + - ", unique=" + unique + - '}'; - } - } - @Override - public abstract String toString(); + public String toString() { + return "FieldMirror{" + + "fieldType=" + fieldType + + ", accessorType=" + accessorType + + ", type=" + type + + ", javaName='" + javaName + '\'' + + ", sqlName='" + sqlName + '\'' + + ", id=" + id + + ", notNull=" + notNull + + ", unique=" + unique + + '}'; + } } |