You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2016/12/09 20:55:28 UTC

svn commit: r1773472 - /maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java

Author: rfscholte
Date: Fri Dec  9 20:55:28 2016
New Revision: 1773472

URL: http://svn.apache.org/viewvc?rev=1773472&view=rev
Log:
Also show if modules are automatic (=calculated module name based on filename)

Modified:
    maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java

Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java?rev=1773472&r1=1773471&r2=1773472&view=diff
==============================================================================
--- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java (original)
+++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugins/dependency/utils/DependencyStatusSets.java Fri Dec  9 20:55:28 2016
@@ -218,12 +218,22 @@ public class DependencyStatusSets
             {
                 optionalMarker = " (optional) ";
             }
-            
+
             String moduleNameMarker = "";
-            String moduleName = getModuleName( artifact.getFile() );
-            if ( moduleName != null )
+
+            // dependencies:collect won't download jars
+            if ( artifact.getFile() != null )
             {
-                moduleNameMarker = " -- module " + moduleName;
+                ModuleDescriptor moduleDescriptor = getModuleDescriptor( artifact.getFile() );
+                if ( moduleDescriptor != null )
+                {
+                    moduleNameMarker = " -- module " + moduleDescriptor.name;
+
+                    if ( moduleDescriptor.automatic )
+                    {
+                        moduleNameMarker += " (auto)";
+                    }
+                }
             }
 
             artifactStringList.add( "   " + id + ( outputAbsoluteArtifactFilename ? ":" + artifactFilename : "" )
@@ -242,9 +252,9 @@ public class DependencyStatusSets
         return sb;
     }
     
-    private String getModuleName( File artifactFile )
+    private ModuleDescriptor getModuleDescriptor( File artifactFile )
     {
-        String moduleName = null;
+        ModuleDescriptor moduleDescriptor = null;
         try
         {
             // Use Java9 code to get moduleName, don't try to do it better with own implementation
@@ -263,7 +273,13 @@ public class DependencyStatusSets
             Object moduleDescriptorInstance = descriptorMethod.invoke( moduleReference );
             
             Method nameMethod = moduleDescriptorInstance.getClass().getDeclaredMethod( "name" );
-            moduleName = (String) nameMethod.invoke( moduleDescriptorInstance );
+            String name = (String) nameMethod.invoke( moduleDescriptorInstance );
+            
+            moduleDescriptor = new ModuleDescriptor();
+            moduleDescriptor.name = name;
+            
+            Method isAutomaticMethod = moduleDescriptorInstance.getClass().getDeclaredMethod( "isAutomatic" );
+            moduleDescriptor.automatic = (Boolean) isAutomaticMethod.invoke( moduleDescriptorInstance );
         }
         catch ( ClassNotFoundException e )
         {
@@ -289,7 +305,14 @@ public class DependencyStatusSets
         {
             // do nothing
         }
-        return moduleName;
+        return moduleDescriptor;
+    }
+    
+    private class ModuleDescriptor
+    {
+        String name;
+        
+        boolean automatic = true;
     }
     
 }