You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2014/02/12 17:44:14 UTC

git commit: Fix for multithreading configuration where you have something like -TC2.2

Updated Branches:
  refs/heads/master d8c57c441 -> 30fadd074


Fix for multithreading configuration where you have something like -TC2.2


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/30fadd07
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/30fadd07
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/30fadd07

Branch: refs/heads/master
Commit: 30fadd074ecf19a4c0a290c9253dfb11155b896c
Parents: d8c57c4
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Feb 12 11:42:20 2014 -0500
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Feb 12 11:43:51 2014 -0500

----------------------------------------------------------------------
 .../lifecycle/internal/LifecycleStarter.java    |  2 +-
 .../java/org/apache/maven/cli/MavenCli.java     | 25 +++++++++++++-------
 2 files changed, 18 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/30fadd07/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
index 5376e36..7b6a5de 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
@@ -112,7 +112,7 @@ public class LifecycleStarter
             }
 
             logger.info( "" );
-            logger.info( String.format( "Using the builder %s", builder.getClass().getName() ) );
+            logger.info( String.format( "Using the builder %s with a thread count of %s", builder.getClass().getName(), session.getRequest().getDegreeOfConcurrency() ) );
             builder.build( session, reactorContext, projectBuilds, taskSegments, reactorBuildStatus );
 
         }

http://git-wip-us.apache.org/repos/asf/maven/blob/30fadd07/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index f07ba4f..f7d72d7 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -1087,15 +1087,24 @@ public class MavenCli
         
         if ( threadConfiguration != null )
         {
+            //
+            // Default to the standard multithreaded builder
+            //
             request.setBuilderId( "multithreaded" );
-            
-            int threads =
-                threadConfiguration.contains( "C" ) ? Integer.valueOf( threadConfiguration.replace( "C", "" ) )
-                    * Runtime.getRuntime().availableProcessors() : Integer.valueOf( threadConfiguration );
-                    
-            request.setDegreeOfConcurrency( threads );
-        }         
-                
+
+            if ( threadConfiguration.contains( "C" ) )
+            {
+                request.setDegreeOfConcurrency( (int) ( Float.valueOf( threadConfiguration.replace( "C", "" ) ) * Runtime.getRuntime().availableProcessors() ) );
+            }
+            else
+            {
+                request.setDegreeOfConcurrency( Integer.valueOf( threadConfiguration ) );
+            }
+        }
+              
+        //
+        // Allow the builder to be overriden by the user if requested. The builders are now pluggable.
+        //
         if ( commandLine.hasOption( CLIManager.BUILDER ) )
         {          
             request.setBuilderId( commandLine.getOptionValue( CLIManager.BUILDER ) );