Skip to content

Commit 773a26d

Browse files
committed
Add the DomainTypeImplementation annotation
1 parent 9f2a265 commit 773a26d

File tree

32 files changed

+51
-0
lines changed

32 files changed

+51
-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 DomainTypeImplementation {}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static org.seasar.doma.internal.util.AssertionUtil.assertNotNull;
44

5+
import org.seasar.doma.DomainTypeImplementation;
56
import org.seasar.doma.internal.ClassName;
67
import org.seasar.doma.internal.apt.Context;
78
import org.seasar.doma.internal.apt.meta.domain.DomainMeta;
@@ -43,6 +44,7 @@ private void printClass() {
4344
iprint("/** */%n");
4445
}
4546
printGenerated();
47+
printDomainTypeImplementation();
4648
if (domainMeta.isParameterized()) {
4749
iprint(
4850
"public final class %1$s<%5$s> extends %2$s<%3$s, %4$s> {%n",
@@ -70,6 +72,10 @@ private void printClass() {
7072
iprint("}%n");
7173
}
7274

75+
private void printDomainTypeImplementation() {
76+
iprint("@%1$s%n", DomainTypeImplementation.class);
77+
}
78+
7379
private void printFields() {
7480
if (domainMeta.isParameterized()) {
7581
iprint("@SuppressWarnings(\"rawtypes\")%n");

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static org.seasar.doma.internal.util.AssertionUtil.assertNotNull;
44

5+
import org.seasar.doma.DomainTypeImplementation;
56
import org.seasar.doma.internal.ClassName;
67
import org.seasar.doma.internal.apt.Context;
78
import org.seasar.doma.internal.apt.cttype.BasicCtType;
@@ -43,6 +44,7 @@ private void printClass() {
4344
iprint("/** */%n");
4445
}
4546
printGenerated();
47+
printDomainTypeImplementation();
4648
if (domainMeta.isParameterized()) {
4749
iprint(
4850
"public final class %1$s<%5$s> extends %2$s<%3$s, %4$s> {%n",
@@ -70,6 +72,10 @@ private void printClass() {
7072
iprint("}%n");
7173
}
7274

75+
private void printDomainTypeImplementation() {
76+
iprint("@%1$s%n", DomainTypeImplementation.class);
77+
}
78+
7379
private void printFields() {
7480
if (domainMeta.isParameterized()) {
7581
iprint("@SuppressWarnings(\"rawtypes\")%n");

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_EnumDomain.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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _EnumDomain extends org.seasar.doma.jdbc.domain.AbstractDomainType<org.seasar.doma.internal.apt.processor.domain.EnumDomain.JobType, org.seasar.doma.internal.apt.processor.domain.EnumDomain> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_InterfaceDomain.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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _InterfaceDomain extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.lang.String, org.seasar.doma.internal.apt.processor.domain.InterfaceDomain> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_InterfaceOuter.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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _InterfaceOuter__Inner extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.math.BigDecimal, org.seasar.doma.internal.apt.processor.domain.InterfaceOuter.Inner> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_IntersectionParameterizedDomain.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ package org.seasar.doma.internal.apt.processor.domain;
44
* @param <T> T
55
*/
66
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
7+
@org.seasar.doma.DomainTypeImplementation
78
public final class _IntersectionParameterizedDomain<T extends java.lang.Number&java.lang.Runnable> extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.lang.Integer, org.seasar.doma.internal.apt.processor.domain.IntersectionParameterizedDomain<T>> {
89

910
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _LombokValue extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.lang.String, org.seasar.doma.internal.apt.processor.domain.LombokValue> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_NullRejectionDomain.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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _NullRejectionDomain extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.lang.String, org.seasar.doma.internal.apt.processor.domain.NullRejectionDomain> {
67

78
static {

doma-processor/src/test/resources/org/seasar/doma/internal/apt/processor/domain/DomainProcessorTest_ObjectDomain.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.domain;
22

33
/** */
44
@javax.annotation.Generated(value = { "Doma", "@VERSION@" }, date = "1970-01-01T09:00:00.000+0900")
5+
@org.seasar.doma.DomainTypeImplementation
56
public final class _ObjectDomain extends org.seasar.doma.jdbc.domain.AbstractDomainType<java.lang.Object, org.seasar.doma.internal.apt.processor.domain.ObjectDomain> {
67

78
static {

0 commit comments

Comments
 (0)