Skip to content

Commit ed258c6

Browse files
authored
Set new minimum baseline: (#191)
* Set new minimum baseline: - Java 17 - Spring 6 Next release will be 2.0.0. * Set new minimum baseline: - Java 17 - Spring 6 Next release will be 2.0.0.
1 parent 0be555e commit ed258c6

File tree

34 files changed

+50
-635
lines changed

34 files changed

+50
-635
lines changed

.github/workflows/gradle.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ jobs:
1818

1919
steps:
2020
- uses: actions/checkout@v5
21-
- name: Set up JDK 11
21+
- name: Set up JDK 17
2222
uses: actions/setup-java@v5
2323
with:
2424
distribution: 'zulu'
25-
java-version: 11
25+
java-version: 17
2626
- name: Build with Gradle
2727
uses: gradle/gradle-build-action@v3
2828
with:

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ subprojects {
5555
apply plugin: "jacoco"
5656

5757
group = 'org.mapstruct.extensions.spring'
58-
version = '1.1.4-SNAPSHOT'
58+
version = '2.0.0-SNAPSHOT'
5959

6060
java {
6161
toolchain {
62-
languageVersion.set(JavaLanguageVersion.of(11))
62+
languageVersion.set(JavaLanguageVersion.of(17))
6363
}
6464

6565
withJavadocJar()

examples/classname/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ dependencies {
66
testImplementation projects.testExtensions
77
testImplementation libs.assertj
88
testImplementation libs.bundles.junit.jupiter
9-
implementation libs.jsr250
109
implementation libs.mapstruct.core
1110
annotationProcessor libs.mapstruct.processor
1211
implementation libs.spring.context

examples/custom-conversion-service-bean-with-converter-scan/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ dependencies {
55

66
testImplementation libs.assertj
77
testImplementation libs.bundles.junit.jupiter
8-
implementation libs.jsr250
8+
implementation libs.jakarta.annotation
99
implementation libs.mapstruct.core
1010
annotationProcessor libs.mapstruct.processor
1111
implementation libs.spring.context

examples/custom-conversion-service-bean/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ dependencies {
55

66
testImplementation libs.assertj
77
testImplementation libs.bundles.junit.jupiter
8-
implementation libs.jsr250
98
implementation libs.mapstruct.core
109
annotationProcessor libs.mapstruct.processor
1110
implementation libs.spring.context

examples/noconfig/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ dependencies {
66
testImplementation projects.testExtensions
77
testImplementation libs.assertj
88
testImplementation libs.bundles.junit.jupiter
9-
implementation libs.jsr250
109
implementation libs.mapstruct.core
1110
annotationProcessor libs.mapstruct.processor
1211
implementation libs.spring.context

examples/packagename-and-classname/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ dependencies {
66
testImplementation projects.testExtensions
77
testImplementation libs.assertj
88
testImplementation libs.bundles.junit.jupiter
9-
implementation libs.jsr250
109
implementation libs.mapstruct.core
1110
annotationProcessor libs.mapstruct.processor
1211
implementation libs.spring.context

examples/packagename/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ dependencies {
66
testImplementation projects.testExtensions
77
testImplementation libs.assertj
88
testImplementation libs.bundles.junit.jupiter
9-
implementation libs.jsr250
109
implementation libs.mapstruct.core
1110
annotationProcessor libs.mapstruct.processor
1211
implementation libs.spring.context

extensions/src/main/java/org/mapstruct/extensions/spring/converter/ConverterRegistrationConfigurationGenerator.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,21 @@
11
package org.mapstruct.extensions.spring.converter;
22

3-
import static javax.lang.model.element.Modifier.*;
3+
import static javax.lang.model.element.Modifier.FINAL;
4+
import static javax.lang.model.element.Modifier.PRIVATE;
45

5-
import com.squareup.javapoet.*;
66
import java.time.Clock;
77
import java.util.List;
88
import java.util.Optional;
99

10+
import com.squareup.javapoet.AnnotationSpec;
11+
import com.squareup.javapoet.ClassName;
12+
import com.squareup.javapoet.FieldSpec;
13+
import com.squareup.javapoet.MethodSpec;
14+
import com.squareup.javapoet.ParameterSpec;
15+
import com.squareup.javapoet.ParameterizedTypeName;
16+
import com.squareup.javapoet.TypeSpec;
17+
import com.squareup.javapoet.WildcardTypeName;
18+
1019
public class ConverterRegistrationConfigurationGenerator extends AdapterRelatedGenerator {
1120

1221
private static final ClassName CONFIGURABLE_CONVERSION_SERVICE_CLASS_NAME =
@@ -56,11 +65,7 @@ protected TypeSpec createMainTypeSpec(final ConversionServiceAdapterDescriptor d
5665
}
5766

5867
private ClassName postConstructClassName() {
59-
if (isTypeAvailable("jakarta.annotation.PostConstruct")) {
6068
return ClassName.get("jakarta.annotation", "PostConstruct");
61-
} else {
62-
return ClassName.get("javax.annotation", "PostConstruct");
63-
}
6469
}
6570

6671
private MethodSpec createRegistrationMethodSpec(

extensions/src/test/java/org/mapstruct/extensions/spring/converter/AbstractConversionServiceBeanNameIndependentGeneratorTest.java

Lines changed: 12 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,37 @@
11
package org.mapstruct.extensions.spring.converter;
22

3+
import static java.lang.Boolean.TRUE;
4+
import static javax.lang.model.SourceVersion.RELEASE_9;
5+
import static org.mockito.BDDMockito.given;
6+
import static org.mockito.Mockito.mock;
7+
8+
import java.io.IOException;
9+
import java.util.Map;
10+
import javax.annotation.processing.ProcessingEnvironment;
11+
import javax.lang.model.element.TypeElement;
12+
import javax.lang.model.util.Elements;
13+
314
import org.junit.jupiter.api.BeforeEach;
415
import org.junit.jupiter.api.Nested;
516
import org.junit.jupiter.api.Test;
617
import org.junit.jupiter.api.extension.ExtendWith;
718
import org.mockito.Mock;
819
import org.mockito.junit.jupiter.MockitoExtension;
9-
import org.mockito.stubbing.Answer;
10-
11-
import javax.annotation.processing.ProcessingEnvironment;
12-
import javax.lang.model.SourceVersion;
13-
import javax.lang.model.element.TypeElement;
14-
import javax.lang.model.util.Elements;
15-
import java.io.IOException;
16-
import java.util.Map;
17-
18-
import static java.lang.Boolean.TRUE;
19-
import static javax.lang.model.SourceVersion.RELEASE_8;
20-
import static javax.lang.model.SourceVersion.RELEASE_9;
21-
import static org.mockito.BDDMockito.given;
22-
import static org.mockito.Mockito.mock;
2320

2421
@ExtendWith(MockitoExtension.class)
2522
abstract class AbstractConversionServiceBeanNameIndependentGeneratorTest extends AdapterRelatedGeneratorTest {
2623
@Mock private Elements elements;
2724

28-
private boolean isAtLeastJava9;
29-
30-
private final String java8GeneratedExpectedContentFilename;
31-
private final String java8GeneratedNoDateExpectedContentFileName;
3225
private final String java9PlusGeneratedExpectedContentFileName;
3326
private final String java9PlusGeneratedNoDateExpectedContentFileName;
3427
private final String noGeneratedExpectedContentFileName;
3528
private final AdapterRelatedGenerator underTest;
3629

3730
protected AbstractConversionServiceBeanNameIndependentGeneratorTest(
38-
final String java8GeneratedExpectedContentFilename,
39-
final String java8GeneratedNoDateExpectedContentFileName,
4031
final String java9PlusGeneratedExpectedContentFileName,
4132
final String java9PlusGeneratedNoDateExpectedContentFileName,
4233
final String noGeneratedExpectedContentFileName,
4334
final AdapterRelatedGenerator underTest) {
44-
this.java8GeneratedExpectedContentFilename = java8GeneratedExpectedContentFilename;
45-
this.java8GeneratedNoDateExpectedContentFileName = java8GeneratedNoDateExpectedContentFileName;
4635
this.java9PlusGeneratedExpectedContentFileName = java9PlusGeneratedExpectedContentFileName;
4736
this.java9PlusGeneratedNoDateExpectedContentFileName =
4837
java9PlusGeneratedNoDateExpectedContentFileName;
@@ -57,49 +46,14 @@ class DefaultProcessingEnvironment {
5746
@BeforeEach
5847
void initWithProcessingEnvironment() {
5948
given(processingEnvironment.getElementUtils()).willReturn(elements);
60-
given(processingEnvironment.getSourceVersion())
61-
.will(
62-
(Answer<SourceVersion>)
63-
(invocation) -> {
64-
if (isAtLeastJava9) {
65-
return RELEASE_9;
66-
} else {
67-
return RELEASE_8;
68-
}
69-
});
49+
given(processingEnvironment.getSourceVersion()).willReturn(RELEASE_9);
7050
underTest.init(processingEnvironment);
7151
}
7252

73-
@Nested
74-
class Java8Generated {
75-
@BeforeEach
76-
void initElements() {
77-
isAtLeastJava9 = false;
78-
given(elements.getTypeElement("javax.annotation.Generated"))
79-
.willReturn(mock(TypeElement.class));
80-
}
81-
82-
@Test
83-
void shouldGenerateMatchingOutput() throws IOException {
84-
AbstractConversionServiceBeanNameIndependentGeneratorTest.this.shouldGenerateMatchingOutput(
85-
java8GeneratedExpectedContentFilename, underTest::writeGeneratedCodeToOutput);
86-
}
87-
88-
@Test
89-
void shouldSuppressDateGenerationWhenProcessingEnvironmentHasSuppressionSetToTrue()
90-
throws IOException {
91-
given(processingEnvironment.getOptions())
92-
.willReturn(Map.of("mapstruct.suppressGeneratorTimestamp", String.valueOf(TRUE)));
93-
AbstractConversionServiceBeanNameIndependentGeneratorTest.this.shouldGenerateMatchingOutput(
94-
java8GeneratedNoDateExpectedContentFileName, underTest::writeGeneratedCodeToOutput);
95-
}
96-
}
97-
9853
@Nested
9954
class Java9PlusGenerated {
10055
@BeforeEach
10156
void initElements() {
102-
isAtLeastJava9 = true;
10357
given(elements.getTypeElement("javax.annotation.processing.Generated"))
10458
.willReturn(mock(TypeElement.class));
10559
}
@@ -122,11 +76,6 @@ void shouldSuppressDateGenerationWhenProcessingEnvironmentHasSuppressionSetToTru
12276

12377
@Nested
12478
class NoGenerated {
125-
@BeforeEach
126-
void initElements() {
127-
isAtLeastJava9 = false;
128-
}
129-
13079
@Test
13180
void shouldGenerateMatchingOutput() throws IOException {
13281
AbstractConversionServiceBeanNameIndependentGeneratorTest.this.shouldGenerateMatchingOutput(

0 commit comments

Comments
 (0)