Author: bentmann
Date: Tue Dec  8 17:12:02 2009
New Revision: 888488

URL: http://svn.apache.org/viewvc?rev=888488&view=rev
Log:
[MNG-4469] [regression] deploy:deploy-file fails with secured repository

Added:
    
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/
   (with props)
    
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/ArtifactRepositoryFactory.java
      - copied, changed from r888336, 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
    
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
      - copied, changed from r888336, 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
Modified:
    
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
    
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
    
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
    
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
    
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java

Modified: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java?rev=888488&r1=888487&r2=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
 Tue Dec  8 17:12:02 2009
@@ -19,11 +19,15 @@
  * under the License.
  */
 
-import java.util.HashMap;
-import java.util.Map;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.maven.artifact.UnknownRepositoryLayoutException;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.apache.maven.execution.MavenSession;
+import org.apache.maven.plugin.LegacySupport;
+import org.apache.maven.repository.RepositorySystem;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 
@@ -34,21 +38,20 @@
 public class DefaultArtifactRepositoryFactory
     implements ArtifactRepositoryFactory
 {
-    // TODO: use settings?
-    private String globalUpdatePolicy;
+    
+    @Requirement
+    private 
org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory factory;
 
-    private String globalChecksumPolicy;
+    @Requirement
+    private LegacySupport legacySupport;
 
-    // FIXME: This is a non-ThreadLocal cache!!
-    private final Map<String,ArtifactRepository> artifactRepositories = new 
HashMap<String,ArtifactRepository>();
-
-    @Requirement(role=ArtifactRepositoryLayout.class)
-    private Map<String,ArtifactRepositoryLayout> repositoryLayouts;
+    @Requirement
+    private RepositorySystem repositorySystem;
 
     public ArtifactRepositoryLayout getLayout( String layoutId )
         throws UnknownRepositoryLayoutException
     {
-        return repositoryLayouts.get( layoutId );
+        return factory.getLayout( layoutId );
     }
 
     public ArtifactRepository createDeploymentArtifactRepository( String id,
@@ -57,22 +60,7 @@
                                                                   boolean 
uniqueVersion )
         throws UnknownRepositoryLayoutException
     {
-        ArtifactRepositoryLayout layout = repositoryLayouts.get( layoutId );
-
-        checkLayout( id, layoutId, layout );
-
-        return createDeploymentArtifactRepository( id, url, layout, 
uniqueVersion );
-    }
-
-    private void checkLayout( String repositoryId,
-                              String layoutId,
-                              ArtifactRepositoryLayout layout )
-        throws UnknownRepositoryLayoutException
-    {
-        if ( layout == null )
-        {
-            throw new UnknownRepositoryLayoutException( repositoryId, layoutId 
);
-        }
+        return injectSession( factory.createDeploymentArtifactRepository( id, 
url, layoutId, uniqueVersion ), false );
     }
 
     public ArtifactRepository createDeploymentArtifactRepository( String id,
@@ -80,7 +68,7 @@
                                                                   
ArtifactRepositoryLayout repositoryLayout,
                                                                   boolean 
uniqueVersion )
     {
-        return createArtifactRepository( id, url, repositoryLayout, null, null 
);
+        return injectSession( factory.createDeploymentArtifactRepository( id, 
url, repositoryLayout, uniqueVersion ), false);
     }
 
     public ArtifactRepository createArtifactRepository( String id,
@@ -90,11 +78,7 @@
                                                         
ArtifactRepositoryPolicy releases )
         throws UnknownRepositoryLayoutException
     {
-        ArtifactRepositoryLayout layout = repositoryLayouts.get( layoutId );
-
-        checkLayout( id, layoutId, layout );
-
-        return createArtifactRepository( id, url, layout, snapshots, releases 
);
+        return injectSession( factory.createArtifactRepository( layoutId, url, 
layoutId, snapshots, releases ), true );
     }
 
     public ArtifactRepository createArtifactRepository( String id,
@@ -103,42 +87,42 @@
                                                         
ArtifactRepositoryPolicy snapshots,
                                                         
ArtifactRepositoryPolicy releases )
     {
-        if ( snapshots == null )
-        {
-            snapshots = new ArtifactRepositoryPolicy();
-        }
+        return injectSession( factory.createArtifactRepository( id, url, 
repositoryLayout, snapshots, releases ), true );
+    }
 
-        if ( releases == null )
-        {
-            releases = new ArtifactRepositoryPolicy();
-        }
+    public void setGlobalUpdatePolicy( String updatePolicy )
+    {
+        factory.setGlobalUpdatePolicy( updatePolicy );
+    }
 
-        if ( globalUpdatePolicy != null )
-        {
-            snapshots.setUpdatePolicy( globalUpdatePolicy );
-            releases.setUpdatePolicy( globalUpdatePolicy );
-        }
+    public void setGlobalChecksumPolicy( String checksumPolicy )
+    {
+        factory.setGlobalChecksumPolicy( checksumPolicy );
+    }
+
+    private ArtifactRepository injectSession( ArtifactRepository repository, 
boolean mirrors )
+    {
+        MavenSession session = legacySupport.getSession();
 
-        if ( globalChecksumPolicy != null )
+        if ( session != null && repository != null )
         {
-            snapshots.setChecksumPolicy( globalChecksumPolicy );
-            releases.setChecksumPolicy( globalChecksumPolicy );
-        }
+            MavenExecutionRequest request = session.getRequest();
+            if ( request != null )
+            {
+                List<ArtifactRepository> repositories = Arrays.asList( 
repository );
+
+                if ( mirrors )
+                {
+                    repositorySystem.injectMirror( repositories, 
request.getMirrors() );
+                }
 
-        ArtifactRepository repository = new MavenArtifactRepository( id, url, 
repositoryLayout, snapshots, releases );
+                repositorySystem.injectProxy( repositories, 
request.getProxies() );
 
-        artifactRepositories.put( id, repository );
+                repositorySystem.injectAuthentication( repositories, 
request.getServers() );
+            }
+        }
 
         return repository;
     }
 
-    public void setGlobalUpdatePolicy( String updatePolicy )
-    {
-        globalUpdatePolicy = updatePolicy;
-    }
-
-    public void setGlobalChecksumPolicy( String checksumPolicy )
-    {
-        globalChecksumPolicy = checksumPolicy;
-    }
- }
+}

Modified: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java?rev=888488&r1=888487&r2=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
 Tue Dec  8 17:12:02 2009
@@ -28,7 +28,7 @@
 import org.apache.maven.artifact.InvalidRepositoryException;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
 import org.apache.maven.artifact.repository.Authentication;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;

Propchange: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/
------------------------------------------------------------------------------
    bugtraq:label = Enter issue ID:

Propchange: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/
------------------------------------------------------------------------------
    bugtraq:message = Issue id: %BUGID%

Propchange: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/
------------------------------------------------------------------------------
    bugtraq:number = false

Propchange: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/
------------------------------------------------------------------------------
    bugtraq:url = http://jira.codehaus.org/browse/%BUGID%

Copied: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/ArtifactRepositoryFactory.java
 (from r888336, 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java)
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/ArtifactRepositoryFactory.java?p2=maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/ArtifactRepositoryFactory.java&p1=maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java&r1=888336&r2=888488&rev=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/ArtifactRepositoryFactory.java
 Tue Dec  8 17:12:02 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.artifact.repository;
+package org.apache.maven.repository.legacy.repository;
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
@@ -16,12 +16,13 @@
  */
 
 import org.apache.maven.artifact.UnknownRepositoryLayoutException;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
 
 /** @author jdcasey */
 public interface ArtifactRepositoryFactory
 {
-    String ROLE = ArtifactRepositoryFactory.class.getName();
 
     String DEFAULT_LAYOUT_ID = "default";
 

Copied: 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
 (from r888336, 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java)
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java?p2=maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java&p1=maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java&r1=888336&r2=888488&rev=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
 Tue Dec  8 17:12:02 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.artifact.repository;
+package org.apache.maven.repository.legacy.repository;
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
@@ -19,10 +19,12 @@
  * under the License.
  */
 
-import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.maven.artifact.UnknownRepositoryLayoutException;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
+import org.apache.maven.artifact.repository.MavenArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
@@ -39,9 +41,6 @@
 
     private String globalChecksumPolicy;
 
-    // FIXME: This is a non-ThreadLocal cache!!
-    private final Map<String,ArtifactRepository> artifactRepositories = new 
HashMap<String,ArtifactRepository>();
-
     @Requirement(role=ArtifactRepositoryLayout.class)
     private Map<String,ArtifactRepositoryLayout> repositoryLayouts;
 
@@ -127,8 +126,6 @@
 
         ArtifactRepository repository = new MavenArtifactRepository( id, url, 
repositoryLayout, snapshots, releases );
 
-        artifactRepositories.put( id, repository );
-
         return repository;
     }
 

Modified: 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java?rev=888488&r1=888487&r2=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
 Tue Dec  8 17:12:02 2009
@@ -29,7 +29,7 @@
 
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
 import org.apache.maven.artifact.repository.DefaultArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;

Modified: 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java?rev=888488&r1=888487&r2=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
 Tue Dec  8 17:12:02 2009
@@ -23,7 +23,7 @@
 import java.util.List;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
 import org.apache.maven.settings.Mirror;
 import org.codehaus.plexus.PlexusTestCase;

Modified: 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java?rev=888488&r1=888487&r2=888488&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
 (original)
+++ 
maven/maven-3/trunk/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
 Tue Dec  8 17:12:02 2009
@@ -29,7 +29,7 @@
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.metadata.ArtifactMetadata;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.repository.legacy.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
 import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;


Reply via email to