You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2008/12/12 20:44:38 UTC

svn commit: r726097 - in /maven/mercury/trunk: mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/

Author: ogusakov
Date: Fri Dec 12 11:44:38 2008
New Revision: 726097

URL: http://svn.apache.org/viewvc?rev=726097&view=rev
Log:
[MERCURY-56] adding repo authentication config

Modified:
    maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Config.java
    maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java
    maven/mercury/trunk/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/ArtifactBasicMetadata.java

Modified: maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Config.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Config.java?rev=726097&r1=726096&r2=726097&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Config.java (original)
+++ maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Config.java Fri Dec 12 11:44:38 2008
@@ -82,7 +82,9 @@
     String _dir;
     String _url;
     String _type;
-
+    String _authid;
+    String _proxyauthid;
+    
     public void setUrl( String url )
     {
       this._url = url;
@@ -97,11 +99,44 @@
     {
       this._type = type;
     }
+
+    public void setAuthid( String authid )
+    {
+      this._authid = authid;
+    }
+
+    public void setProxyauthid( String proxyauthid )
+    {
+      this._proxyauthid = proxyauthid;
+    }
     
     boolean isLocal()
     {
       return _dir != null;
     }
   }
+  
+  public class Auth
+  extends AbstractDataType
+  {
+    String _name;
+    String _pass;
+    String _certfile;
+    
+    public void setName( String name )
+    {
+      this._name = name;
+    }
+
+    public void setPass( String pass )
+    {
+      this._pass = pass;
+    }
+
+    public void setCertfile( String certfile )
+    {
+      this._certfile = certfile;
+    }
+  }
 
 }

Modified: maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java?rev=726097&r1=726096&r2=726097&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java (original)
+++ maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java Fri Dec 12 11:44:38 2008
@@ -1,17 +1,10 @@
 package org.apache.maven.mercury.ant.tasks;
 
-import java.net.MalformedURLException;
 import java.util.ArrayList;
-import java.util.Collection;
 import java.util.List;
 
 import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
-import org.apache.maven.mercury.metadata.DependencyBuilder;
-import org.apache.maven.mercury.metadata.DependencyBuilderFactory;
-import org.apache.maven.mercury.repository.api.Repository;
-import org.apache.maven.mercury.repository.api.RepositoryException;
 import org.apache.maven.mercury.util.Util;
-import org.apache.tools.ant.BuildException;
 import org.codehaus.plexus.lang.DefaultLanguage;
 import org.codehaus.plexus.lang.Language;
 
@@ -64,11 +57,23 @@
   public class Dependency
   {
     ArtifactBasicMetadata _amd;
+    
+    boolean _optional = false;
 
     public void setName( String name )
     {
       _amd = new ArtifactBasicMetadata( name );
+
+      _amd.setOptional( _optional );
     }
 
+    public void setOptional( boolean optional )
+    {
+      this._optional = optional;
+
+      if( _amd != null )
+        _amd.setOptional( optional );
+    }
+    
   }
 }
\ No newline at end of file

Modified: maven/mercury/trunk/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/ArtifactBasicMetadata.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/ArtifactBasicMetadata.java?rev=726097&r1=726096&r2=726097&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/ArtifactBasicMetadata.java (original)
+++ maven/mercury/trunk/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/ArtifactBasicMetadata.java Fri Dec 12 11:44:38 2008
@@ -20,7 +20,10 @@
 
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.LinkedHashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.StringTokenizer;
 
 import org.apache.maven.mercury.artifact.version.VersionException;
 import org.apache.maven.mercury.artifact.version.VersionRange;
@@ -70,6 +73,8 @@
   protected Collection<ArtifactBasicMetadata> inclusions;
   
   protected Collection<ArtifactBasicMetadata> exclusions;
+  
+  protected Map<String, String> attributes;
 
   /** 
    * transient helper objects, used by DependencyBuilder.
@@ -82,6 +87,56 @@
   {
   }
   //------------------------------------------------------------------
+  private void processAttributes( String as )
+  {
+    if( as == null || as.length() < 1 )
+      return;
+    
+    String attrString = as.trim();
+    
+    if( attrString == null || attrString.length() < 1 )
+      return;
+    
+    int fromCh = attrString.indexOf( '{' ); 
+    int toCh   = attrString.indexOf( '}' ); 
+    
+    if( fromCh != -1 && toCh != -1 )
+      attrString = attrString.substring( fromCh+1, toCh );
+    
+    String [] entries = attrString.split( "," );
+    
+    if( entries != null )
+      for( int i=0; i<entries.length; i++ )
+      {
+        String e = entries[i];
+        
+        if( e == null )
+          continue;
+        
+        int eq = e.indexOf( '=' );
+        
+        if( eq == -1 )
+          continue;
+        
+        if( attributes == null )
+          attributes = new LinkedHashMap<String, String>( entries.length );
+        
+        String name = e.substring( 0, eq );
+        
+        if( name == null )
+          continue;
+        
+        name = name.trim();
+
+        String val = e.substring( eq+1 );
+
+        if( val != null )
+          val = val.trim();
+        
+        attributes.put( name, val );
+      }
+  }
+  //------------------------------------------------------------------
   /**
    * create basic out of <b>group:artifact:version:classifier:type</b> string, use 
    * empty string to specify missing component - for instance query for common-1.3.zip
@@ -115,6 +170,12 @@
     
     if( this.type == null || this.type.length() < 1 )
       this.type = DEFAULT_ARTIFACT_TYPE;
+
+    if( count > 5 )
+      this.scope = nullify( tokens[5] );
+
+    if( count > 6 )
+      processAttributes( nullify( tokens[6] ) );
   }
   //------------------------------------------------------------------
   /**