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/09/03 03:36:53 UTC
svn commit: r691458 [1/3] - in /maven/sandbox/trunk/mercury:
mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/
mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/
mercury-external/src/main/java/org/apache/maven/mer...
Author: ogusakov
Date: Tue Sep 2 18:36:50 2008
New Revision: 691458
URL: http://svn.apache.org/viewvc?rev=691458&view=rev
Log:
deployment its work for local and remote without authentication, with auth - fail. Recorded in http://jira.codehaus.org/browse/MERCURY-2
Added:
maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java (contents, props changed)
- copied, changed from r689883, maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessingException.java
maven/sandbox/trunk/mercury/mercury-it/src/test/filters/
maven/sandbox/trunk/mercury/mercury-it/src/test/filters/filter.txt
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/plexus.properties
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/nexus.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/security.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/apache-snapshots-remote/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-m1-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/central-remote/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/codehaus-snapshots-remote/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-merged/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/public-snapshots-merged/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/releases-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/snapshots-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/test-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/test-local/_0.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/test-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/test-local/segments_3 (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/test-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/_a.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/_a_1.del (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/_b.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/segments_p (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/timestamp (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/indexer/thirdparty-local/write.lock
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/apache-snapshots/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/central/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/central-m1/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/codehaus-snapshots/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/releases/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/snapshots/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/test/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/storage/thirdparty/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/repository-default_hosted_release.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/repository-default_hosted_snapshot.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/repository-default_proxy_release.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/repository-default_proxy_snapshot.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/template-store/repositoryShadow-default_virtual.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/_h.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/_i.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/_j.cfs (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/segments.gen (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/segments_15 (with props)
maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/timeline/write.lock
Removed:
maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessingException.java
maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryWriterM2Test.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/Messages.properties
Modified:
maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/Quality.java
maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/Messages.properties
maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java
maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessor.java
maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java
maven/sandbox/trunk/mercury/mercury-it/pom.xml
maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryReaderM2Test.java
maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryWriterM2Test.java
maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/LocalRepositoryWriterM2Test.java
maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryReaderM2Test.java
maven/sandbox/trunk/mercury/mercury-pom/pom.xml
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/AbstracRepositoryReader.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/Repository.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryReader.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/VirtualRepositoryReader.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-local-m2/src/main/java/org/apache/maven/mercury/repository/local/m2/LocalRepositoryReaderM2.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-local-m2/src/test/java/org/apache/maven/mercury/repository/local/m2/MetadataProcessorMock.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-remote-m2/pom.xml
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryM2.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryReaderM2.java
maven/sandbox/trunk/mercury/mercury-repo/mercury-repo-remote-m2/src/main/java/org/apache/maven/mercury/repository/remote/m2/RemoteRepositoryWriterM2.java
maven/sandbox/trunk/mercury/mercury-transport/mercury-transport-api/src/main/java/org/apache/maven/mercury/transport/api/Server.java
maven/sandbox/trunk/mercury/mercury-transport/mercury-transport-http/src/test/java/org/apache/maven/mercury/spi/http/server/SimplePutServer.java
maven/sandbox/trunk/mercury/mercury-util/src/main/java/org/apache/maven/mercury/util/FileUtil.java
Modified: maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/Quality.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/Quality.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/Quality.java (original)
+++ maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/Quality.java Tue Sep 2 18:36:50 2008
@@ -16,12 +16,18 @@
public static final int DEFAULT_QUANTITY = 0;
public static final int SNAPSHOT_TS_QUANTITY = 1;
+ public static final int FIXED_RELEASE_QUANTITY = -2;
+ public static final int FIXED_LATEST_QUANTITY = -3;
+
public static final Quality UNKNOWN_QUALITY = new Quality( QualityEnum.unknown, -1 );
public static final Quality SNAPSHOT_QUALITY = new Quality( QualityEnum.snapshot, DEFAULT_QUANTITY );
public static final Quality SNAPSHOT_TS_QUALITY = new Quality( QualityEnum.snapshot, SNAPSHOT_TS_QUANTITY );
public static final Quality ALPHA_QUALITY = new Quality( QualityEnum.alpha, DEFAULT_QUANTITY );
public static final Quality BETA_QUALITY = new Quality( QualityEnum.beta, DEFAULT_QUANTITY );
public static final Quality RELEASE_QUALITY = new Quality( QualityEnum.release, DEFAULT_QUANTITY );
+
+ public static final Quality FIXED_RELEASE_QUALITY = new Quality( QualityEnum.unknown, FIXED_RELEASE_QUANTITY );
+ public static final Quality FIXED_LATEST_QUALITY = new Quality( QualityEnum.unknown, FIXED_LATEST_QUANTITY );
private static final String snExp = ".+-(SNAPSHOT|\\d{8}\\.\\d{6}-\\d+)";
private static final String alphaExp = ".+-alpha-\\d+";
@@ -42,6 +48,21 @@
{
quality = QualityEnum.unknown;
quantity = -1;
+ return;
+ }
+
+ if( Artifact.RELEASE_VERSION.equals( version ) )
+ {
+ quality = QualityEnum.unknown;
+ quantity = FIXED_RELEASE_QUANTITY;
+ return;
+ }
+
+ if( Artifact.LATEST_VERSION.equals( version ) )
+ {
+ quality = QualityEnum.unknown;
+ quantity = FIXED_LATEST_QUANTITY;
+ return;
}
if( version.matches( snExp ) )
@@ -78,13 +99,13 @@
if( q == null )
return quality == null ? 0 : 1;
- int ql1 = (quality == null ? QualityEnum.unknown : quality).getId();
+ int ql = (quality == null ? QualityEnum.unknown : quality).getId();
int ql2 = (q.quality == null ? QualityEnum.unknown : q.quality).getId();
- if( ql1 == ql2 )
+ if( ql == ql2 )
{
// snapshots are always equal
- if( ql1 == QualityEnum.snapshot.getId() )
+ if( ql == QualityEnum.snapshot.getId() )
return 0;
else
return quantity - q.quantity;
@@ -94,12 +115,12 @@
// if( ql1 == QualityEnum.unknown.getId() )
// return -1;
- return sign(ql1 - ql2);
+ return sign(ql - ql2);
}
- private int sign( int i )
+ private static int sign( int i )
{
- return i<0 ? -1: i == 0 ? 0 : 1;
+ return i<0 ? -1:1;
}
@Override
@@ -109,6 +130,7 @@
{
return false;
}
+
if( obj.getClass().isAssignableFrom( Quality.class ))
return this.compareTo( (Quality)obj ) == 0;
else if( obj.getClass().isAssignableFrom( QualityEnum.class ))
Modified: maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/Messages.properties
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/Messages.properties?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/Messages.properties (original)
+++ maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/Messages.properties Tue Sep 2 18:36:50 2008
@@ -0,0 +1 @@
+bad.version.sn=version range cannot include SNAPSHOT, LATEST or RELEASE versions, found: {0}
\ No newline at end of file
Modified: maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java (original)
+++ maven/sandbox/trunk/mercury/mercury-artifact/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java Tue Sep 2 18:36:50 2008
@@ -1,7 +1,13 @@
package org.apache.maven.mercury.artifact.version;
+import java.util.List;
+
import org.apache.maven.mercury.artifact.Artifact;
+import org.apache.maven.mercury.artifact.Quality;
+import org.apache.maven.mercury.artifact.QualityEnum;
import org.apache.maven.mercury.artifact.QualityRange;
+import org.codehaus.plexus.i18n.DefaultLanguage;
+import org.codehaus.plexus.i18n.Language;
/**
* Single range implementation, similar to OSGi specification:
@@ -18,6 +24,7 @@
public class VersionRange
{
private static final DefaultArtifactVersion ZERO_VERSION = new DefaultArtifactVersion("0.0.0");
+ private static final Language _lang = new DefaultLanguage( VersionRange.class );
QualityRange _toQualityRange = QualityRange.ALL;
@@ -26,6 +33,7 @@
DefaultArtifactVersion _toVersion;
boolean _toInclusive = false;
+
//--------------------------------------------------------------------------------------------
public VersionRange( String range, QualityRange qRange )
throws VersionException
@@ -34,11 +42,13 @@
setToQualityRange( qRange );
}
//--------------------------------------------------------------------------------------------
- public VersionRange( String range )
+ public VersionRange( final String rangeIn )
throws VersionException
{
+ String range = AttributeQuery.stripExpression( rangeIn );
+
if( range == null || range.length() < 1 )
- return;
+ return;
if( range.indexOf(',') > 0 )
{
@@ -65,9 +75,13 @@
if( sFromT != null && sFromT.length() > 0 )
{
checkForValidCharacters( sFromT );
-// TODO og: look for snapshots
-// if( sFromT.indexOf( Artifact.SNAPSHOT_VERSION ) != -1 )
-// throw new VersionException();
+ // TODO og: look for LATEST,RELEASE and SNAPSHOT
+ Quality vq = new Quality( sFromT );
+ if( vq.getQuality().equals( QualityEnum.snapshot )
+ || vq.getQuality().equals( QualityEnum.unknown )
+ )
+ throw new VersionException( _lang.getMessage( "bad.version.sn", sFromT ) );
+
_fromVersion = new DefaultArtifactVersion( sFromT );
}
}
@@ -163,6 +177,44 @@
return false;
}
+
+ //--------------------------------------------------------------------------------------------
+ /**
+ * helpful latest version calculator
+ *
+ * @param versions
+ * @param noSnapshots
+ * @return
+ */
+ public static final String findLatest( final List<String> versions, final boolean noSnapshots )
+ {
+ DefaultArtifactVersion tempDav = null;
+ DefaultArtifactVersion tempDav2 = null;
+ String version = null;
+
+ // find latest
+ for( String vn : versions )
+ {
+ // RELEASE?
+ if( noSnapshots && vn.endsWith( Artifact.SNAPSHOT_VERSION ))
+ continue;
+
+ if( version == null )
+ {
+ version = vn;
+ tempDav = new DefaultArtifactVersion( vn );
+ continue;
+ }
+
+ tempDav2 = new DefaultArtifactVersion( vn );
+ if( tempDav2.compareTo( tempDav ) > 0 )
+ {
+ version = vn;
+ tempDav = tempDav2;
+ }
+ }
+ return version;
+ }
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
}
Modified: maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessor.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessor.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessor.java (original)
+++ maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessor.java Tue Sep 2 18:36:50 2008
@@ -8,5 +8,5 @@
public interface MetadataProcessor
{
List<ArtifactBasicMetadata> getDependencies( ArtifactBasicMetadata bmd, MetadataReader mdReader, Hashtable env )
- throws MetadataProcessingException;
+ throws MetadataReaderException;
}
Modified: maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java (original)
+++ maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java Tue Sep 2 18:36:50 2008
@@ -19,18 +19,19 @@
* @param classifier - replaces the getClassifier() from bmd if not null
* @param type - replaces the getType() from bmd if not null
* @return
- * @throws MetadataProcessingException
+ * @throws MetadataReaderException
+ * @throws RepositoryException
*/
public byte [] readRawData( ArtifactBasicMetadata bmd, String classifier, String type )
- throws MetadataProcessingException;
+ throws MetadataReaderException;
/**
* read metadata for the artifact, pointed by bmd. It will return POM bytes regardless of actual bmd type
*
* @param bmd
* @return
- * @throws MetadataProcessingException
+ * @throws MetadataReaderException
*/
public byte [] readMetadata( ArtifactBasicMetadata bmd )
- throws MetadataProcessingException;
+ throws MetadataReaderException;
}
Copied: maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java (from r689883, maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessingException.java)
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java?p2=maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java&p1=maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessingException.java&r1=689883&r2=691458&rev=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataProcessingException.java (original)
+++ maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java Tue Sep 2 18:36:50 2008
@@ -7,14 +7,14 @@
* @version $Id$
*
*/
-public class MetadataProcessingException
+public class MetadataReaderException
extends Exception
{
/**
*
*/
- public MetadataProcessingException()
+ public MetadataReaderException()
{
// TODO Auto-generated constructor stub
}
@@ -22,7 +22,7 @@
/**
* @param message
*/
- public MetadataProcessingException(
+ public MetadataReaderException(
String message )
{
super( message );
@@ -32,7 +32,7 @@
/**
* @param cause
*/
- public MetadataProcessingException(
+ public MetadataReaderException(
Throwable cause )
{
super( cause );
@@ -43,7 +43,7 @@
* @param message
* @param cause
*/
- public MetadataProcessingException(
+ public MetadataReaderException(
String message,
Throwable cause )
{
Propchange: maven/sandbox/trunk/mercury/mercury-external/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java
------------------------------------------------------------------------------
svn:mergeinfo =
Modified: maven/sandbox/trunk/mercury/mercury-it/pom.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/pom.xml?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/pom.xml (original)
+++ maven/sandbox/trunk/mercury/mercury-it/pom.xml Tue Sep 2 18:36:50 2008
@@ -10,11 +10,101 @@
<name>Mercury Integration Tests: ${project.version}</name>
<description>Mercury Integration Tests</description>
+ <properties>
+ <plexus.appbooter.version>1.4</plexus.appbooter.version>
+ <plexus.container.version>1.0-alpha-47</plexus.container.version>
+ <nexus.version>1.0.0</nexus.version>
+
+ <nexus-security-enabled>false</nexus-security-enabled>
+
+ <bundle-expanded-dir>target</bundle-expanded-dir>
+ <config-expanded-dir>target/test-nexus-config</config-expanded-dir>
+
+ <nexus-relative-basedir>${bundle-expanded-dir}/nexus-webapp-${nexus.version}</nexus-relative-basedir>
+ <nexus-abs-basedir>${project.build.directory}/nexus-webapp-${nexus.version}</nexus-abs-basedir>
+
+ <config-target-dir>${nexus-abs-basedir}/runtime/apps/nexus/conf</config-target-dir>
+ <work-target-dir>${nexus-abs-basedir}/runtime/work</work-target-dir>
+ <nexus-plexus-config-file>${nexus-abs-basedir}/conf/plexus.xml</nexus-plexus-config-file>
+
+ <nexus-application-protocol>http</nexus-application-protocol>
+ <nexus-application-host>localhost</nexus-application-host>
+ <nexus-application-name>nexus</nexus-application-name>
+ <nexus-application-port>8091</nexus-application-port>
+ <jetty-application-host>0.0.0.0</jetty-application-host>
+
+ <nexus-base-url>${nexus-application-protocol}://${nexus-application-host}:${nexus-application-port}/${nexus-application-name}/</nexus-base-url>
+
+ <nexus-control-port>33002</nexus-control-port>
+ </properties>
+
+ <build>
+
+ <filters>
+ <filter>src/test/filters/filter.txt</filter>
+ </filters>
+
+ <testResources>
+
+ <testResource>
+ <directory>src/test/resources</directory>
+ <filtering>true</filtering>
+ </testResource>
+
+ <testResource>
+ <directory>src/test/nexus</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>work/conf/**</exclude>
+ </excludes>
+ <targetPath>../nexus-webapp-${nexus.version}/runtime</targetPath>
+ </testResource>
+
+ <testResource>
+ <directory>src/test/nexus</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>work/conf/**</include>
+ </includes>
+ <targetPath>../nexus-webapp-${nexus.version}/runtime</targetPath>
+ </testResource>
+
+ <testResource>
+ <directory>src/test/nexus/conf</directory>
+ <filtering>true</filtering>
+ <targetPath>../nexus-webapp-${nexus.version}/conf</targetPath>
+ </testResource>
+
+ </testResources>
+
+ <plugins>
+ <plugin>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.0</version>
+ <executions>
+ <execution>
+ <id>unpack-bundle</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>unpack-dependencies</goal>
+ </goals>
+ <configuration>
+ <includeArtifactIds>nexus-webapp</includeArtifactIds>
+ <outputDirectory>${bundle-expanded-dir}</outputDirectory>
+ <excludes>**/conf/plexus.properties</excludes>
+ </configuration>
+ </execution>
+
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
<dependencies>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-repo-api</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -26,44 +116,44 @@
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-md-shared</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-util</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-crypto-basic</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-repo-local-m2</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-repo-local-m2</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-repo-remote-m2</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.mercury</groupId>
<artifactId>mercury-transport-http</artifactId>
- <version>1.0.0-alpha-1-SNAPSHOT</version>
+ <version>${project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
@@ -73,6 +163,22 @@
<version>1.8</version>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>org.sonatype.nexus</groupId>
+ <artifactId>nexus-webapp</artifactId>
+ <version>${nexus.version}</version>
+ <classifier>bundle</classifier>
+ <type>zip</type>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.sonatype.appbooter</groupId>
+ <artifactId>plexus-forked-app-booter</artifactId>
+ <version>${plexus.appbooter.version}</version>
+ </dependency>
+
</dependencies>
</project>
\ No newline at end of file
Added: maven/sandbox/trunk/mercury/mercury-it/src/test/filters/filter.txt
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/filters/filter.txt?rev=691458&view=auto
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/filters/filter.txt (added)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/filters/filter.txt Tue Sep 2 18:36:50 2008
@@ -0,0 +1,3 @@
+nexus.working.directory=${basedir}/target/nexus-webapp-${nexus.version}/runtime/work/nexus
+nexus.log.directory=${basedir}/target/runtime/apps/nexus/logs
+nexus.conf.directory=${basedir}/target/nexus-webapp-${nexus.version}/runtime/apps/nexus/conf
Modified: maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryReaderM2Test.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryReaderM2Test.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryReaderM2Test.java (original)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryReaderM2Test.java Tue Sep 2 18:36:50 2008
@@ -1,17 +1,12 @@
package org.apache.maven.mercury.repository.tests;
-import java.io.File;
-import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
-import java.util.Map;
import junit.framework.TestCase;
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.DefaultArtifact;
import org.apache.maven.mercury.artifact.QualityRange;
import org.apache.maven.mercury.builder.api.MetadataProcessor;
import org.apache.maven.mercury.crypto.api.StreamVerifierAttributes;
@@ -23,10 +18,7 @@
import org.apache.maven.mercury.repository.api.ArtifactResults;
import org.apache.maven.mercury.repository.api.Repository;
import org.apache.maven.mercury.repository.api.RepositoryException;
-import org.apache.maven.mercury.repository.api.AbstractRepOpResult;
import org.apache.maven.mercury.repository.api.RepositoryReader;
-import org.apache.maven.mercury.repository.local.m2.LocalRepositoryM2;
-import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
import org.apache.maven.mercury.transport.api.Server;
/**
@@ -215,6 +207,54 @@
assertNotNull( da.getPomBlob() );
}
//------------------------------------------------------------------------------
+ public void testReadVersionsLatest()
+ throws IllegalArgumentException, RepositoryException
+ {
+ bmd = new ArtifactBasicMetadata("a:a:LATEST");
+ query.add( bmd );
+
+ ArtifactBasicResults ror = reader.readVersions( query );
+
+ assertNotNull( ror );
+
+ if( ror.hasExceptions() )
+ System.out.println( ror.getExceptions() );
+
+ assertFalse( ror.hasExceptions() );
+ assertTrue( ror.hasResults() );
+
+ List<ArtifactBasicMetadata> deps = ror.getResult(bmd);
+
+ assertNotNull( deps );
+ assertEquals( 1, deps.size() );
+ assertTrue( deps.contains( new ArtifactBasicMetadata("a:a:5-SNAPSHOT") ) );
+
+ }
+ //------------------------------------------------------------------------------
+ public void testReadVersionsRelease()
+ throws IllegalArgumentException, RepositoryException
+ {
+ bmd = new ArtifactBasicMetadata("a:a:RELEASE");
+ query.add( bmd );
+
+ ArtifactBasicResults ror = reader.readVersions( query );
+
+ assertNotNull( ror );
+
+ if( ror.hasExceptions() )
+ System.out.println( ror.getExceptions() );
+
+ assertFalse( ror.hasExceptions() );
+ assertTrue( ror.hasResults() );
+
+ List<ArtifactBasicMetadata> deps = ror.getResult(bmd);
+
+ assertNotNull( deps );
+ assertEquals( 1, deps.size() );
+ assertTrue( deps.contains( new ArtifactBasicMetadata("a:a:4") ) );
+
+ }
+ //------------------------------------------------------------------------------
public void testReadLatest()
throws IllegalArgumentException, RepositoryException
{
Modified: maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryWriterM2Test.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryWriterM2Test.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryWriterM2Test.java (original)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/AbstractRepositoryWriterM2Test.java Tue Sep 2 18:36:50 2008
@@ -1,13 +1,11 @@
package org.apache.maven.mercury.repository.tests;
import java.io.File;
-import java.util.ArrayList;
+import java.net.MalformedURLException;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import junit.framework.TestCase;
-
import org.apache.maven.mercury.artifact.Artifact;
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
import org.apache.maven.mercury.artifact.DefaultArtifact;
@@ -19,10 +17,11 @@
import org.apache.maven.mercury.repository.api.Repository;
import org.apache.maven.mercury.repository.api.RepositoryReader;
import org.apache.maven.mercury.repository.api.RepositoryWriter;
-import org.apache.maven.mercury.repository.local.m2.LocalRepositoryM2;
-import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
import org.apache.maven.mercury.transport.api.Server;
import org.apache.maven.mercury.util.FileUtil;
+import org.codehaus.plexus.PlexusContainer;
+import org.codehaus.plexus.PlexusTestCase;
+import org.sonatype.appbooter.ForkedAppBooter;
/**
*
@@ -32,8 +31,14 @@
*
*/
public abstract class AbstractRepositoryWriterM2Test
-extends TestCase
+extends PlexusTestCase
{
+ public static final String TEST_NEXUS_ROLE = ForkedAppBooter.ROLE;
+ public static final String TEST_NEXUS_HINT = "NexusForkedAppBooter";
+
+ PlexusContainer plexus;
+ ForkedAppBooter nexusForkedAppBooter;
+
Repository repo;
File targetDirectory;
@@ -52,15 +57,69 @@
protected static final String keyId = "0EDB5D91141BC4F2";
protected static final String secretKeyFile = "/pgp/secring.gpg";
+ protected static final String publicKeyFile = "/pgp/pubring.gpg";
protected static final String secretKeyPass = "testKey82";
+ PgpStreamVerifierFactory pgpF;
+ SHA1VerifierFactory sha1F;
+ HashSet<StreamVerifierFactory> vFacPgp;
+ HashSet<StreamVerifierFactory> vFacSha1;
+
Server server;
HashSet<StreamVerifierFactory> factories;
+ File f;
+
+ File artifactBinary;
+
+ /** current test works with snapshots */
+ abstract void setReleases() throws MalformedURLException;
+ /** current test works with releases */
+ abstract void setSnapshots() throws MalformedURLException;
+
+
+ @Override
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+
+ pgpF = new PgpStreamVerifierFactory(
+ new StreamVerifierAttributes( PgpStreamVerifierFactory.DEFAULT_EXTENSION, false, true )
+ , getClass().getResourceAsStream( publicKeyFile )
+ );
+ sha1F = new SHA1VerifierFactory( false, false );
+
+ vFacPgp = new HashSet<StreamVerifierFactory>(1);
+ vFacSha1 = new HashSet<StreamVerifierFactory>(1);
+
+ vFacPgp.add( pgpF );
+ vFacSha1.add( sha1F );
+
+ artifactBinary = File.createTempFile( "test-repo-writer", "bin" );
+ FileUtil.writeRawData( artifactBinary, getClass().getResourceAsStream( "/maven-core-2.0.9.jar" ) );
+
+ plexus = getContainer();
+ nexusForkedAppBooter = (ForkedAppBooter)plexus.lookup( TEST_NEXUS_ROLE, TEST_NEXUS_HINT );
+
+ nexusForkedAppBooter.start();
+ }
+
+ @Override
+ protected void tearDown()
+ throws Exception
+ {
+ super.tearDown();
+ nexusForkedAppBooter.stop();
+ }
+
public void testWriteArtifact()
throws Exception
{
+ setReleases();
+
File af = new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.jar");
+
assertFalse( af.exists() );
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.jar.asc").exists() );
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.jar.sha1").exists() );
@@ -70,7 +129,6 @@
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.pom.asc").exists() );
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.pom.sha1").exists() );
-
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()).exists() );
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()+".asc").exists() );
assertFalse( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()+".sha1").exists() );
@@ -81,38 +139,51 @@
Set<Artifact> artifacts = new HashSet<Artifact>(3);
DefaultArtifact da = new DefaultArtifact( new ArtifactBasicMetadata("org.apache.maven:maven-core:2.0.9") );
+
da.setPomBlob( FileUtil.readRawData( getClass().getResourceAsStream( "/maven-core-2.0.9.pom" ) ) );
- da.setStream( getClass().getResourceAsStream( "/maven-core-2.0.9.jar" ) );
+ da.setFile( artifactBinary );
artifacts.add( da );
writer.writeArtifact( artifacts );
- assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()).exists() );
+ f = new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName());
+ assertTrue( f.exists() );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()+".asc").exists() );
+ FileUtil.verify( f, vFacPgp, false, true );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/"+repo.getMetadataName()+".sha1").exists() );
+ FileUtil.verify( f, vFacSha1, false, true );
- assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/"+repo.getMetadataName()).exists() );
+ f = new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/"+repo.getMetadataName());
+ assertTrue( f.exists() );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/"+repo.getMetadataName()+".asc").exists() );
+ FileUtil.verify( f, vFacPgp, false, true );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/"+repo.getMetadataName()+".sha1").exists() );
-
+ FileUtil.verify( f, vFacSha1, false, true );
+
assertTrue( af.exists() );
assertEquals( 159630, af.length() );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.jar.asc").exists() );
+ FileUtil.verify( af, vFacPgp, false, true );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.jar.sha1").exists() );
+ FileUtil.verify( af, vFacSha1, false, true );
assertTrue( ap.exists() );
assertEquals( 7785, ap.length() );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.pom.asc").exists() );
+ FileUtil.verify( ap, vFacPgp, false, true );
assertTrue( new File( targetDirectory, "/org/apache/maven/maven-core/2.0.9/maven-core-2.0.9.pom.sha1").exists() );
+ FileUtil.verify( ap, vFacSha1, false, true );
}
public void testWriteSnapshotAsTS()
throws Exception
{
+ setSnapshots();
+
Set<Artifact> artifacts = new HashSet<Artifact>(3);
DefaultArtifact da = new DefaultArtifact( new ArtifactBasicMetadata("org.apache.maven:maven-core:2.0.9-20080805.215925-8") );
da.setPomBlob( FileUtil.readRawData( getClass().getResourceAsStream( "/maven-core-2.0.9.pom" ) ) );
- da.setStream( getClass().getResourceAsStream( "/maven-core-2.0.9.jar" ) );
+ da.setFile( artifactBinary );
artifacts.add( da );
writer.writeArtifact( artifacts );
@@ -129,10 +200,12 @@
public void testWriteSnapshot()
throws Exception
{
+ setSnapshots();
+
Set<Artifact> set = new HashSet<Artifact>(3);
DefaultArtifact da = new DefaultArtifact( new ArtifactBasicMetadata("org.apache.maven:maven-core:2.0.9-SNAPSHOT") );
da.setPomBlob( FileUtil.readRawData( getClass().getResourceAsStream( "/maven-core-2.0.9.pom" ) ) );
- da.setStream( getClass().getResourceAsStream( "/maven-core-2.0.9.jar" ) );
+ da.setFile( artifactBinary );
set.add( da );
writer.writeArtifact( set );
@@ -146,16 +219,4 @@
assertEquals( 7785, ap.length() );
}
- public void ntestTemp()
- throws Exception
- {
- Set<Artifact> set = new HashSet<Artifact>(3);
- DefaultArtifact da = new DefaultArtifact( new ArtifactBasicMetadata("a:a:4") );
- da.setPomBlob( FileUtil.readRawData( getClass().getResourceAsStream( "/a-4.pom" ) ) );
- da.setStream( getClass().getResourceAsStream( "/a-4.jar" ) );
- set.add( da );
-
- writer.writeArtifact( set );
- }
-
}
Modified: maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/LocalRepositoryWriterM2Test.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/LocalRepositoryWriterM2Test.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/LocalRepositoryWriterM2Test.java (original)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/LocalRepositoryWriterM2Test.java Tue Sep 2 18:36:50 2008
@@ -1,24 +1,15 @@
package org.apache.maven.mercury.repository.tests;
import java.io.File;
+import java.net.MalformedURLException;
import java.util.ArrayList;
import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import junit.framework.TestCase;
-
-import org.apache.maven.mercury.artifact.Artifact;
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
-import org.apache.maven.mercury.artifact.DefaultArtifact;
-import org.apache.maven.mercury.builder.api.MetadataProcessor;
import org.apache.maven.mercury.crypto.api.StreamVerifierAttributes;
import org.apache.maven.mercury.crypto.api.StreamVerifierFactory;
import org.apache.maven.mercury.crypto.pgp.PgpStreamVerifierFactory;
import org.apache.maven.mercury.crypto.sha.SHA1VerifierFactory;
-import org.apache.maven.mercury.repository.api.Repository;
-import org.apache.maven.mercury.repository.api.RepositoryReader;
-import org.apache.maven.mercury.repository.api.RepositoryWriter;
import org.apache.maven.mercury.repository.local.m2.LocalRepositoryM2;
import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
import org.apache.maven.mercury.transport.api.Server;
@@ -39,6 +30,8 @@
protected void setUp()
throws Exception
{
+ super.setUp();
+
targetDirectory = new File("./target/test-classes/tempRepo");
FileUtil.copy( new File("./target/test-classes/repo"), targetDirectory, true );
@@ -64,5 +57,17 @@
reader = repo.getReader( mdProcessor );
writer = repo.getWriter();
}
+
+ @Override
+ void setReleases()
+ throws MalformedURLException
+ {
+ }
+
+ @Override
+ void setSnapshots()
+ throws MalformedURLException
+ {
+ }
}
Modified: maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryReaderM2Test.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryReaderM2Test.java?rev=691458&r1=691457&r2=691458&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryReaderM2Test.java (original)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/RemoteRepositoryReaderM2Test.java Tue Sep 2 18:36:50 2008
@@ -9,19 +9,11 @@
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
-import java.util.Map;
-
-import junit.framework.TestCase;
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
-import org.apache.maven.mercury.artifact.ArtifactMetadata;
-import org.apache.maven.mercury.artifact.QualityRange;
-import org.apache.maven.mercury.builder.api.MetadataProcessingException;
-import org.apache.maven.mercury.builder.api.MetadataProcessor;
-import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
+import org.apache.maven.mercury.builder.api.MetadataReaderException;
import org.apache.maven.mercury.repository.api.RepositoryException;
-import org.apache.maven.mercury.repository.api.AbstractRepOpResult;
-import org.apache.maven.mercury.repository.api.RepositoryReader;
+import org.apache.maven.mercury.repository.local.m2.MetadataProcessorMock;
import org.apache.maven.mercury.repository.metadata.Metadata;
import org.apache.maven.mercury.repository.metadata.io.xpp3.MetadataXpp3Reader;
import org.apache.maven.mercury.repository.remote.m2.RemoteRepositoryM2;
@@ -135,7 +127,7 @@
}
//-------------------------------------------------------------------------
public void testReadRemoteMdViaRepositoryReader()
- throws FileNotFoundException, IOException, XmlPullParserException, RepositoryException, MetadataProcessingException
+ throws FileNotFoundException, IOException, XmlPullParserException, RepositoryException, MetadataReaderException
{
byte [] mmBuf = reader.readRawData( "a/a/maven-metadata.xml" );
Added: maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/plexus.properties
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/plexus.properties?rev=691458&view=auto
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/plexus.properties (added)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/conf/plexus.properties Tue Sep 2 18:36:50 2008
@@ -0,0 +1,5 @@
+applicationPort=${nexus-application-port}
+runtime=${basedir}/runtime
+apps=${runtime}/apps
+nexus-work=${basedir}/../sonatype-work/nexus
+webapp=${runtime}/apps/nexus/webapp
Added: maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/nexus.xml
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/nexus.xml?rev=691458&view=auto
==============================================================================
--- maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/nexus.xml (added)
+++ maven/sandbox/trunk/mercury/mercury-it/src/test/nexus/work/conf/nexus.xml Tue Sep 2 18:36:50 2008
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nexusConfiguration>
+ <version>1.0.5</version>
+
+ <security>
+ <enabled>${nexus-security-enabled}</enabled>
+ <anonymousAccessEnabled>false</anonymousAccessEnabled>
+ <realms>
+ <realm>default</realm>
+ </realms>
+ </security>
+
+ <globalConnectionSettings />
+ <restApi />
+ <httpProxy>
+ <enabled>true</enabled>
+ </httpProxy>
+ <routing>
+ <groups />
+ </routing>
+ <repositories>
+ <repository>
+ <id>central</id>
+ <name>Maven Central</name>
+ <artifactMaxAge>-1</artifactMaxAge>
+ <remoteStorage>
+ <url>http://repo1.maven.org/maven2/</url>
+ </remoteStorage>
+ </repository>
+ <repository>
+ <id>apache-snapshots</id>
+ <name>Apache Snapshots</name>
+ <repositoryPolicy>snapshot</repositoryPolicy>
+ <remoteStorage>
+ <url>http://people.apache.org/repo/m2-snapshot-repository</url>
+ </remoteStorage>
+ </repository>
+ <repository>
+ <id>codehaus-snapshots</id>
+ <name>Codehaus Snapshots</name>
+ <repositoryPolicy>snapshot</repositoryPolicy>
+ <remoteStorage>
+ <url>http://snapshots.repository.codehaus.org/</url>
+ </remoteStorage>
+ </repository>
+ <repository>
+ <id>releases</id>
+ <name>Releases</name>
+ <allowWrite>true</allowWrite>
+ <artifactMaxAge>-1</artifactMaxAge>
+ </repository>
+ <repository>
+ <id>snapshots</id>
+ <name>Snapshots</name>
+ <allowWrite>true</allowWrite>
+ <repositoryPolicy>snapshot</repositoryPolicy>
+ </repository>
+ <repository>
+ <id>thirdparty</id>
+ <name>3rd party</name>
+ <allowWrite>true</allowWrite>
+ <artifactMaxAge>-1</artifactMaxAge>
+ </repository>
+ <repository>
+ <id>test</id>
+ <name>test</name>
+ <allowWrite>true</allowWrite>
+ <checksumPolicy>ignore</checksumPolicy>
+ </repository>
+ </repositories>
+ <repositoryShadows>
+ <repositoryShadow>
+ <id>central-m1</id>
+ <name>Central M1 shadow</name>
+ <shadowOf>central</shadowOf>
+ </repositoryShadow>
+ </repositoryShadows>
+ <repositoryGrouping>
+ <pathMappings>
+ <pathMapping>
+ <id>inhouse-stuff</id>
+ <groupId>*</groupId>
+ <routePattern>.*/(com|org)/somecompany/.*</routePattern>
+ <routeType>inclusive</routeType>
+ <repositories>
+ <repository>snapshots</repository>
+ <repository>releases</repository>
+ </repositories>
+ </pathMapping>
+ <pathMapping>
+ <id>apache-stuff</id>
+ <groupId>*</groupId>
+ <routePattern>.*/org/some-oss/.*</routePattern>
+ <routeType>exclusive</routeType>
+ <repositories>
+ <repository>releases</repository>
+ <repository>snapshots</repository>
+ </repositories>
+ </pathMapping>
+ </pathMappings>
+ <repositoryGroups>
+ <repositoryGroup>
+ <groupId>public</groupId>
+ <name>Public Repositories</name>
+ <repositories>
+ <repository>releases</repository>
+ <repository>snapshots</repository>
+ <repository>thirdparty</repository>
+ <repository>central</repository>
+ </repositories>
+ </repositoryGroup>
+ <repositoryGroup>
+ <groupId>public-snapshots</groupId>
+ <name>Public Snapshot Repositories</name>
+ <repositories>
+ <repository>apache-snapshots</repository>
+ <repository>codehaus-snapshots</repository>
+ </repositories>
+ </repositoryGroup>
+ </repositoryGroups>
+ </repositoryGrouping>
+ <repositoryTargets>
+ <repositoryTarget>
+ <id>1</id>
+ <name>All (Maven2)</name>
+ <contentClass>maven2</contentClass>
+ <patterns>
+ <pattern>.*</pattern>
+ </patterns>
+ </repositoryTarget>
+ <repositoryTarget>
+ <id>2</id>
+ <name>All (Maven1)</name>
+ <contentClass>maven1</contentClass>
+ <patterns>
+ <pattern>.*</pattern>
+ </patterns>
+ </repositoryTarget>
+ <repositoryTarget>
+ <id>3</id>
+ <name>All but sources (Maven2)</name>
+ <contentClass>maven2</contentClass>
+ <patterns>
+ <pattern>(?!.*-sources.*).*</pattern>
+ </patterns>
+ </repositoryTarget>
+ <repositoryTarget>
+ <id>4</id>
+ <name>All Metadata (Maven2)</name>
+ <contentClass>maven2</contentClass>
+ <patterns>
+ <pattern>.*maven-metadata\.xml.*</pattern>
+ </patterns>
+ </repositoryTarget>
+ </repositoryTargets>
+ <smtpConfiguration>
+ <host>smtp-host</host>
+ <port>25</port>
+ <username>smtp-username</username>
+ <password>smtp-password</password>
+ <systemEmailAddress>system@nexus.org</systemEmailAddress>
+ </smtpConfiguration>
+</nexusConfiguration>