[jOOQ/jOOQ#16670] Add jakarta.annotation.Generated as possible GeneratedAnnotationType

This commit is contained in:
Lukas Eder 2024-05-10 08:53:28 +02:00
parent b210700fd2
commit 8e8b24ae57
5 changed files with 47 additions and 44 deletions

View File

@ -43,6 +43,7 @@ import java.util.Locale;
import org.jooq.Condition;
import org.jooq.Constants;
import org.jooq.Generated;
import org.jooq.JSON;
import org.jooq.JSONB;
import org.jooq.Name;
@ -215,12 +216,6 @@ public interface Generator {
*/
void setGenerateInstanceFields(boolean generateInstanceFields);
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should be generated.
*/
boolean generateGeneratedAnnotation();
/**
* The {@link VisibilityModifier} that should be used in generated code.
*/
@ -232,44 +227,54 @@ public interface Generator {
VisibilityModifier generateVisibilityModifier();
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should be generated.
* Whether a {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should be used in generated
* code.
*/
boolean generateGeneratedAnnotation();
/**
* Whether a {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should be used in generated
* code.
*/
void setGenerateGeneratedAnnotation(boolean generateGeneratedAnnotation);
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should be generated.
* The type of {@link Generated} annotation to be used in generated code.
*/
GeneratedAnnotationType generateGeneratedAnnotationType();
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should be generated.
* The type of {@link Generated} annotation to be used in generated code.
*/
void setGenerateGeneratedAnnotationType(GeneratedAnnotationType generateGeneratedAnnotationType);
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should include the <code>date</code> attribute.
* Whether the {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should include the
* <code>date</code> attribute.
*/
boolean generateGeneratedAnnotationDate();
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should include the <code>date</code> attribute.
* Whether the {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should include the
* <code>date</code> attribute.
*/
void setGenerateGeneratedAnnotationDate(boolean generateGeneratedAnnotationDate);
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should include the jOOQ version.
* Whether the {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should include the jOOQ
* version.
*/
boolean generateGeneratedAnnotationJooqVersion();
/**
* Whether the {@link javax.annotation.processing.Generated} annotation
* should include the jOOQ version.
* Whether the {@link Generated} annotation specified by
* {@link #generateGeneratedAnnotationType()} should include the jOOQ
* version.
*/
void setGenerateGeneratedAnnotationJooqVersion(boolean generateGeneratedAnnotationJooqVersion);

View File

@ -10327,6 +10327,9 @@ public class JavaGenerator extends AbstractGenerator {
case JAVAX_ANNOTATION_PROCESSING_GENERATED:
generated = "javax.annotation.processing.Generated";
break;
case JAKARTA_ANNOTATION_GENERATED:
generated = "jakarta.annotation.Generated";
break;
case ORG_JOOQ_GENERATED:
generated = Generated.class.getName();
break;

View File

@ -634,8 +634,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Use the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} in generated code.
*
* @return
* possible object is
@ -647,8 +646,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Use the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} in generated code.
*
* @param value
* allowed object is
@ -660,8 +658,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Specify the type of {@link org.jooq.Generated} annotation to use in generated code.
*
*/
public GeneratedAnnotationType getGeneratedAnnotationType() {
@ -669,8 +666,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Specify the type of {@link org.jooq.Generated} annotation to use in generated code.
*
*/
public void setGeneratedAnnotationType(GeneratedAnnotationType value) {
@ -678,7 +674,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the <code>date</code> attribute.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the <code>date</code> attribute.
*
* @return
* possible object is
@ -690,7 +686,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the <code>date</code> attribute.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the <code>date</code> attribute.
*
* @param value
* allowed object is
@ -702,7 +698,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the jOOQ version.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the jOOQ version.
*
* @return
* possible object is
@ -714,7 +710,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the jOOQ version.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the jOOQ version.
*
* @param value
* allowed object is
@ -3299,8 +3295,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Use the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} in generated code.
*
*/
public Generate withGeneratedAnnotation(Boolean value) {
@ -3309,8 +3304,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Generate the {@link javax.annotation.processing.Generated} annotation to indicate
* jOOQ version used for source code.
* Specify the type of {@link org.jooq.Generated} annotation to use in generated code.
*
*/
public Generate withGeneratedAnnotationType(GeneratedAnnotationType value) {
@ -3319,7 +3313,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the <code>date</code> attribute.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the <code>date</code> attribute.
*
*/
public Generate withGeneratedAnnotationDate(Boolean value) {
@ -3328,7 +3322,7 @@ public class Generate implements Serializable, XMLAppendable
}
/**
* Whether the {@link javax.annotation.processing.Generated} annotation should include the jOOQ version.
* Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the jOOQ version.
*
*/
public Generate withGeneratedAnnotationJooqVersion(Boolean value) {

View File

@ -15,6 +15,7 @@ import jakarta.xml.bind.annotation.XmlType;
* &lt;enumeration value="DETECT_FROM_JDK"/&gt;
* &lt;enumeration value="JAVAX_ANNOTATION_GENERATED"/&gt;
* &lt;enumeration value="JAVAX_ANNOTATION_PROCESSING_GENERATED"/&gt;
* &lt;enumeration value="JAKARTA_ANNOTATION_GENERATED"/&gt;
* &lt;enumeration value="ORG_JOOQ_GENERATED"/&gt;
* &lt;/restriction&gt;
* &lt;/simpleType&gt;
@ -28,6 +29,7 @@ public enum GeneratedAnnotationType {
DETECT_FROM_JDK,
JAVAX_ANNOTATION_GENERATED,
JAVAX_ANNOTATION_PROCESSING_GENERATED,
JAKARTA_ANNOTATION_GENERATED,
ORG_JOOQ_GENERATED;
public String value() {

View File

@ -2508,21 +2508,19 @@ jOOQ API, without adding custom data type bindings to them.]]></jxb:javadoc></jx
</element>
<element name="generatedAnnotation" type="boolean" default="false" minOccurs="0" maxOccurs="1">
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Generate the {@link javax.annotation.processing.Generated} annotation to indicate
jOOQ version used for source code.]]></jxb:javadoc></jxb:property></appinfo></annotation>
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Use the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} in generated code.]]></jxb:javadoc></jxb:property></appinfo></annotation>
</element>
<element name="generatedAnnotationType" type="tns:GeneratedAnnotationType" default="DETECT_FROM_JDK" minOccurs="0" maxOccurs="1">
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Generate the {@link javax.annotation.processing.Generated} annotation to indicate
jOOQ version used for source code.]]></jxb:javadoc></jxb:property></appinfo></annotation>
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Specify the type of {@link org.jooq.Generated} annotation to use in generated code.]]></jxb:javadoc></jxb:property></appinfo></annotation>
</element>
<element name="generatedAnnotationDate" type="boolean" default="false" minOccurs="0" maxOccurs="1">
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Whether the {@link javax.annotation.processing.Generated} annotation should include the <code>date</code> attribute.]]></jxb:javadoc></jxb:property></appinfo></annotation>
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the <code>date</code> attribute.]]></jxb:javadoc></jxb:property></appinfo></annotation>
</element>
<element name="generatedAnnotationJooqVersion" type="boolean" default="true" minOccurs="0" maxOccurs="1">
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Whether the {@link javax.annotation.processing.Generated} annotation should include the jOOQ version.]]></jxb:javadoc></jxb:property></appinfo></annotation>
<annotation><appinfo><jxb:property><jxb:javadoc><![CDATA[Whether the {@link org.jooq.Generated} annotation specified by {@link #getGeneratedAnnotationType()} should include the jOOQ version.]]></jxb:javadoc></jxb:property></appinfo></annotation>
</element>
<element name="nonnullAnnotation" type="boolean" default="false" minOccurs="0" maxOccurs="1">
@ -3074,6 +3072,7 @@ e.g. org.jooq.generated.schema1, org.jooq.generated.schema2]]></jxb:javadoc></jx
<enumeration value="DETECT_FROM_JDK"/>
<enumeration value="JAVAX_ANNOTATION_GENERATED"/>
<enumeration value="JAVAX_ANNOTATION_PROCESSING_GENERATED"/>
<enumeration value="JAKARTA_ANNOTATION_GENERATED"/>
<enumeration value="ORG_JOOQ_GENERATED"/>
</restriction>
</simpleType>