You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by sk...@apache.org on 2020/03/22 20:49:35 UTC
[netbeans-mavenutils-nb-repository-plugin] branch master updated:
add test and better dependency identification (#5)
This is an automated email from the ASF dual-hosted git repository.
skygo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/netbeans-mavenutils-nb-repository-plugin.git
The following commit(s) were added to refs/heads/master by this push:
new 2b61d7a add test and better dependency identification (#5)
2b61d7a is described below
commit 2b61d7ab4270ca450467d23463385a6d73806c33
Author: Eric Barboni <sk...@apache.org>
AuthorDate: Sun Mar 22 21:49:28 2020 +0100
add test and better dependency identification (#5)
---
.../nbm/repository/PopulateRepositoryMojo.java | 38 ++++++++++++++++++----
.../nbm/repository/PopulateRepositoryMojoTest.java | 32 ++++++++++++++----
2 files changed, 56 insertions(+), 14 deletions(-)
diff --git a/src/main/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojo.java b/src/main/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojo.java
index f4ebcd5..0e0af62 100644
--- a/src/main/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojo.java
+++ b/src/main/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojo.java
@@ -981,16 +981,15 @@ public class PopulateRepositoryMojo
String sha1 = encode ( shaDig.digest() ).toUpperCase();
for ( String string : content512 )
{
+ if ( string.startsWith( "#" ) )
+ {
+ continue;
+ }
String[] split = string.split( ";" );
if ( split[0].equals( sha1 ) && split[1].contains( ":" ) )
{
- String[] splits = split[1].split( ":" );
- Dependency dep = new Dependency();
- dep.setArtifactId( splits[1] );
- dep.setGroupId( splits[0] );
- dep.setVersion( splits[2] );
- dep.setType( "jar" );
- getLog().info( "found match " + splits[0] + ":" + splits[1] + ":" + splits[2] + " for " + f.getName() );
+ Dependency dep = splitDependencyString( split[1] );
+ getLog().info( "found match " + dep.getGroupId() + ":" + dep.getArtifactId() + ":" + dep.getVersion() + " for " + f.getName() );
return dep;
}
}
@@ -1003,6 +1002,31 @@ public class PopulateRepositoryMojo
return null;
}
+ static Dependency splitDependencyString( String split )
+ {
+ String[] splits = split.split( ":" );
+ Dependency dep = new Dependency();
+ dep.setArtifactId( splits[1] );
+ dep.setGroupId( splits[0] );
+ dep.setVersion( splits[2] );
+ dep.setType( "jar" );
+ dep.setClassifier( "" );
+ if ( splits.length > 3 )
+ {
+ String[] split2 = splits[3].split( "@" );
+ if ( split2.length > 1 )
+ {
+ dep.setClassifier( split2[0] );
+ dep.setType( split2[1] );
+ }
+ else
+ {
+ dep.setClassifier( splits[3] );
+ }
+ }
+ return dep;
+ }
+
File createExternalProject( ExternalsWrapper wrapper )
{
Model mavenModel = new Model();
diff --git a/src/test/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojoTest.java b/src/test/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojoTest.java
index 516c4a1..5a6ab2a 100644
--- a/src/test/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojoTest.java
+++ b/src/test/java/org/apache/netbeans/nbm/repository/PopulateRepositoryMojoTest.java
@@ -19,14 +19,8 @@ package org.apache.netbeans.nbm.repository;
* under the License.
*/
-import org.apache.netbeans.nbm.repository.PopulateRepositoryMojo;
-import java.io.File;
import junit.framework.TestCase;
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
-import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
-import org.apache.maven.plugin.testing.AbstractMojoTestCase;
-import org.codehaus.plexus.util.FileUtils;
+import org.apache.maven.model.Dependency;
/**
*
@@ -59,6 +53,30 @@ public class PopulateRepositoryMojoTest extends TestCase /** AbstractMojoTestCas
//// assertTrue( new File( repo, "testgrp/testarg/1.0/testarg-1.0.nbm" ).isFile() );
//// assertFalse( new File( repo, "testgrp/testarg/1.0/testarg-1.0.jar" ).isFile() );
}
+
+ public void testSplit() throws Exception
+ {
+ Dependency dep1 = PopulateRepositoryMojo.splitDependencyString("org.apache.maven:apache-maven:3.6.3:bin@zip");
+ assertEquals("org.apache.maven", dep1.getGroupId() );
+ assertEquals("apache-maven", dep1.getArtifactId());
+ assertEquals("3.6.3", dep1.getVersion());
+ assertEquals("bin", dep1.getClassifier());
+ assertEquals("zip", dep1.getType());
+
+ Dependency dep2 = PopulateRepositoryMojo.splitDependencyString("org.apache.maven:apache-maven:3.6.3:myclassifier");
+ assertEquals("org.apache.maven", dep2.getGroupId() );
+ assertEquals("apache-maven", dep2.getArtifactId());
+ assertEquals("3.6.3", dep2.getVersion());
+ assertEquals("myclassifier", dep2.getClassifier());
+ assertEquals("jar", dep2.getType());
+
+ Dependency dep3 = PopulateRepositoryMojo.splitDependencyString("org.apache.maven:apache-maven:3.6.3");
+ assertEquals("org.apache.maven", dep3.getGroupId() );
+ assertEquals("apache-maven", dep3.getArtifactId());
+ assertEquals("3.6.3", dep3.getVersion());
+ assertEquals("", dep3.getClassifier());
+ assertEquals("jar", dep3.getType());
+ }
public void testEncode() throws Exception
{
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists