Author: jdcasey
Date: Thu Apr 30 17:33:12 2009
New Revision: 770338

URL: http://svn.apache.org/viewvc?rev=770338&view=rev
Log:
[MNG-4133] Improve the error feedback for problems loading wagons from build 
extensions. Delay loading the actual wagons until they're needed, to prevent 
bringing down the whole build with an unloadable wagon that isn't going to be 
used.

Modified:
    
maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java

Modified: 
maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java?rev=770338&r1=770337&r2=770338&view=diff
==============================================================================
--- 
maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java
 (original)
+++ 
maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java
 Thu Apr 30 17:33:12 2009
@@ -45,6 +45,7 @@
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.PlexusContainerException;
+import org.codehaus.plexus.component.repository.ComponentDescriptor;
 import 
org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 import org.codehaus.plexus.context.Context;
 import org.codehaus.plexus.context.ContextException;
@@ -261,21 +262,15 @@
         return child;
     }
 
+    @SuppressWarnings("unchecked")
     public void registerWagons()
     {
         if ( extensionContainer != null )
         {
-            try
-            {
-                Map wagons = extensionContainer.lookupMap( Wagon.ROLE );
-                getLogger().debug( "Wagons to register: " + wagons.keySet() );
-                wagonManager.registerWagons( wagons.keySet(), 
extensionContainer );
-            }
-            catch ( ComponentLookupException e )
-            {
-                // no wagons found in the extension
-                getLogger().debug( "No wagons found in the extensions or other 
internal error: " + e.getMessage(), e );
-            }
+            Map<String, ComponentDescriptor> wagons = 
extensionContainer.getComponentDescriptorMap( Wagon.ROLE );
+            
+            getLogger().debug( "Wagons to register: " + wagons.keySet() );
+            wagonManager.registerWagons( wagons.keySet(), extensionContainer );
         }
         else
         {


Reply via email to