This is an automated email from the ASF dual-hosted git repository. cstamas pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven.git
The following commit(s) were added to refs/heads/master by this push: new a1fe9fc387 [MNG-7962] Return language to Type (#1341) a1fe9fc387 is described below commit a1fe9fc3875e6e487becf1afdf4ed22a7ca23a88 Author: Tamas Cservenak <ta...@cservenak.net> AuthorDate: Thu Dec 14 11:51:16 2023 +0100 [MNG-7962] Return language to Type (#1341) Returns the language property to Type --- https://issues.apache.org/jira/browse/MNG-7962 --- .../src/main/java/org/apache/maven/api/Type.java | 15 +++++++++------ .../handler/manager/DefaultArtifactHandlerManager.java | 2 +- .../apache/maven/internal/aether/TypeRegistryAdapter.java | 8 ++++++-- .../java/org/apache/maven/internal/impl/DefaultType.java | 14 +++++++++++++- .../apache/maven/internal/impl/DefaultTypeRegistry.java | 1 + .../apache/maven/internal/impl/types/BomTypeProvider.java | 2 +- .../apache/maven/internal/impl/types/EarTypeProvider.java | 6 +++++- .../maven/internal/impl/types/EjbClientTypeProvider.java | 1 + .../apache/maven/internal/impl/types/EjbTypeProvider.java | 6 +++++- .../apache/maven/internal/impl/types/JarTypeProvider.java | 6 +++++- .../maven/internal/impl/types/JavaSourceTypeProvider.java | 2 +- .../maven/internal/impl/types/JavadocTypeProvider.java | 1 + .../internal/impl/types/MavenPluginTypeProvider.java | 6 +++++- .../apache/maven/internal/impl/types/ParTypeProvider.java | 6 +++++- .../apache/maven/internal/impl/types/PomTypeProvider.java | 2 +- .../apache/maven/internal/impl/types/RarTypeProvider.java | 6 +++++- .../maven/internal/impl/types/TestJarTypeProvider.java | 1 + .../apache/maven/internal/impl/types/WarTypeProvider.java | 6 +++++- .../maven/artifact/handler/ArtifactHandlerTest.java | 3 +-- 19 files changed, 72 insertions(+), 22 deletions(-) diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java b/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java index 4401c82e11..15ffc0b59a 100644 --- a/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java +++ b/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java @@ -42,12 +42,8 @@ import org.apache.maven.api.model.Dependency; @Immutable public interface Type { - String POM = "pom"; - String JAR = "jar"; - String JAVA_SOURCE = "java-source"; - String JAVADOC = "javadoc"; - String MAVEN_PLUGIN = "maven-plugin"; - String TEST_JAR = "test-jar"; + String LANGUAGE_NONE = "none"; + String LANGUAGE_JAVA = "java"; /** * Returns the dependency type id. @@ -58,6 +54,13 @@ public interface Type { @Nonnull String getId(); + /** + * Returns the dependency type language. + * + * @return the language of this type, never {@code null}. + */ + String getLanguage(); + /** * Get the file extension of artifacts of this type. * diff --git a/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java b/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java index 53fab056e1..87166eb29a 100644 --- a/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java +++ b/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java @@ -70,7 +70,7 @@ public class DefaultArtifactHandlerManager extends AbstractEventSpy implements A null, null, type.isIncludesDependencies(), - "none", + type.getLanguage(), type.isAddedToClassPath()); // TODO: watch out for module path }); } diff --git a/maven-core/src/main/java/org/apache/maven/internal/aether/TypeRegistryAdapter.java b/maven-core/src/main/java/org/apache/maven/internal/aether/TypeRegistryAdapter.java index c090218060..537015d80d 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/aether/TypeRegistryAdapter.java +++ b/maven-core/src/main/java/org/apache/maven/internal/aether/TypeRegistryAdapter.java @@ -30,7 +30,7 @@ public class TypeRegistryAdapter implements ArtifactTypeRegistry { private final TypeRegistry typeRegistry; public TypeRegistryAdapter(TypeRegistry typeRegistry) { - this.typeRegistry = requireNonNull(typeRegistry, "null typeRegistry"); + this.typeRegistry = requireNonNull(typeRegistry, "typeRegistry"); } @Override @@ -41,7 +41,11 @@ public class TypeRegistryAdapter implements ArtifactTypeRegistry { } if (type != null) { return new DefaultType( - type.getId(), type.getExtension(), type.getClassifier(), type.getDependencyProperties()); + type.getId(), + type.getLanguage(), + type.getExtension(), + type.getClassifier(), + type.getDependencyProperties()); } return null; } diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultType.java b/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultType.java index 67384dece9..6297f5c4dd 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultType.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultType.java @@ -35,13 +35,20 @@ public class DefaultType implements Type, ArtifactType { private final DependencyProperties dependencyProperties; - public DefaultType(String id, String extension, String classifier, DependencyProperties dependencyProperties) { + public DefaultType( + String id, + String language, + String extension, + String classifier, + DependencyProperties dependencyProperties) { nonNull(id, "id"); + nonNull(language, "language"); this.extension = nonNull(extension, "extension"); this.classifier = classifier; nonNull(dependencyProperties, "dependencyProperties"); HashMap<String, String> props = new HashMap<>(dependencyProperties.asMap()); props.put(ArtifactProperties.TYPE, id); + props.put(ArtifactProperties.LANGUAGE, language); this.dependencyProperties = new DefaultDependencyProperties(props); } @@ -50,6 +57,11 @@ public class DefaultType implements Type, ArtifactType { return dependencyProperties.asMap().get(ArtifactProperties.TYPE); } + @Override + public String getLanguage() { + return dependencyProperties.asMap().get(ArtifactProperties.LANGUAGE); + } + @Override public String getExtension() { return extension; diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultTypeRegistry.java b/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultTypeRegistry.java index f5101f0d1a..cebd30cc66 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultTypeRegistry.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultTypeRegistry.java @@ -87,6 +87,7 @@ public class DefaultTypeRegistry extends AbstractEventSpy implements TypeRegistr } return new DefaultType( id, + handler.getLanguage(), handler.getExtension(), handler.getClassifier(), new DefaultDependencyProperties(flags)); diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/BomTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/BomTypeProvider.java index 29d87cc4ec..d7387a1780 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/BomTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/BomTypeProvider.java @@ -34,7 +34,7 @@ public class BomTypeProvider implements Provider<Type> { private final Type type; public BomTypeProvider() { - this.type = new DefaultType(NAME, "pom", null, new DefaultDependencyProperties()); + this.type = new DefaultType(NAME, Type.LANGUAGE_NONE, "pom", null, new DefaultDependencyProperties()); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EarTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EarTypeProvider.java index 2ceb095dd2..489ed638bb 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EarTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EarTypeProvider.java @@ -36,7 +36,11 @@ public class EarTypeProvider implements Provider<Type> { public EarTypeProvider() { this.type = new DefaultType( - NAME, "ear", null, new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); + NAME, + Type.LANGUAGE_JAVA, + "ear", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbClientTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbClientTypeProvider.java index 39c848357c..efbfe05a1c 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbClientTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbClientTypeProvider.java @@ -37,6 +37,7 @@ public class EjbClientTypeProvider implements Provider<Type> { public EjbClientTypeProvider() { this.type = new DefaultType( NAME, + Type.LANGUAGE_JAVA, "jar", "client", new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbTypeProvider.java index 5eb237d8ba..e6f8fbdb4b 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/EjbTypeProvider.java @@ -36,7 +36,11 @@ public class EjbTypeProvider implements Provider<Type> { public EjbTypeProvider() { this.type = new DefaultType( - NAME, "jar", null, new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); + NAME, + Type.LANGUAGE_JAVA, + "jar", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JarTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JarTypeProvider.java index 4e4cc367b4..974c34e0ed 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JarTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JarTypeProvider.java @@ -36,7 +36,11 @@ public class JarTypeProvider implements Provider<Type> { public JarTypeProvider() { this.type = new DefaultType( - NAME, "jar", null, new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); + NAME, + Type.LANGUAGE_JAVA, + "jar", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavaSourceTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavaSourceTypeProvider.java index 7a0d982f81..bef8acf716 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavaSourceTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavaSourceTypeProvider.java @@ -34,7 +34,7 @@ public class JavaSourceTypeProvider implements Provider<Type> { private final Type type; public JavaSourceTypeProvider() { - this.type = new DefaultType(NAME, "jar", "sources", new DefaultDependencyProperties()); + this.type = new DefaultType(NAME, Type.LANGUAGE_JAVA, "jar", "sources", new DefaultDependencyProperties()); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavadocTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavadocTypeProvider.java index d4401cc0ff..1ccac4f04b 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavadocTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/JavadocTypeProvider.java @@ -37,6 +37,7 @@ public class JavadocTypeProvider implements Provider<Type> { public JavadocTypeProvider() { this.type = new DefaultType( NAME, + Type.LANGUAGE_JAVA, "jar", "javadoc", new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/MavenPluginTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/MavenPluginTypeProvider.java index 4fd2990c64..bfdb424c27 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/MavenPluginTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/MavenPluginTypeProvider.java @@ -36,7 +36,11 @@ public class MavenPluginTypeProvider implements Provider<Type> { public MavenPluginTypeProvider() { this.type = new DefaultType( - NAME, "jar", null, new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); + NAME, + Type.LANGUAGE_JAVA, + "jar", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/ParTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/ParTypeProvider.java index 64b8ad711f..91db9ba182 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/ParTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/ParTypeProvider.java @@ -36,7 +36,11 @@ public class ParTypeProvider implements Provider<Type> { public ParTypeProvider() { this.type = new DefaultType( - NAME, "par", null, new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); + NAME, + Type.LANGUAGE_JAVA, + "par", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/PomTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/PomTypeProvider.java index 4b1afe64c9..fe0f9705d0 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/PomTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/PomTypeProvider.java @@ -34,7 +34,7 @@ public class PomTypeProvider implements Provider<Type> { private final Type type; public PomTypeProvider() { - this.type = new DefaultType(NAME, "pom", null, new DefaultDependencyProperties()); + this.type = new DefaultType(NAME, Type.LANGUAGE_NONE, "pom", null, new DefaultDependencyProperties()); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/RarTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/RarTypeProvider.java index 51267a5f15..ad5accd3cd 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/RarTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/RarTypeProvider.java @@ -36,7 +36,11 @@ public class RarTypeProvider implements Provider<Type> { public RarTypeProvider() { this.type = new DefaultType( - NAME, "rar", null, new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); + NAME, + Type.LANGUAGE_JAVA, + "rar", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); } @Override diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/TestJarTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/TestJarTypeProvider.java index 14ccf928b0..6bd7ea2da7 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/TestJarTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/TestJarTypeProvider.java @@ -37,6 +37,7 @@ public class TestJarTypeProvider implements Provider<Type> { public TestJarTypeProvider() { this.type = new DefaultType( NAME, + Type.LANGUAGE_JAVA, "jar", "tests", new DefaultDependencyProperties(DependencyProperties.FLAG_CLASS_PATH_CONSTITUENT)); diff --git a/maven-core/src/main/java/org/apache/maven/internal/impl/types/WarTypeProvider.java b/maven-core/src/main/java/org/apache/maven/internal/impl/types/WarTypeProvider.java index c382f08af6..a2b339001d 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/impl/types/WarTypeProvider.java +++ b/maven-core/src/main/java/org/apache/maven/internal/impl/types/WarTypeProvider.java @@ -36,7 +36,11 @@ public class WarTypeProvider implements Provider<Type> { public WarTypeProvider() { this.type = new DefaultType( - NAME, "war", null, new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); + NAME, + Type.LANGUAGE_JAVA, + "war", + null, + new DefaultDependencyProperties(DependencyProperties.FLAG_INCLUDES_DEPENDENCIES)); } @Override diff --git a/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java b/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java index 54d75a8234..fbcb710823 100644 --- a/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java +++ b/maven-core/src/test/java/org/apache/maven/artifact/handler/ArtifactHandlerTest.java @@ -79,8 +79,7 @@ class ArtifactHandlerTest { // Packaging/Directory is Maven1 remnant!!! // assertEquals(handler.getPackaging(), packaging, type + " packaging"); assertEquals(handler.getClassifier(), classifier, type + " classifier"); - // Language is unused - // assertEquals(handler.getLanguage(), language, type + " language"); + assertEquals(handler.getLanguage(), language, type + " language"); assertEquals( handler.isAddedToClasspath() ? "true" : null, addedToClasspath, type + " addedToClasspath"); assertEquals(