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 2009/04/27 17:43:02 UTC

svn commit: r769031 - in /maven/components/branches/MNG-2766: ./ maven-compat/src/main/java/org/apache/maven/artifact/manager/ maven-compat/src/test/java/org/apache/maven/artifact/manager/ maven-core/src/main/java/org/apache/maven/ maven-core/src/main/...

Author: jvanzyl
Date: Mon Apr 27 15:43:01 2009
New Revision: 769031

URL: http://svn.apache.org/viewvc?rev=769031&view=rev
Log:
o push in changes to sync up with shane

Removed:
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
Modified:
    maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
    maven/components/branches/MNG-2766/maven-compat/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutor.java
    maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
    maven/components/branches/MNG-2766/maven-embedder/src/main/java/org/apache/maven/cli/CLIRequestUtils.java
    maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
    maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
    maven/components/branches/MNG-2766/maven-repository/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java
    maven/components/branches/MNG-2766/pom.xml

Modified: maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java (original)
+++ maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java Mon Apr 27 15:43:01 2009
@@ -116,6 +116,8 @@
     {
         String protocol = repository.getProtocol();
 
+        System.out.println( "PROTOCOL: " + protocol );
+        
         if ( protocol == null )
         {
             throw new UnsupportedProtocolException( "The repository " + repository + " does not specify a protocol" );

Modified: maven/components/branches/MNG-2766/maven-compat/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-compat/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-compat/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java (original)
+++ maven/components/branches/MNG-2766/maven-compat/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java Mon Apr 27 15:43:01 2009
@@ -72,6 +72,12 @@
         artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
     }
     
+    public void testAvailableProtocols()
+        throws Exception
+    {
+        wagonManager.getWagon( "file" );
+    }    
+    
     public void testUnnecessaryRepositoryLookup() throws Exception {
         Artifact artifact = createTestPomArtifact( "target/test-data/get-missing-pom" );
 

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/DefaultMaven.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/DefaultMaven.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/DefaultMaven.java Mon Apr 27 15:43:01 2009
@@ -171,7 +171,7 @@
     protected List<MavenProject> getProjects( MavenExecutionRequest request )
         throws MavenExecutionException
     {
-        List<File> files = Arrays.asList( new File[] { new File( request.getPomFile() ) } );
+        List<File> files = Arrays.asList( new File[] { request.getPom() } );
 
         List<MavenProject> projects = collectProjects( files, request );
 

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java Mon Apr 27 15:43:01 2009
@@ -182,12 +182,6 @@
         return properties;
     }
 
-    /** @deprecated use {@link #getPom()} */
-    public String getPomFile()
-    {
-        return pom.getAbsolutePath();
-    }
-
     public File getPom()
     {
         return pom;

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java Mon Apr 27 15:43:01 2009
@@ -105,11 +105,6 @@
     MavenExecutionRequest setRecursive( boolean recursive );
     boolean isRecursive();
 
-    // Pom
-    MavenExecutionRequest setPomFile( String pomFilename );
-
-    String getPomFile();
-
     MavenExecutionRequest setPom( File pom );
     File getPom();
 

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java Mon Apr 27 15:43:01 2009
@@ -60,6 +60,10 @@
     @Requirement
     private PluginManager pluginManager;
 
+    /**
+     * These mappings correspond to packaging types, like WAR packaging, which configure a particular mojos
+     * to run in a given phase.
+     */
     @Requirement
     private Map<String, LifecycleMapping> lifecycleMappings;
     
@@ -91,29 +95,8 @@
         {
             throw new BuildFailureException( "\n\nYou must specify at least one goal. Try 'mvn install' to build or 'mvn --help' for options \nSee http://maven.apache.org for more information.\n\n" );
         }
-
-        executeTaskSegments( goals, session, rootProject );
-    }
-
-    public List<String> getLifecyclePhases()
-    {
-        for ( Lifecycle lifecycle : lifecycles )
-        {
-            if ( lifecycle.getId().equals( "default" ) )
-            {
-                return (List<String>) lifecycle.getPhases();
-            }
-        }
-
-        return null;
-    }
-
-    private void executeTaskSegments( List<String> goals, MavenSession session, MavenProject rootProject )
-        throws LifecycleExecutionException, BuildFailureException
-    {
-        List<MavenProject> sortedProjects = session.getSortedProjects();
-
-        for ( MavenProject currentProject : sortedProjects )
+        
+        for ( MavenProject currentProject : session.getSortedProjects() )
         {
             if ( !session.getReactorManager().isBlackListed( currentProject ) )
             {
@@ -128,6 +111,7 @@
                     for ( String goal : goals )
                     {
                         String target = currentProject.getId() + " ( " + goal + " )";
+                        System.out.println( "target: " + target );
                         executeGoalAndHandleFailures( goal, session, currentProject, buildStartTime, target );
                     }
                 }
@@ -138,7 +122,7 @@
 
                 session.getReactorManager().registerBuildSuccess( currentProject, System.currentTimeMillis() - buildStartTime );
             }
-        }
+        }        
     }
 
     private void executeGoalAndHandleFailures( String task, MavenSession session, MavenProject project, long buildStartTime, String target )
@@ -192,6 +176,8 @@
         {
             MojoExecution mojoExecution = new MojoExecution( mojoDescriptor ); 
 
+            System.out.println( mojoExecution.getMojoDescriptor().getGoal() );
+            
             try
             {
                 pluginManager.executeMojo( session, mojoExecution );
@@ -219,22 +205,51 @@
     // 3. Find the mojos associated with the lifecycle given the project packaging (jar lifecycle mapping for the default lifecycle)
     // 4. Bind those mojos found in the lifecycle mapping for the packaging to the lifecycle
     // 5. Bind mojos specified in the project itself to the lifecycle
-    public List<MojoDescriptor> calculateLifecyclePlan( String task, MavenSession session )
+    public List<MojoDescriptor> calculateLifecyclePlan( String lifecyclePhase, MavenSession session )
         throws LifecycleExecutionException
-    {
+    {        
         // Extract the project from the session
         MavenProject project = session.getCurrentProject();
         
-        // 1. 
-        Lifecycle lifecycle = phaseToLifecycleMap.get( task );
+        // 1.
+        //
+        // Based on the lifecycle phase we are given, let's find the corresponding lifecycle.
+        //
+        Lifecycle lifecycle = phaseToLifecycleMap.get( lifecyclePhase );                
         
         // 2. 
-        LifecycleMapping lifecycleMappingForPackaging = lifecycleMappings.get( project.getPackaging() );
+        //
+        // If we are dealing with the "clean" or "site" lifecycle then there are currently no lifecycle mappings but there are default phases
+        // that need to be run instead.
+        //
+        // Now we need to take into account the packaging type of the project. For a project of type WAR, the lifecycle where mojos are mapped
+        // on to the given phases in the lifecycle are going to be a little different then, say, a project of type JAR.
+        //
+           
+        Map<String, String> lifecyclePhasesForPackaging;
         
+        if ( lifecyclePhase.equals( "clean" ) )
+        {
+            lifecyclePhasesForPackaging = new HashMap<String,String>();
+            
+            for( String phase : lifecycle.getDefaultPhases() )
+            {
+                lifecyclePhasesForPackaging.put( "clean", "org.apache.maven.plugins:maven-clean-plugin:clean" );
+            }
+        }
+        else
+        {
+            LifecycleMapping lifecycleMappingForPackaging = lifecycleMappings.get( project.getPackaging() );
+          
+            lifecyclePhasesForPackaging = lifecycleMappingForPackaging.getLifecycles().get( lifecycle.getId() ).getPhases();            
+        }
+                
         // 3.
-        Map<String, String> lifecyclePhasesForPackaging = lifecycleMappingForPackaging.getLifecycles().get( "default" ).getPhases();
-        
-        // Create an order Map of the phases in the lifecycle to a list of mojos to execute.
+        //
+        // Once we have the lifecycle mapping for the given packaging, we need to know whats phases we need to worry about executing.
+        //
+                        
+        // Create an ordered Map of the phases in the lifecycle to a list of mojos to execute.
         Map<String,List<String>> phaseToMojoMapping = new LinkedHashMap<String,List<String>>();
         
         // 4. 
@@ -255,21 +270,26 @@
             phaseToMojoMapping.put( phase, mojos );    
             
             // We only want to execute up to and including the specified lifecycle phase.
-            if ( phase.equals( task ) )
+            if ( phase.equals( lifecyclePhase ) )
             {
                 break;
             }
         }
               
         // 5. 
-        
+        //
+        // We are only interested in the phases that correspond to the lifecycle we are trying to run. If we are running the "clean"
+        // lifecycle we are not interested in goals -- like "generate-sources -- that belong to the default lifecycle.
+        //
         for( Plugin plugin : project.getBuild().getPlugins() )
         {
+            System.out.println( plugin.getArtifactId() );
+            
             for( PluginExecution execution : plugin.getExecutions() )
             {
                 // if the phase is specified then I don't have to go fetch the plugin yet and pull it down
                 // to examine the phase it is associated to.                
-                if ( execution.getPhase() != null )
+                if ( execution.getPhase() != null && execution.getPhase().equals( lifecyclePhase ) )
                 {
                     for( String goal : execution.getGoals() )
                     {
@@ -285,8 +305,18 @@
                     for( String goal : execution.getGoals() )
                     {
                         String s = plugin.getGroupId() + ":" + plugin.getArtifactId() + ":" + plugin.getVersion() + ":" + goal;
-                        MojoDescriptor md = getMojoDescriptor( s, session, project);
-                        phaseToMojoMapping.get( md.getPhase() ).add( s );
+                        MojoDescriptor md = getMojoDescriptor( s, session, project );
+                        
+                        boolean include = lifecycle.getPhases().contains( md.getPhase() );                        
+                        System.out.println( ">>> " + goal );
+                        System.out.println( ">>> " + md.getPhase() );                                                
+                        System.out.println( ">>> " + include );
+                        
+                        // need to know if this plugin belongs to a phase in the lifecycle that's running
+                        if ( md.getPhase() != null && include )
+                        {
+                            phaseToMojoMapping.get( md.getPhase() ).add( s );
+                        }
                     }
                 }
             }
@@ -307,13 +337,18 @@
             }
         }  
         
+        for ( MojoDescriptor md : lifecyclePlan )
+        {
+            System.out.println( md.getGoal() );
+        }
+        
         return lifecyclePlan;
     }  
            
     // org.apache.maven.plugins:maven-remote-resources-plugin:1.0:process
     MojoDescriptor getMojoDescriptor( String task, MavenSession session, MavenProject project )
         throws LifecycleExecutionException
-    {
+    {        
         String goal;
         
         Plugin plugin;
@@ -418,7 +453,7 @@
         for ( Lifecycle lifecycle : lifecycles )
         {
             for ( String phase : lifecycle.getPhases() )
-            {
+            {                
                 // The first definition wins.
                 if ( !phaseToLifecycleMap.containsKey( phase ) )
                 {
@@ -426,5 +461,18 @@
                 }
             }
         }
-    }
+    }   
+    
+    public List<String> getLifecyclePhases()
+    {
+        for ( Lifecycle lifecycle : lifecycles )
+        {
+            if ( lifecycle.getId().equals( "default" ) )
+            {
+                return (List<String>) lifecycle.getPhases();
+            }
+        }
+
+        return null;
+    }    
 }

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutor.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutor.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutor.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutor.java Mon Apr 27 15:43:01 2009
@@ -32,7 +32,15 @@
 {    
     List<String> getLifecyclePhases();
         
-    List<MojoDescriptor> calculateLifecyclePlan( String task, MavenSession session )
+    /**
+     * Calculate the list of {@link org.apache.maven.plugin.descriptor.MojoDescriptor} objects to run for the selected lifecycle phase.
+     * 
+     * @param phase
+     * @param session
+     * @return
+     * @throws LifecycleExecutionException
+     */
+    List<MojoDescriptor> calculateLifecyclePlan( String lifecyclePhase, MavenSession session )
         throws LifecycleExecutionException;
         
     void execute( MavenSession session )

Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Mon Apr 27 15:43:01 2009
@@ -197,15 +197,15 @@
         
         ArtifactRepository localRepository = session.getLocalRepository();
 
-        MavenProject pluginProject = buildPluginProject( plugin, localRepository, project.getRemoteArtifactRepositories() );
+        MavenProject pluginProject = buildPluginProject( plugin, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
 
         Artifact pluginArtifact = repositorySystem.createPluginArtifact( plugin );
 
-        checkRequiredMavenVersion( plugin, pluginProject, localRepository, project.getRemoteArtifactRepositories() );
+        checkRequiredMavenVersion( plugin, pluginProject, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
 
         pluginArtifact = project.replaceWithActiveArtifact( pluginArtifact );
 
-        ArtifactResolutionRequest request = new ArtifactResolutionRequest( pluginArtifact, localRepository, project.getRemoteArtifactRepositories() );
+        ArtifactResolutionRequest request = new ArtifactResolutionRequest( pluginArtifact, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
 
         ArtifactResolutionResult result = repositorySystem.resolve( request );
 
@@ -290,7 +290,7 @@
             Artifact pluginPomArtifact = repositorySystem.createProjectArtifact( pluginArtifact.getGroupId(), pluginArtifact.getArtifactId(), pluginArtifact.getVersion() );
             
             // This does not populate the artifacts of the dependenct projects
-            MavenProject pluginProject = mavenProjectBuilder.buildFromRepository( pluginPomArtifact, project.getRemoteArtifactRepositories(), localRepository );
+            MavenProject pluginProject = mavenProjectBuilder.buildFromRepository( pluginPomArtifact, new ArrayList( project.getRemoteArtifactRepositories() ), localRepository );
             
             // This needs to be changed so that the resolver deals with this
             for ( Dependency d : pluginProject.getDependencies() )
@@ -320,11 +320,11 @@
             .setArtifact( pluginArtifact )
             .setArtifactDependencies( dependencies )
             .setLocalRepository( localRepository )
-            .setRemoteRepostories( project.getRemoteArtifactRepositories() )
+            .setRemoteRepostories( new ArrayList( project.getRemoteArtifactRepositories() ) )
             .setManagedVersionMap( pluginManagedDependencies )
             .setFilter( filter )
             .setResolveRoot( false ); // We are setting this to false because the artifact itself has been resolved.
-
+        
         ArtifactResolutionResult result = repositorySystem.resolve( request );
         resolutionErrorHandler.throwErrors( request, result );
 
@@ -1084,7 +1084,7 @@
             .setResolveRoot( false )
             .setArtifactDependencies( project.getDependencyArtifacts() )
             .setLocalRepository( session.getLocalRepository() )
-            .setRemoteRepostories( project.getRemoteArtifactRepositories() )
+            .setRemoteRepostories( new ArrayList( project.getRemoteArtifactRepositories() ) )
             .setManagedVersionMap( project.getManagedVersionMap() )
             .setFilter( filter );
 
@@ -1095,7 +1095,7 @@
         project.setArtifacts( result.getArtifacts() );                
         
         ArtifactRepository localRepository = session.getLocalRepository();
-        List<ArtifactRepository> remoteArtifactRepositories = session.getCurrentProject().getRemoteArtifactRepositories();
+        List<ArtifactRepository> remoteArtifactRepositories = new ArrayList( session.getCurrentProject().getRemoteArtifactRepositories() );
 
         for ( Artifact projectArtifact : session.getCurrentProject().getArtifacts() )
         {            

Modified: maven/components/branches/MNG-2766/maven-embedder/src/main/java/org/apache/maven/cli/CLIRequestUtils.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-embedder/src/main/java/org/apache/maven/cli/CLIRequestUtils.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-embedder/src/main/java/org/apache/maven/cli/CLIRequestUtils.java (original)
+++ maven/components/branches/MNG-2766/maven-embedder/src/main/java/org/apache/maven/cli/CLIRequestUtils.java Mon Apr 27 15:43:01 2009
@@ -28,6 +28,7 @@
 import java.util.Map.Entry;
 
 import org.apache.commons.cli.CommandLine;
+import org.apache.maven.Maven;
 import org.apache.maven.MavenTransferListener;
 import org.apache.maven.embedder.MavenEmbedder;
 import org.apache.maven.execution.DefaultMavenExecutionRequest;
@@ -256,7 +257,10 @@
         if ( alternatePomFile != null )
         {
             request.setPom( new File( alternatePomFile ) );
-            System.out.println( "Request pom set to: " + request.getPom() );
+        }
+        else
+        {
+            request.setPom( new File( baseDirectory, Maven.POMv4 ) );
         }
 
         return request;

Modified: maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Mon Apr 27 15:43:01 2009
@@ -691,7 +691,7 @@
         {
             return domainModels;
         }
-
+        
         File parentFile = new File( projectDirectory, domainModel.getRelativePathOfParent() ).getCanonicalFile();
         if ( parentFile.isDirectory() )
         {
@@ -737,7 +737,7 @@
         	{
         		 if ( isParentLocal( parentDomainModel.getRelativePathOfParent(), parentFile.getParentFile() ) )
                  {
-        			 domainModels.addAll( getDomainModelParentsFromLocalPath( parentDomainModel, localRepository, remoteRepositories, topProject.getFile(), projectBuilderConfiguration ) );
+        			 domainModels.addAll( getDomainModelParentsFromLocalPath( parentDomainModel, localRepository, remoteRepositories, topProject.getFile().getParentFile(), projectBuilderConfiguration ) );
                  }
                  else
                  {

Modified: maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/MavenProject.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/MavenProject.java (original)
+++ maven/components/branches/MNG-2766/maven-project/src/main/java/org/apache/maven/project/MavenProject.java Mon Apr 27 15:43:01 2009
@@ -124,6 +124,8 @@
 
     private List<String> scriptSourceRoots = new ArrayList<String>();
 
+    private List<ArtifactRepository> pluginArtifactRepositories;
+
     private ArtifactRepository releaseArtifactRepository;
 
     private ArtifactRepository snapshotArtifactRepository;
@@ -164,6 +166,7 @@
     private ProjectBuilderConfiguration projectBuilderConfiguration;
 
     private RepositorySystem repositorySystem;
+    //
 
     private File parentFile;
 
@@ -1327,7 +1330,21 @@
         return build;
     }
 
-    //!!jvz remove ModelUtils
+    public void addPlugin( Plugin plugin )
+    {
+        Build build = getModelBuild();
+
+        if ( !build.getPluginsAsMap().containsKey( plugin.getKey() ) )
+        {
+            injectPluginManagementInfo( plugin );
+
+            build.addPlugin( plugin );
+
+            build.flushPluginMap();
+        }
+    }
+
+    //TODO: remove ModelUtils
     public void injectPluginManagementInfo( Plugin plugin )
     {
         PluginManagement pm = getModelBuild().getPluginManagement();
@@ -1359,6 +1376,7 @@
 
     public void setPluginArtifactRepositories( List<ArtifactRepository> pluginArtifactRepositories )
     {
+        this.pluginArtifactRepositories = pluginArtifactRepositories;
     }
 
     /**

Modified: maven/components/branches/MNG-2766/maven-repository/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-repository/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-repository/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java (original)
+++ maven/components/branches/MNG-2766/maven-repository/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java Mon Apr 27 15:43:01 2009
@@ -382,10 +382,8 @@
     }
 
     public ArtifactResolutionResult resolve( ArtifactResolutionRequest request )
-    {        
-        ArtifactResolutionResult res = artifactResolver.resolve( request );
-
-        return res;
+    {                
+        return artifactResolver.resolve( request );
     }
 
     public void setOnline( boolean online )

Modified: maven/components/branches/MNG-2766/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/pom.xml?rev=769031&r1=769030&r2=769031&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/pom.xml (original)
+++ maven/components/branches/MNG-2766/pom.xml Mon Apr 27 15:43:01 2009
@@ -439,6 +439,7 @@
             <useJava5>true</useJava5>
           </configuration>
           <executions>
+            <!--
             <execution>
               <id>site-docs</id>
               <phase>pre-site</phase>
@@ -447,6 +448,7 @@
                 <goal>xsd</goal>
               </goals>
             </execution>
+            -->
             <execution>
               <id>standard</id>
               <goals>
@@ -477,6 +479,11 @@
           <artifactId>maven-resources-plugin</artifactId>
           <version>2.4-SNAPSHOT</version>
         </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-remote-resources-plugin</artifactId>
+          <version>1.0.1-SNAPSHOT</version>
+        </plugin>        
       </plugins>
     </pluginManagement>
   </build>