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/04/21 12:41:00 UTC
svn commit: r164029 -
/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java
Author: brett
Date: Thu Apr 21 03:40:58 2005
New Revision: 164029
URL: http://svn.apache.org/viewcvs?rev=164029&view=rev
Log:
upload checksums
Modified:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java
Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java?rev=164029&r1=164028&r2=164029&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java Thu Apr 21 03:40:58 2005
@@ -48,6 +48,7 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.ArrayList;
public class DefaultWagonManager
extends AbstractLogEnabled
@@ -125,11 +126,17 @@
wagon.addTransferListener( downloadMonitor );
}
- // TODO: configure these
+ Map checksums = new HashMap();
+
+ // TODO: configure these on the repository
try
{
- wagon.addTransferListener( new ChecksumObserver( "MD5" ) );
- wagon.addTransferListener( new ChecksumObserver( "SHA-1" ) );
+ ChecksumObserver checksumObserver = new ChecksumObserver( "MD5" );
+ wagon.addTransferListener( checksumObserver );
+ checksums.put( "md5", checksumObserver );
+ checksumObserver = new ChecksumObserver( "SHA-1" );
+ wagon.addTransferListener( checksumObserver );
+ checksums.put( "sha1", checksumObserver );
}
catch ( NoSuchAlgorithmException e )
{
@@ -141,6 +148,22 @@
wagon.connect( repository, getProxy( repository.getProtocol() ) );
wagon.put( source, remotePath );
+
+ wagon.removeTransferListener( downloadMonitor );
+
+ // We do this in here so we can checksum the artifact metadata too, otherwise it could be metadata itself
+ for ( Iterator i = checksums.keySet().iterator(); i.hasNext(); )
+ {
+ String extension = (String) i.next();
+ ChecksumObserver observer = (ChecksumObserver) checksums.get( extension );
+
+ // TODO: shouldn't need a file intermediatary - improve wagon to take a stream
+ File temp = File.createTempFile( "maven-artifact", null );
+ temp.deleteOnExit();
+ FileUtils.fileWrite( temp.getAbsolutePath(), observer.getActualChecksum() );
+
+ wagon.put( temp, remotePath + "." + extension );
+ }
}
catch ( ConnectionException e )
{
@@ -157,6 +180,10 @@
catch ( ResourceDoesNotExistException e )
{
throw new TransferFailedException( "Resource to deploy not found: ", e );
+ }
+ catch ( IOException e )
+ {
+ throw new TransferFailedException( "Error creating temporary file for deployment: ", e );
}
finally
{
Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java?rev=164029&r1=164028&r2=164029&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/metadata/SnapshotArtifactMetadata.java Thu Apr 21 03:40:58 2005
@@ -144,6 +144,7 @@
try
{
+ // TODO: shouldn't need a file intermediatary - improve wagon to take a stream
File destination = File.createTempFile( "maven-artifact", null );
destination.deleteOnExit();
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org