Skip to content

Commit 9f2a265

Browse files
committed
Add the EmbeddableTypeImplementation annotation
1 parent 020a814 commit 9f2a265

File tree

8 files changed

+22
-0
lines changed

8 files changed

+22
-0
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package org.seasar.doma;
2+
3+
import java.lang.annotation.ElementType;
4+
import java.lang.annotation.Retention;
5+
import java.lang.annotation.RetentionPolicy;
6+
import java.lang.annotation.Target;
7+
8+
@Target(ElementType.TYPE)
9+
@Retention(RetentionPolicy.RUNTIME)
10+
public @interface EmbeddableTypeImplementation {}

doma-processor/src/main/java/org/seasar/doma/internal/apt/generator/EmbeddableTypeGenerator.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import java.util.Iterator;
77
import java.util.List;
88
import java.util.Map;
9+
import org.seasar.doma.EmbeddableTypeImplementation;
910
import org.seasar.doma.internal.ClassName;
1011
import org.seasar.doma.internal.apt.Context;
1112
import org.seasar.doma.internal.apt.generator.ScalarMetaFactory.ScalarMeta;
@@ -44,6 +45,7 @@ private void printPackage() {
4445
private void printClass() {
4546
iprint("/** */%n");
4647
printGenerated();
48+
printEmbeddableTypeImplementation();
4749
iprint(
4850
"public final class %1$s implements %2$s<%3$s> {%n",
4951
/* 1 */ simpleName, /* 2 */ EmbeddableType.class, /* 3 */ embeddableMeta.getType());
@@ -57,6 +59,10 @@ private void printClass() {
5759
iprint("}%n");
5860
}
5961

62+
private void printEmbeddableTypeImplementation() {
63+
iprint("@%1$s%n", EmbeddableTypeImplementation.class);
64+
}
65+
6066
private void printFields() {
6167
printSingletonField();
6268
}

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_AbstractEmbeddable.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _AbstractEmbeddable implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.AbstractEmbeddable> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_Address.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _Address implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.Address> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_Derived.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _Derived implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.Derived> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_LombokAllArgsConstructor.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _LombokAllArgsConstructor implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.LombokAllArgsConstructor> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_LombokValue.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _LombokValue implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.LombokValue> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/embeddable/EmbeddableProcessorTest_NotTopLevel.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.seasar.doma.internal.apt.processor.embeddable;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.EmbeddableTypeImplementation
56
public final class _NotTopLevel__Address implements org.seasar.doma.jdbc.entity.EmbeddableType<org.seasar.doma.internal.apt.processor.embeddable.NotTopLevel.Address> {
67

78
static {

0 commit comments

Comments
 (0)