Author: rfscholte
Date: Sat Jul 25 10:01:16 2015
New Revision: 1692615
URL: http://svn.apache.org/r1692615
Log:
Fix DefaultArtifactCoordinate.toString() when type is not defined (defaults to
jar) + tests
Added:
maven/shared/trunk/maven-artifact-transfer/src/test/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinateTest.java
Modified:
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/ArtifactCoordinate.java
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinate.java
Modified:
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/ArtifactCoordinate.java
URL:
http://svn.apache.org/viewvc/maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/ArtifactCoordinate.java?rev=1692615&r1=1692614&r2=1692615&view=diff
==============================================================================
---
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/ArtifactCoordinate.java
(original)
+++
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/ArtifactCoordinate.java
Sat Jul 25 10:01:16 2015
@@ -20,8 +20,17 @@ package org.apache.maven.shared.artifact
*/
/**
- * Contains all elements of an Maven Artifact of Dependency to calculate its
path for either a local or remote
- * Maven2 repository
+ * <p>
+ * Contains all elements of an Maven Artifact of Dependency to resolve and
calculate its path for either a local or
+ * remote Maven2 repository.
+ * </p>
+ * <p>
+ * The version can be a version range. Based on the groupId and artifactId it
will be resolved to the actual version.
+ * </p>
+ * <p>
+ * The type will be translated to an extension based on the artifact
descriptor ({@code pom.xml} matching the groupId,
+ * artifactId and version.
+ * </p>
*
* @author Robert Scholte
*/
@@ -31,6 +40,11 @@ public interface ArtifactCoordinate
String getArtifactId();
+ /**
+ * A version or versionRange
+ *
+ * @return
+ */
String getVersion();
String getType();
Modified:
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinate.java
URL:
http://svn.apache.org/viewvc/maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinate.java?rev=1692615&r1=1692614&r2=1692615&view=diff
==============================================================================
---
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinate.java
(original)
+++
maven/shared/trunk/maven-artifact-transfer/src/main/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinate.java
Sat Jul 25 10:01:16 2015
@@ -147,11 +147,14 @@ public class DefaultArtifactCoordinate i
this.classifier = classifier;
}
+ /**
+ * @see org.apache.maven.artifact.DefaultArtifact#toString()
+ */
@Override
public String toString()
{
StringBuilder sb =
- new StringBuilder().append( groupId ).append( ':' ).append(
artifactId ).append( ':' ).append( type );
+ new StringBuilder().append( groupId ).append( ':' ).append(
artifactId ).append( ':' ).append( getType() );
if ( classifier != null )
{
Added:
maven/shared/trunk/maven-artifact-transfer/src/test/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinateTest.java
URL:
http://svn.apache.org/viewvc/maven/shared/trunk/maven-artifact-transfer/src/test/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinateTest.java?rev=1692615&view=auto
==============================================================================
---
maven/shared/trunk/maven-artifact-transfer/src/test/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinateTest.java
(added)
+++
maven/shared/trunk/maven-artifact-transfer/src/test/java/org/apache/maven/shared/artifact/DefaultArtifactCoordinateTest.java
Sat Jul 25 10:01:16 2015
@@ -0,0 +1,50 @@
+package org.apache.maven.shared.artifact;
+
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+
+public class DefaultArtifactCoordinateTest
+{
+ @Test
+ public void testToStringWithoutType()
+ {
+ DefaultArtifactCoordinate coordinate = new DefaultArtifactCoordinate();
+ coordinate.setGroupId( "GROUPID" );
+ coordinate.setArtifactId( "ARTIFACTID" );
+ coordinate.setVersion( "VERSION" );
+ assertEquals( "GROUPID:ARTIFACTID:jar:VERSION", coordinate.toString()
);
+ }
+
+ @Test
+ public void testToStringWithClassifier()
+ {
+ DefaultArtifactCoordinate coordinate = new DefaultArtifactCoordinate();
+ coordinate.setGroupId( "GROUPID" );
+ coordinate.setArtifactId( "ARTIFACTID" );
+ coordinate.setVersion( "VERSION" );
+ coordinate.setClassifier( "CLASSIFIER" );
+ coordinate.setType( "TYPE" );
+ assertEquals( "GROUPID:ARTIFACTID:TYPE:CLASSIFIER:VERSION",
coordinate.toString() );
+ }
+}