You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by br...@apache.org on 2005/06/08 02:59:54 UTC

svn commit: r189484 - in /maven/components/trunk/maven-artifact-ant: ./ src/main/java/org/apache/maven/artifact/ant/ src/main/resources/META-INF/plexus/

Author: brett
Date: Tue Jun  7 17:59:53 2005
New Revision: 189484

URL: http://svn.apache.org/viewcvs?rev=189484&view=rev
Log:
PR: MNG-440
read settings.xml for the local repository

Modified:
    maven/components/trunk/maven-artifact-ant/pom.xml
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactTask.java
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DeployTask.java
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/InstallTask.java
    maven/components/trunk/maven-artifact-ant/src/main/resources/META-INF/plexus/components.xml

Modified: maven/components/trunk/maven-artifact-ant/pom.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/pom.xml?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/pom.xml (original)
+++ maven/components/trunk/maven-artifact-ant/pom.xml Tue Jun  7 17:59:53 2005
@@ -25,6 +25,11 @@
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
+      <artifactId>maven-settings</artifactId>
+      <version>2.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
       <artifactId>maven-project</artifactId>
       <version>2.0-SNAPSHOT</version>
     </dependency>

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactTask.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactTask.java?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactTask.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactTask.java Tue Jun  7 17:59:53 2005
@@ -19,13 +19,21 @@
 import org.apache.maven.artifact.manager.WagonManager;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.settings.Settings;
+import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader;
 import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Project;
 import org.apache.tools.ant.Task;
 import org.codehaus.plexus.PlexusContainerException;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 import org.codehaus.plexus.embed.Embedder;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 
 import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
 
 /**
  * Base class for artifact tasks.
@@ -38,7 +46,9 @@
 {
     private Embedder embedder;
 
-    protected ArtifactRepository createArtifactRepository( LocalRepository repository )
+    private Settings settings;
+
+    protected ArtifactRepository createLocalArtifactRepository( LocalRepository repository )
     {
         ArtifactRepositoryLayout repositoryLayout = (ArtifactRepositoryLayout) lookup( ArtifactRepositoryLayout.ROLE,
                                                                                        repository.getLayout() );
@@ -49,7 +59,7 @@
         return new ArtifactRepository( "local", "file://" + repository.getLocation(), repositoryLayout );
     }
 
-    protected ArtifactRepository createArtifactRepository( RemoteRepository repository )
+    protected ArtifactRepository createRemoteArtifactRepository( RemoteRepository repository )
     {
         ArtifactRepositoryLayout repositoryLayout = (ArtifactRepositoryLayout) lookup( ArtifactRepositoryLayout.ROLE,
                                                                                        repository.getLayout() );
@@ -114,8 +124,57 @@
 
     protected LocalRepository getDefaultLocalRepository()
     {
+        Settings settings = getSettings();
         LocalRepository localRepository = new LocalRepository();
-        localRepository.setLocation( new File( System.getProperty( "user.home" ), ".m2/repository" ) );
+        localRepository.setLocation( new File( settings.getLocalRepository() ) );
         return localRepository;
+    }
+
+    protected synchronized Settings getSettings()
+    {
+        if ( settings == null )
+        {
+            settings = new Settings();
+
+            File settingsFile = new File( System.getProperty( "user.home" ), ".ant/settings.xml" );
+            if ( !settingsFile.exists() )
+            {
+                settingsFile = new File( System.getProperty( "user.home" ), ".m2/settings.xml" );
+            }
+
+            if ( settingsFile.exists() )
+            {
+                FileReader reader = null;
+                try
+                {
+                    reader = new FileReader( settingsFile );
+
+                    SettingsXpp3Reader modelReader = new SettingsXpp3Reader();
+
+                    settings = modelReader.read( reader );
+                }
+                catch ( IOException e )
+                {
+                    log( "Error reading settings file '" + settingsFile + "' - ignoring. Error was: " + e.getMessage(),
+                         Project.MSG_WARN );
+                }
+                catch ( XmlPullParserException e )
+                {
+                    log( "Error parsing settings file '" + settingsFile + "' - ignoring. Error was: " + e.getMessage(),
+                         Project.MSG_WARN );
+                }
+                finally
+                {
+                    IOUtil.close( reader );
+                }
+            }
+
+            if ( StringUtils.isEmpty( settings.getLocalRepository() ) )
+            {
+                String location = new File( System.getProperty( "user.home" ), ".m2/repository" ).getAbsolutePath();
+                settings.setLocalRepository( location );
+            }
+        }
+        return settings;
     }
 }

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java Tue Jun  7 17:59:53 2005
@@ -64,7 +64,7 @@
             localRepository = getDefaultLocalRepository();
         }
 
-        ArtifactRepository localRepo = createArtifactRepository( localRepository );
+        ArtifactRepository localRepo = createLocalArtifactRepository( localRepository );
 
         ArtifactResolver resolver = (ArtifactResolver) lookup( ArtifactResolver.ROLE );
         MavenProjectBuilder projectBuilder = (MavenProjectBuilder) lookup( MavenProjectBuilder.ROLE );
@@ -157,7 +157,7 @@
         List list = new ArrayList();
         for ( Iterator i = getRemoteRepositories().iterator(); i.hasNext(); )
         {
-            list.add( createArtifactRepository( (RemoteRepository) i.next() ) );
+            list.add( createRemoteArtifactRepository( (RemoteRepository) i.next() ) );
         }
         return list;
     }

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DeployTask.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DeployTask.java?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DeployTask.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DeployTask.java Tue Jun  7 17:59:53 2005
@@ -52,10 +52,10 @@
             localRepository = getDefaultLocalRepository();
         }
 
-        ArtifactRepository localRepo = createArtifactRepository( localRepository );
+        ArtifactRepository localRepo = createLocalArtifactRepository( localRepository );
         pom.initialise( (MavenProjectBuilder) lookup( MavenProjectBuilder.ROLE ), localRepo );
 
-        ArtifactRepository deploymentRepository = createArtifactRepository( remoteRepository );
+        ArtifactRepository deploymentRepository = createRemoteArtifactRepository( remoteRepository );
 
         // Deploy the POM
         Artifact artifact = new DefaultArtifact( pom.getGroupId(), pom.getArtifactId(), pom.getVersion(),

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/InstallTask.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/InstallTask.java?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/InstallTask.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/InstallTask.java Tue Jun  7 17:59:53 2005
@@ -51,7 +51,7 @@
             localRepository = getDefaultLocalRepository();
         }
 
-        ArtifactRepository localRepo = createArtifactRepository( localRepository );
+        ArtifactRepository localRepo = createLocalArtifactRepository( localRepository );
         pom.initialise( (MavenProjectBuilder) lookup( MavenProjectBuilder.ROLE ), localRepo );
 
         Artifact artifact = new DefaultArtifact( pom.getGroupId(), pom.getArtifactId(), pom.getVersion(),

Modified: maven/components/trunk/maven-artifact-ant/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/resources/META-INF/plexus/components.xml?rev=189484&r1=189483&r2=189484&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/resources/META-INF/plexus/components.xml (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/resources/META-INF/plexus/components.xml Tue Jun  7 17:59:53 2005
@@ -51,6 +51,9 @@
           <role>org.apache.maven.artifact.transform.ArtifactTransformation</role>
           <field-name>artifactTransformations</field-name>
         </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
+        </requirement>
       </requirements>
     </component>
 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org