From ffc2b99e3eebdeba77fa0fc8ec97a469ae75d148 Mon Sep 17 00:00:00 2001 From: Giovanni van der Schelde Date: Wed, 29 Sep 2021 13:44:08 +0200 Subject: [PATCH] [MNG-6389] Move the toolchains model to a separate artifactId Closes #586 --- maven-bom/pom.xml | 10 +++ maven-core/pom.xml | 14 +++- .../maven/toolchain/DefaultToolchainTest.java | 44 ++++++----- maven-toolchain-builder/pom.xml | 70 ++++++++++++++++++ .../building/DefaultToolchainsBuilder.java | 0 .../DefaultToolchainsBuildingRequest.java | 0 .../DefaultToolchainsBuildingResult.java | 0 .../toolchain/building/ToolchainsBuilder.java | 0 .../building/ToolchainsBuildingException.java | 0 .../building/ToolchainsBuildingRequest.java | 0 .../building/ToolchainsBuildingResult.java | 0 .../toolchain/io/DefaultToolchainsReader.java | 0 .../toolchain/io/DefaultToolchainsWriter.java | 0 .../io/ToolchainsParseException.java | 0 .../maven/toolchain/io/ToolchainsReader.java | 0 .../maven/toolchain/io/ToolchainsWriter.java | 0 .../toolchain/merge/MavenToolchainMerger.java | 0 .../DefaultToolchainsBuilderTest.java | 2 +- .../ToolchainsBuildingExceptionTest.java | 8 +- .../merge/MavenToolchainMergerTest.java | 0 .../org/apache/maven/toolchain/global.xml | 0 .../model/toolchains-jdks-extend.xml | 0 .../toolchain/model/toolchains-jdks-extra.xml | 0 .../maven/toolchain/model/toolchains-jdks.xml | 0 .../org/apache/maven/toolchain/user.xml | 0 maven-toolchain-model/pom.xml | 59 +++++++++++++++ .../src/main/mdo/toolchains.mdo | 0 pom.xml | 2 + src/site/xdoc/maven-deps.odg | Bin 22491 -> 22633 bytes 29 files changed, 183 insertions(+), 26 deletions(-) create mode 100644 maven-toolchain-builder/pom.xml rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsWriter.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/io/ToolchainsWriter.java (100%) rename {maven-core => maven-toolchain-builder}/src/main/java/org/apache/maven/toolchain/merge/MavenToolchainMerger.java (100%) rename {maven-core => maven-toolchain-builder}/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java (100%) rename {maven-core => maven-toolchain-builder}/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java (100%) rename {maven-core => maven-toolchain-builder}/src/test/java/org/apache/maven/toolchain/merge/MavenToolchainMergerTest.java (100%) rename {maven-core => maven-toolchain-builder}/src/test/resources/org/apache/maven/toolchain/global.xml (100%) rename {maven-core => maven-toolchain-builder}/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extend.xml (100%) rename {maven-core => maven-toolchain-builder}/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extra.xml (100%) rename {maven-core => maven-toolchain-builder}/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks.xml (100%) rename {maven-core => maven-toolchain-builder}/src/test/resources/org/apache/maven/toolchain/user.xml (100%) create mode 100644 maven-toolchain-model/pom.xml rename {maven-core => maven-toolchain-model}/src/main/mdo/toolchains.mdo (100%) diff --git a/maven-bom/pom.xml b/maven-bom/pom.xml index 3f9f983e31..84d2b01238 100644 --- a/maven-bom/pom.xml +++ b/maven-bom/pom.xml @@ -128,6 +128,16 @@ under the License. maven-settings-builder ${project.version} + + org.apache.maven + maven-toolchain-model + ${project.version} + + + org.apache.maven + maven-toolchain-builder + ${project.version} + org.apache.maven maven-slf4j-wrapper diff --git a/maven-core/pom.xml b/maven-core/pom.xml index dd1b72bf0d..f46fdeb1d9 100644 --- a/maven-core/pom.xml +++ b/maven-core/pom.xml @@ -52,6 +52,14 @@ under the License. org.apache.maven maven-builder-support + + org.apache.maven + maven-toolchain-model + + + org.apache.maven + maven-toolchain-builder + org.apache.maven maven-repository-metadata @@ -212,12 +220,12 @@ under the License. modello-maven-plugin 1.1.0 - - src/main/mdo/toolchains.mdo - + + + modello-site-doc pre-site diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainTest.java b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainTest.java index 29f0fc652f..f335003a54 100644 --- a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainTest.java +++ b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainTest.java @@ -25,13 +25,11 @@ import static org.junit.jupiter.api.Assertions.assertNotEquals; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import java.io.InputStream; import java.util.Collections; import org.apache.maven.toolchain.java.DefaultJavaToolChain; -import org.apache.maven.toolchain.model.PersistedToolchains; import org.apache.maven.toolchain.model.ToolchainModel; -import org.apache.maven.toolchain.model.io.xpp3.MavenToolchainsXpp3Reader; +import org.codehaus.plexus.util.xml.Xpp3Dom; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.MockitoAnnotations; @@ -41,8 +39,6 @@ public class DefaultToolchainTest { private final Logger logger = mock( Logger.class ); - private MavenToolchainsXpp3Reader reader = new MavenToolchainsXpp3Reader(); - @BeforeEach public void setUp() throws Exception @@ -129,21 +125,33 @@ public class DefaultToolchainTest @Test public void testEquals() - throws Exception { - try ( InputStream jdksIS = ToolchainModel.class.getResourceAsStream( "toolchains-jdks.xml" ); - InputStream jdksExtraIS = ToolchainModel.class.getResourceAsStream( "toolchains-jdks-extra.xml" ) ) - { - PersistedToolchains jdks = reader.read( jdksIS ); - PersistedToolchains jdksExtra = reader.read( jdksExtraIS ); + ToolchainModel tm1 = new ToolchainModel(); + tm1.setType( "jdk" ); + tm1.addProvide( "version", "1.5" ); + tm1.addProvide( "vendor", "sun" ); + Xpp3Dom configuration1 = new Xpp3Dom("configuration"); + Xpp3Dom jdkHome1 = new Xpp3Dom( "jdkHome" ); + jdkHome1.setValue("${env.JAVA_HOME}"); + configuration1.addChild( jdkHome1 ); + tm1.setConfiguration( configuration1 ); - DefaultToolchain tc1 = new DefaultJavaToolChain( jdks.getToolchains().get( 0 ), null ); - DefaultToolchain tc2 = new DefaultJavaToolChain( jdksExtra.getToolchains().get( 0 ), null ); + ToolchainModel tm2 = new ToolchainModel(); + tm1.setType( "jdk" ); + tm1.addProvide( "version", "1.4" ); + tm1.addProvide( "vendor", "sun" ); + Xpp3Dom configuration2 = new Xpp3Dom("configuration"); + Xpp3Dom jdkHome2 = new Xpp3Dom( "jdkHome" ); + jdkHome2.setValue("${env.JAVA_HOME}"); + configuration2.addChild( jdkHome2 ); + tm2.setConfiguration( configuration2 ); - assertEquals( tc1, tc1 ); - assertNotEquals( tc1, tc2 ); - assertNotEquals( tc2, tc1 ); - assertEquals( tc2, tc2 ); - } + DefaultToolchain tc1 = new DefaultJavaToolChain( tm1, null ); + DefaultToolchain tc2 = new DefaultJavaToolChain( tm2, null ); + + assertEquals( tc1, tc1 ); + assertNotEquals( tc1, tc2 ); + assertNotEquals( tc2, tc1 ); + assertEquals( tc2, tc2 ); } } diff --git a/maven-toolchain-builder/pom.xml b/maven-toolchain-builder/pom.xml new file mode 100644 index 0000000000..5dcbea2d3d --- /dev/null +++ b/maven-toolchain-builder/pom.xml @@ -0,0 +1,70 @@ + + + + + + + maven + org.apache.maven + 4.0.0-alpha-1-SNAPSHOT + + 4.0.0 + + maven-toolchain-builder + + Maven Toolchain Builder + The effective toolchain builder. + + + + org.apache.maven + maven-toolchain-model + + + org.apache.maven + maven-builder-support + + + javax.inject + javax.inject + + + org.codehaus.plexus + plexus-interpolation + + + org.mockito + mockito-core + test + + + + + + + org.eclipse.sisu + sisu-maven-plugin + + + + + diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsWriter.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsWriter.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsWriter.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsWriter.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsWriter.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsWriter.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsWriter.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/io/ToolchainsWriter.java diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/merge/MavenToolchainMerger.java b/maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/merge/MavenToolchainMerger.java similarity index 100% rename from maven-core/src/main/java/org/apache/maven/toolchain/merge/MavenToolchainMerger.java rename to maven-toolchain-builder/src/main/java/org/apache/maven/toolchain/merge/MavenToolchainMerger.java diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java b/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java similarity index 100% rename from maven-core/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java rename to maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java index 94c15b80eb..6460aaf0a8 100644 --- a/maven-core/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java +++ b/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java @@ -27,8 +27,8 @@ import org.apache.maven.toolchain.model.PersistedToolchains; import org.apache.maven.toolchain.model.ToolchainModel; import org.codehaus.plexus.interpolation.os.OperatingSystemUtils; import org.codehaus.plexus.util.xml.Xpp3Dom; -import org.junit.jupiter.api.Test; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.mockito.ArgumentMatchers; import org.mockito.InjectMocks; import org.mockito.MockitoAnnotations; diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java b/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java similarity index 100% rename from maven-core/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java rename to maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java index 8189268b4d..0ad1087dbf 100644 --- a/maven-core/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java +++ b/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/ToolchainsBuildingExceptionTest.java @@ -19,15 +19,15 @@ package org.apache.maven.toolchain.building; * under the License. */ -import static org.junit.jupiter.api.Assertions.assertEquals; - -import java.util.Collections; - import org.apache.maven.building.Problem; import org.apache.maven.building.ProblemCollector; import org.apache.maven.building.ProblemCollectorFactory; import org.junit.jupiter.api.Test; +import java.util.Collections; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class ToolchainsBuildingExceptionTest { private static final String LS = System.lineSeparator(); diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/merge/MavenToolchainMergerTest.java b/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/merge/MavenToolchainMergerTest.java similarity index 100% rename from maven-core/src/test/java/org/apache/maven/toolchain/merge/MavenToolchainMergerTest.java rename to maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/merge/MavenToolchainMergerTest.java diff --git a/maven-core/src/test/resources/org/apache/maven/toolchain/global.xml b/maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/global.xml similarity index 100% rename from maven-core/src/test/resources/org/apache/maven/toolchain/global.xml rename to maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/global.xml diff --git a/maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extend.xml b/maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extend.xml similarity index 100% rename from maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extend.xml rename to maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extend.xml diff --git a/maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extra.xml b/maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extra.xml similarity index 100% rename from maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extra.xml rename to maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks-extra.xml diff --git a/maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks.xml b/maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks.xml similarity index 100% rename from maven-core/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks.xml rename to maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/model/toolchains-jdks.xml diff --git a/maven-core/src/test/resources/org/apache/maven/toolchain/user.xml b/maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/user.xml similarity index 100% rename from maven-core/src/test/resources/org/apache/maven/toolchain/user.xml rename to maven-toolchain-builder/src/test/resources/org/apache/maven/toolchain/user.xml diff --git a/maven-toolchain-model/pom.xml b/maven-toolchain-model/pom.xml new file mode 100644 index 0000000000..cf32371369 --- /dev/null +++ b/maven-toolchain-model/pom.xml @@ -0,0 +1,59 @@ + + + + + + + maven + org.apache.maven + 4.0.0-alpha-1-SNAPSHOT + + 4.0.0 + + maven-toolchain-model + + Maven Toolchain Model + Maven Toolchain model. + + + + org.codehaus.plexus + plexus-utils + + + + + + + org.codehaus.modello + modello-maven-plugin + + 1.1.0 + + src/main/mdo/toolchains.mdo + + + + + + + diff --git a/maven-core/src/main/mdo/toolchains.mdo b/maven-toolchain-model/src/main/mdo/toolchains.mdo similarity index 100% rename from maven-core/src/main/mdo/toolchains.mdo rename to maven-toolchain-model/src/main/mdo/toolchains.mdo diff --git a/pom.xml b/pom.xml index 49875c5f3b..eb63fa13c4 100644 --- a/pom.xml +++ b/pom.xml @@ -98,6 +98,8 @@ under the License. apache-maven maven-wrapper apache-maven/maven-wrapper.pom + maven-toolchain-model + maven-toolchain-builder diff --git a/src/site/xdoc/maven-deps.odg b/src/site/xdoc/maven-deps.odg index 9255b0179c7be56c3d4fa19b1be03bbe2e6a79b4..8f7f9773d1dde9f138471f8a81761b9d7b2bb5cc 100644 GIT binary patch literal 22633 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 bwC2BVy_zZ*m(Hib&o05UU4&Zq{L_B{qk~ub literal 22491 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