Author: ogusakov
Date: Mon Dec 22 18:15:07 2008
New Revision: 728847

URL: http://svn.apache.org/viewvc?rev=728847&view=rev
Log:
[MERCURY-65] preparing alternative syntax for ant tasks

Modified:
    
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/AbstractAntTask.java
    
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/Dep.java
    
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ResolveTask.java
    
maven/mercury/trunk/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java

Modified: 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/AbstractAntTask.java
URL: 
http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/AbstractAntTask.java?rev=728847&r1=728846&r2=728847&view=diff
==============================================================================
--- 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/AbstractAntTask.java
 (original)
+++ 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/AbstractAntTask.java
 Mon Dec 22 18:15:07 2008
@@ -1,31 +1,61 @@
 package org.apache.maven.mercury.ant.tasks;
 
 import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Project;
 import org.apache.tools.ant.Task;
+import org.codehaus.plexus.lang.DefaultLanguage;
+import org.codehaus.plexus.lang.Language;
 
 /**
- * 
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class AbstractAntTask
-extends Task
+    extends Task
 {
-  protected boolean _failOnError = true;
-  
//----------------------------------------------------------------------------------------
-  public void setFailonerror( boolean failonerror )
-  {
-    this._failOnError = failonerror;
-  }
-  
//----------------------------------------------------------------------------------------
-  protected void throwIfEnabled( String msg )
-  throws BuildException
-  {
-    if( _failOnError )
-      throw new BuildException( msg );
-  }
-  
//----------------------------------------------------------------------------------------
-  
//----------------------------------------------------------------------------------------
+    private static final Language _lang = new DefaultLanguage( 
ResolveTask.class );
+
+    protected boolean _failOnError = true;
+
+    // 
----------------------------------------------------------------------------------------
+    public void setFailonerror( boolean failonerror )
+    {
+        this._failOnError = failonerror;
+    }
+
+    // 
----------------------------------------------------------------------------------------
+    protected void throwIfEnabled( String msg )
+        throws BuildException
+    {
+        if ( _failOnError )
+            throw new BuildException( msg );
+    }
+
+    // 
----------------------------------------------------------------------------------------
+    public static final Config findConfig( Project project, String configId )
+        throws Exception
+    {
+        Config config = null;
+
+        if ( configId == null )
+        {
+            config = new Config( null, null );
+        }
+        else
+        {
+            Object so = project.getReference( configId );
+
+            if ( so == null )
+                throw new Exception( _lang.getMessage( 
"config.id.object.null", configId ) );
+
+            if ( !Config.class.isAssignableFrom( so.getClass() ) )
+                throw new Exception( _lang.getMessage( 
"config.id.object.wrong", configId, so.getClass().getName() ) );
+
+            config = (Config) so;
+        }
+        
+        return config;
+    }
+    // 
----------------------------------------------------------------------------------------
+    // 
----------------------------------------------------------------------------------------
 }

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=728847&r1=728846&r2=728847&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
 Mon Dec 22 18:15:07 2008
@@ -1,6 +1,5 @@
 package org.apache.maven.mercury.ant.tasks;
 
-import java.io.File;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
@@ -11,6 +10,8 @@
 import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
 import org.apache.maven.mercury.artifact.ArtifactMetadata;
 import org.apache.maven.mercury.artifact.ArtifactScopeEnum;
+import org.apache.maven.mercury.logging.IMercuryLogger;
+import org.apache.maven.mercury.logging.MercuryLoggerManager;
 import org.apache.maven.mercury.metadata.DependencyBuilder;
 import org.apache.maven.mercury.metadata.DependencyBuilderFactory;
 import org.apache.maven.mercury.repository.api.ArtifactResults;
@@ -18,7 +19,6 @@
 import org.apache.maven.mercury.repository.virtual.VirtualRepositoryReader;
 import org.apache.maven.mercury.util.Util;
 import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.types.FileList;
 import org.apache.tools.ant.types.ResourceCollection;
 import org.codehaus.plexus.lang.DefaultLanguage;
 import org.codehaus.plexus.lang.Language;
@@ -32,22 +32,17 @@
 implements ResourceCollection
 {
     private static final Language _lang = new DefaultLanguage( Dep.class );
+    private static final IMercuryLogger _log = MercuryLoggerManager.getLogger( 
Dep.class ); 
 
     private List<Dependency> _dependencies;
     
     private List<Artifact> _artifacts;
+    
+    private String _configId;
 
-    private boolean _transitive = true;
+    private ArtifactScopeEnum _scope = ArtifactScopeEnum.compile;
 
-    public void setTransitive( boolean val )
-    {
-        this._transitive = val;
-    }
-
-    protected void setList( List<Dependency> dependencies )
-    {
-        _dependencies = dependencies;
-    }
+    private boolean _transitive = true;
 
     protected List<ArtifactBasicMetadata> getDependencies()
     {
@@ -97,6 +92,12 @@
 
     }
     
//----------------------------------------------------------------------------------------
+    protected List<Artifact> resolve()
+    throws Exception
+    {
+        return resolve( AbstractAntTask.findConfig( getProject(), _configId ), 
_scope );
+    }
+    
//----------------------------------------------------------------------------------------
     protected List<Artifact> resolve( Config config, ArtifactScopeEnum scope )
     throws Exception
     {
@@ -155,10 +156,30 @@
                 for ( Artifact a : artifacts )
                     _artifacts.add( a );
         }
-        
-        
+
         return _artifacts;
     }
+
+    // attributes
+    public void setConfigid( String configid )
+    {
+        this._configId = configid;
+    }
+
+    public void setScope( ArtifactScopeEnum scope )
+    {
+        this._scope = scope;
+    }
+    
+    public void setTransitive( boolean val )
+    {
+        this._transitive = val;
+    }
+
+    protected void setList( List<Dependency> dependencies )
+    {
+        _dependencies = dependencies;
+    }
     
//----------------------------------------------------------------------------------------
     public boolean isFilesystemOnly()
     {
@@ -167,12 +188,39 @@
 
     public Iterator iterator()
     {
-        return null;
+        try
+        {
+            List<Artifact> artifacts = resolve();
+            
+            if( Util.isEmpty( artifacts ) )
+                return null;
+            
+            return artifacts.iterator();
+        }
+        catch ( Exception e )
+        {
+            _log.error( e.getMessage() );
+            
+            return null;
+        }
     }
 
     public int size()
     {
-        // TODO Auto-generated method stub
-        return 0;
+        try
+        {
+            List<Artifact> artifacts = resolve();
+            
+            if( Util.isEmpty( artifacts ) )
+                return 0;
+            
+            return artifacts.size();
+        }
+        catch ( Exception e )
+        {
+            _log.error( e.getMessage() );
+            
+            return 0;
+        }
     }
 }
\ No newline at end of file

Modified: 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ResolveTask.java
URL: 
http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ResolveTask.java?rev=728847&r1=728846&r2=728847&view=diff
==============================================================================
--- 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ResolveTask.java
 (original)
+++ 
maven/mercury/trunk/mercury-ant/mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ResolveTask.java
 Mon Dec 22 18:15:07 2008
@@ -4,17 +4,9 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
-import java.util.Map;
 
 import org.apache.maven.mercury.artifact.Artifact;
-import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
-import org.apache.maven.mercury.artifact.ArtifactMetadata;
 import org.apache.maven.mercury.artifact.ArtifactScopeEnum;
-import org.apache.maven.mercury.metadata.DependencyBuilder;
-import org.apache.maven.mercury.metadata.DependencyBuilderFactory;
-import org.apache.maven.mercury.repository.api.ArtifactResults;
-import org.apache.maven.mercury.repository.api.Repository;
-import org.apache.maven.mercury.repository.virtual.VirtualRepositoryReader;
 import org.apache.maven.mercury.util.Util;
 import org.apache.tools.ant.BuildException;
 import org.apache.tools.ant.types.FileList;
@@ -45,7 +37,7 @@
 
     private String _depId;
 
-    private ArtifactScopeEnum scope = ArtifactScopeEnum.compile;
+    private ArtifactScopeEnum _scope = ArtifactScopeEnum.compile;
 
     private List<Dep.Dependency> _dependencies;
 
@@ -67,33 +59,6 @@
     public void execute()
         throws BuildException
     {
-
-        // Config
-
-        Config config = null;
-        if ( _configId == null )
-        {
-            config = new Config( null, null );
-        }
-        else
-        {
-            Object so = getProject().getReference( _configId );
-    
-            if ( so == null )
-            {
-                throwIfEnabled( _lang.getMessage( "config.id.object.null", 
_configId ) );
-                return;
-            }
-    
-            if ( !Config.class.isAssignableFrom( so.getClass() ) )
-            {
-                throwIfEnabled( _lang.getMessage( "config.id.object.wrong", 
_configId, so.getClass().getName() ) );
-                return;
-            }
-    
-            config = (Config) so;
-        }
-
         // Dependencies
         Dep dep = null;
 
@@ -154,7 +119,9 @@
 
         try
         {
-            Collection<Artifact> artifacts = dep.resolve( config, scope );
+            Config config = AbstractAntTask.findConfig( getProject(), 
_configId );
+            
+            Collection<Artifact> artifacts = dep.resolve( config, _scope );
 
             if ( artifacts == null )
                 return;
@@ -265,7 +232,7 @@
 
     public void setScope( ArtifactScopeEnum scope )
     {
-        this.scope = scope;
+        this._scope = scope;
     }
 
     public void addConfiguredDependency( Dep.Dependency dependency )

Modified: 
maven/mercury/trunk/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java
URL: 
http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java?rev=728847&r1=728846&r2=728847&view=diff
==============================================================================
--- 
maven/mercury/trunk/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java
 (original)
+++ 
maven/mercury/trunk/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java
 Mon Dec 22 18:15:07 2008
@@ -66,8 +66,8 @@
 extends AbstractRepositoryWriter
 implements RepositoryWriter
 {
-  private static final IMercuryLogger LOG = MercuryLoggerManager.getLogger( 
RemoteRepositoryWriterM2.class ); 
-  private static final Language LANG = new DefaultLanguage( 
RemoteRepositoryWriterM2.class );
+  private static final IMercuryLogger _log = MercuryLoggerManager.getLogger( 
RemoteRepositoryWriterM2.class ); 
+  private static final Language _lang = new DefaultLanguage( 
RemoteRepositoryWriterM2.class );
   
//---------------------------------------------------------------------------------------------------------------
   private static final String [] _protocols = new String [] { "http", "https", 
"dav", "webdav" };
   
@@ -86,10 +86,10 @@
     
     _server = repo.getServer();
     if( _server == null )
-      throw new IllegalArgumentException( LANG.getMessage( 
"bad.repository.server.null" ) );
+      throw new IllegalArgumentException( _lang.getMessage( 
"bad.repository.server.null" ) );
     
     if( _server.getURL() == null )
-      throw new IllegalArgumentException(LANG.getMessage( 
"bad.repository.server.url.null" ));
+      throw new IllegalArgumentException(_lang.getMessage( 
"bad.repository.server.url.null" ));
 
     _repo = repo;
     
@@ -151,10 +151,10 @@
   throws RepositoryException
   {
     if( artifact == null )
-      throw new RepositoryException( LANG.getMessage( "null.artifact") );
+      throw new RepositoryException( _lang.getMessage( "null.artifact") );
     
     if( artifact.getFile() == null || !artifact.getFile().exists() )
-      throw new RepositoryException( LANG.getMessage( "bad.artifact.file", 
artifact.toString(), (artifact.getFile() == null ? "null" : 
artifact.getFile().getAbsolutePath()) ) );
+      throw new RepositoryException( _lang.getMessage( "bad.artifact.file", 
artifact.toString(), (artifact.getFile() == null ? "null" : 
artifact.getFile().getAbsolutePath()) ) );
     
     boolean isPom = "pom".equals( artifact.getType() );
     
@@ -162,7 +162,7 @@
     boolean hasPomBlob = pomBlob != null && pomBlob.length > 0;
     
     if( !artifact.hasClassifier() && !hasPomBlob )
-      throw new RepositoryException( LANG.getMessage( 
"no.pom.in.primary.artifact", artifact.toString() ) );
+      throw new RepositoryException( _lang.getMessage( 
"no.pom.in.primary.artifact", artifact.toString() ) );
     
     InputStream in = artifact.getStream();
     if( in == null )
@@ -170,7 +170,7 @@
       File aFile = artifact.getFile();
       if( aFile == null && !isPom )
       {
-        throw new RepositoryException( LANG.getMessage( "artifact.no.stream", 
artifact.toString() ) );
+        throw new RepositoryException( _lang.getMessage( "artifact.no.stream", 
artifact.toString() ) );
       }
 
       try
@@ -180,7 +180,7 @@
       catch( FileNotFoundException e )
       {
         if( !isPom )
-          throw new RepositoryException( LANG.getMessage( "artifact.no.file", 
artifact.toString(), aFile.getAbsolutePath(), e.getMessage() ) );
+          throw new RepositoryException( _lang.getMessage( "artifact.no.file", 
artifact.toString(), aFile.getAbsolutePath(), e.getMessage() ) );
       }
     }
     DefaultArtifactVersion dav = new DefaultArtifactVersion( 
artifact.getVersion() );
@@ -195,7 +195,7 @@
       if( isPom )
       {
         if( in == null && !hasPomBlob )
-          throw new RepositoryException( LANG.getMessage( 
"pom.artifact.no.stream", artifact.toString() ) );
+          throw new RepositoryException( _lang.getMessage( 
"pom.artifact.no.stream", artifact.toString() ) );
         
         if( in != null )
         {


Reply via email to