You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2008/05/26 20:24:05 UTC
svn commit: r660262 - in /maven/sandbox/trunk/mercury/src:
main/java/org/apache/maven/mercury/
main/java/org/apache/maven/mercury/metadata/
main/java/org/apache/maven/mercury/repository/
main/java/org/apache/maven/mercury/repository/layout/ main/java/o...
Author: jvanzyl
Date: Mon May 26 11:24:00 2008
New Revision: 660262
URL: http://svn.apache.org/viewvc?rev=660262&view=rev
Log: (empty)
Added:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/DefaultRepositoryLayout.java
- copied, changed from r660105, maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRepositoryLayout.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/RepositoryLayout.java
- copied, changed from r660105, maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/RepositoryLayout.java
Removed:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRepositoryLayout.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/RepositoryLayout.java
Modified:
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/Artifact.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/DefaultArtifact.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/DefaultMetadataResolver.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataResolutionRequest.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataSource.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/AbstractRepository.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultLocalRepository.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRemoteRepository.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/DefaultArtifactRetriever.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionRequest.java
maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionResult.java
maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/metadata/MetadataResolverTest.java
maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/spi/http/server/SimpleTestServer.java
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/Artifact.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/Artifact.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/Artifact.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/Artifact.java Mon May 26 11:24:00 2008
@@ -84,45 +84,11 @@
String getId();
- String getDependencyConflictId();
-
- void setRepository( Repository remoteRepository );
-
- Repository getRepository();
-
- void updateVersion( String version, Repository localRepository );
-
- String getDownloadUrl();
-
- void setDownloadUrl( String downloadUrl );
-
- List<String> getDependencyTrail();
-
- void setDependencyTrail( List<String> dependencyTrail );
-
- void setScope( String scope );
-
- void selectVersion( String version );
-
void setGroupId( String groupId );
void setArtifactId( String artifactId );
-
- boolean isSnapshot();
-
- void setResolved( boolean resolved );
-
+
boolean isResolved();
-
- void setResolvedVersion( String version );
-
- boolean isRelease();
-
- void setRelease( boolean release );
-
- boolean isOptional();
-
- void setOptional( boolean optional );
-
- String getInheritedScope();
+
+ void setResolved( boolean resolved );
}
\ No newline at end of file
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/DefaultArtifact.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/DefaultArtifact.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/DefaultArtifact.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/DefaultArtifact.java Mon May 26 11:24:00 2008
@@ -51,8 +51,6 @@
private boolean resolved;
- private List dependencyTrail;
-
// Why is this here? What repository is determined at runtime and is therefore a
// runtime charactistic. This needs to go. jvz.
private Repository repository;
@@ -223,7 +221,7 @@
public String getId()
{
- return getDependencyConflictId() + ":" + getBaseVersion();
+ return getDependencyConflictId() + ":" + getVersion();
}
public String getDependencyConflictId()
@@ -264,7 +262,7 @@
if ( getVersion() != null )
{
- sb.append( getBaseVersionInternal() );
+ sb.append( getVersion() );
}
if ( scope != null )
@@ -329,47 +327,6 @@
return true;
}
- public String getBaseVersion()
- {
- if ( baseVersion == null )
- {
- if ( version == null )
- {
- throw new NullPointerException( "version was null for " + groupId + ":" + artifactId );
- }
- setBaseVersionInternal( version );
- }
- return baseVersion;
- }
-
- protected String getBaseVersionInternal()
- {
- if ( ( baseVersion == null ) && ( version != null ) )
- {
- setBaseVersionInternal( version );
- }
-
- return baseVersion;
- }
-
- public void setBaseVersion( String baseVersion )
- {
- setBaseVersionInternal( baseVersion );
- }
-
- protected void setBaseVersionInternal( String baseVersion )
- {
- Matcher m = VERSION_FILE_PATTERN.matcher( baseVersion );
- if ( m.matches() )
- {
- this.baseVersion = m.group( 1 ) + "-" + SNAPSHOT_VERSION;
- }
- else
- {
- this.baseVersion = baseVersion;
- }
- }
-
public int compareTo( Object o )
{
Artifact a = (Artifact) o;
@@ -412,12 +369,6 @@
return result;
}
- public void updateVersion( String version, Repository localRepository )
- {
- setResolvedVersion( version );
- setFile( new File( localRepository.getDirectory(), localRepository.pathOf( this ) ) );
- }
-
public String getDownloadUrl()
{
return downloadUrl;
@@ -428,27 +379,11 @@
this.downloadUrl = downloadUrl;
}
- public List<String> getDependencyTrail()
- {
- return dependencyTrail;
- }
-
- public void setDependencyTrail( List<String> dependencyTrail )
- {
- this.dependencyTrail = dependencyTrail;
- }
-
public void setScope( String scope )
{
this.scope = scope;
}
- public void selectVersion( String version )
- {
- this.version = version;
- setBaseVersionInternal( version );
- }
-
public void setGroupId( String groupId )
{
this.groupId = groupId;
@@ -459,11 +394,6 @@
this.artifactId = artifactId;
}
- public boolean isSnapshot()
- {
- return getBaseVersion() != null && ( getBaseVersion().endsWith( SNAPSHOT_VERSION ) || getBaseVersion().equals( LATEST_VERSION ) );
- }
-
public void setResolved( boolean resolved )
{
this.resolved = resolved;
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/DefaultMetadataResolver.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/DefaultMetadataResolver.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/DefaultMetadataResolver.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/DefaultMetadataResolver.java Mon May 26 11:24:00 2008
@@ -2,9 +2,12 @@
import java.util.Collection;
import java.util.List;
+import java.util.Set;
import org.apache.maven.mercury.Artifact;
import org.apache.maven.mercury.DefaultArtifact;
+import org.apache.maven.mercury.repository.LocalRepository;
+import org.apache.maven.mercury.repository.RemoteRepository;
import org.apache.maven.mercury.repository.Repository;
import org.apache.maven.mercury.retrieve.ArtifactRetriever;
import org.apache.maven.mercury.retrieve.ResolutionRequest;
@@ -48,7 +51,7 @@
}
//------------------------------------------------------------------------
- private MetadataTreeNode resolveMetadataTree( ArtifactMetadata query, MetadataTreeNode parent, Repository localRepository, List<Repository> remoteRepositories )
+ private MetadataTreeNode resolveMetadataTree( ArtifactMetadata query, MetadataTreeNode parent, LocalRepository localRepository, Set<RemoteRepository> remoteRepositories )
throws MetadataResolutionException
{
try
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataResolutionRequest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataResolutionRequest.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataResolutionRequest.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataResolutionRequest.java Mon May 26 11:24:00 2008
@@ -16,12 +16,10 @@
protected LocalRepository localRepository;
protected Set<RemoteRepository> remoteRepositories;
- //--------------------------------------------------------------------
public MetadataResolutionRequest()
{
}
- //--------------------------------------------------------------------
public MetadataResolutionRequest( ArtifactMetadata query,
LocalRepository localRepository,
Set<RemoteRepository> remoteRepositories )
@@ -31,7 +29,6 @@
this.remoteRepositories = remoteRepositories;
}
- //--------------------------------------------------------------------
public ArtifactMetadata getQuery()
{
return query;
@@ -43,7 +40,7 @@
return this;
}
- public Repository getLocalRepository()
+ public LocalRepository getLocalRepository()
{
return localRepository;
}
@@ -76,6 +73,4 @@
this.remoteRepositories = remoteRepositories;
return this;
}
- //--------------------------------------------------------------------
- //--------------------------------------------------------------------
}
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataSource.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataSource.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataSource.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/metadata/MetadataSource.java Mon May 26 11:24:00 2008
@@ -20,7 +20,10 @@
*/
import java.util.List;
+import java.util.Set;
+import org.apache.maven.mercury.repository.LocalRepository;
+import org.apache.maven.mercury.repository.RemoteRepository;
import org.apache.maven.mercury.repository.Repository;
/**
@@ -35,7 +38,7 @@
String ROLE = MetadataSource.class.getName();
MetadataResolution retrieve( ArtifactMetadata artifact,
- Repository localRepository,
- List<Repository> remoteRepositories )
+ LocalRepository localRepository,
+ Set<RemoteRepository> remoteRepositories )
throws MetadataRetrievalException;
}
\ No newline at end of file
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/AbstractRepository.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/AbstractRepository.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/AbstractRepository.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/AbstractRepository.java Mon May 26 11:24:00 2008
@@ -1,6 +1,7 @@
package org.apache.maven.mercury.repository;
import org.apache.maven.mercury.Artifact;
+import org.apache.maven.mercury.repository.layout.RepositoryLayout;
/*
* Licensed to the Apache Software Foundation (ASF) under one or more contributor license
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultLocalRepository.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultLocalRepository.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultLocalRepository.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultLocalRepository.java Mon May 26 11:24:00 2008
@@ -2,6 +2,8 @@
import java.io.File;
+import org.apache.maven.mercury.repository.layout.RepositoryLayout;
+
public class DefaultLocalRepository
extends AbstractRepository
implements LocalRepository
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRemoteRepository.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRemoteRepository.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRemoteRepository.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRemoteRepository.java Mon May 26 11:24:00 2008
@@ -1,5 +1,7 @@
package org.apache.maven.mercury.repository;
+import org.apache.maven.mercury.repository.layout.RepositoryLayout;
+
public class DefaultRemoteRepository
extends AbstractRepository
implements RemoteRepository
Copied: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/DefaultRepositoryLayout.java (from r660105, maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRepositoryLayout.java)
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/DefaultRepositoryLayout.java?p2=maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/DefaultRepositoryLayout.java&p1=maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRepositoryLayout.java&r1=660105&r2=660262&rev=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/DefaultRepositoryLayout.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/DefaultRepositoryLayout.java Mon May 26 11:24:00 2008
@@ -1,4 +1,4 @@
-package org.apache.maven.mercury.repository;
+package org.apache.maven.mercury.repository.layout;
import org.apache.maven.mercury.Artifact;
Copied: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/RepositoryLayout.java (from r660105, maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/RepositoryLayout.java)
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/RepositoryLayout.java?p2=maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/RepositoryLayout.java&p1=maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/RepositoryLayout.java&r1=660105&r2=660262&rev=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/RepositoryLayout.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/repository/layout/RepositoryLayout.java Mon May 26 11:24:00 2008
@@ -1,4 +1,4 @@
-package org.apache.maven.mercury.repository;
+package org.apache.maven.mercury.repository.layout;
import org.apache.maven.mercury.Artifact;
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/DefaultArtifactRetriever.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/DefaultArtifactRetriever.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/DefaultArtifactRetriever.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/DefaultArtifactRetriever.java Mon May 26 11:24:00 2008
@@ -21,9 +21,10 @@
import java.io.File;
-import org.apache.maven.mercury.repository.DefaultRepositoryLayout;
+import org.apache.maven.mercury.repository.RemoteRepository;
import org.apache.maven.mercury.repository.Repository;
-import org.apache.maven.mercury.repository.RepositoryLayout;
+import org.apache.maven.mercury.repository.layout.DefaultRepositoryLayout;
+import org.apache.maven.mercury.repository.layout.RepositoryLayout;
import org.apache.maven.mercury.spi.http.client.Binding;
import org.apache.maven.mercury.spi.http.client.MercuryException;
import org.apache.maven.mercury.spi.http.client.retrieve.DefaultRetrievalRequest;
@@ -58,9 +59,9 @@
result.addException( e );
return result;
- }
-
- for ( Repository remoteRepository : request.getRemoteRepostories() )
+ }
+
+ for ( RemoteRepository remoteRepository : request.getRemoteRepostories() )
{
RetrievalRequest rr = new DefaultRetrievalRequest();
String remoteUrl = remoteRepository.getUrl() + "/" + layout.pathOf( request.getArtifact() );
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionRequest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionRequest.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionRequest.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionRequest.java Mon May 26 11:24:00 2008
@@ -1,9 +1,10 @@
package org.apache.maven.mercury.retrieve;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.Set;
import org.apache.maven.mercury.Artifact;
+import org.apache.maven.mercury.repository.LocalRepository;
+import org.apache.maven.mercury.repository.RemoteRepository;
import org.apache.maven.mercury.repository.Repository;
/**
@@ -22,11 +23,9 @@
private String version;
- private Repository localRepository;
+ private LocalRepository localRepository;
- private List<Repository> remoteRepostories;
-
- private List listeners = new ArrayList();
+ private Set<RemoteRepository> remoteRepostories;
public Artifact getArtifact()
{
@@ -96,24 +95,24 @@
return this;
}
- public Repository getLocalRepository()
+ public LocalRepository getLocalRepository()
{
return localRepository;
}
- public ResolutionRequest setLocalRepository( Repository localRepository )
+ public ResolutionRequest setLocalRepository( LocalRepository localRepository )
{
this.localRepository = localRepository;
return this;
}
- public List<Repository> getRemoteRepostories()
+ public Set<RemoteRepository> getRemoteRepostories()
{
return remoteRepostories;
}
- public ResolutionRequest setRemoteRepostories( List<Repository> remoteRepostories )
+ public ResolutionRequest setRemoteRepostories( Set<RemoteRepository> remoteRepostories )
{
this.remoteRepostories = remoteRepostories;
Modified: maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionResult.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionResult.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionResult.java (original)
+++ maven/sandbox/trunk/mercury/src/main/java/org/apache/maven/mercury/retrieve/ResolutionResult.java Mon May 26 11:24:00 2008
@@ -25,6 +25,7 @@
import java.util.Set;
import org.apache.maven.mercury.Artifact;
+import org.apache.maven.mercury.repository.RemoteRepository;
import org.apache.maven.mercury.repository.Repository;
/*
@@ -34,7 +35,7 @@
{
private Artifact artifact;
- private List<Repository> repositories;
+ private Set<RemoteRepository> repositories;
private List<Exception> exceptions;
@@ -48,12 +49,12 @@
this.artifact = artifact;
}
- public List<Repository> getRepositories()
+ public Set<RemoteRepository> getRepositories()
{
return repositories;
}
- public void setRepositories( List<Repository> repositories )
+ public void setRepositories( Set<RemoteRepository> repositories )
{
this.repositories = repositories;
}
Modified: maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/metadata/MetadataResolverTest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/metadata/MetadataResolverTest.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/metadata/MetadataResolverTest.java (original)
+++ maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/metadata/MetadataResolverTest.java Mon May 26 11:24:00 2008
@@ -1,26 +1,46 @@
package org.apache.maven.mercury.metadata;
import java.io.File;
-import java.util.List;
+import java.util.Set;
+import org.apache.maven.mercury.Artifact;
import org.apache.maven.mercury.repository.DefaultLocalRepository;
import org.apache.maven.mercury.repository.DefaultRemoteRepository;
-import org.apache.maven.mercury.repository.DefaultRepositoryLayout;
import org.apache.maven.mercury.repository.LocalRepository;
import org.apache.maven.mercury.repository.RemoteRepository;
-import org.apache.maven.mercury.repository.Repository;
-import org.apache.maven.mercury.repository.RepositoryLayout;
+import org.apache.maven.mercury.repository.layout.DefaultRepositoryLayout;
+import org.apache.maven.mercury.repository.layout.RepositoryLayout;
import org.apache.maven.mercury.retrieve.DefaultArtifactRetriever;
import org.apache.maven.mercury.spi.http.server.SimpleTestServer;
public class MetadataResolverTest
{
+ protected File localRepositoryDirectory;
+ protected String remoteRepository;
protected SimpleTestServer server;
+ protected File workDirectory;
+
+ protected String localPathFragment;
+ protected String remotePathFragment;
+ protected String remoteRepositoryHostUrl;
protected void setUp()
throws Exception
{
- server = new SimpleTestServer();
+ if ( System.getProperty( "basedir" ) != null )
+ {
+ workDirectory = new File( System.getProperty( "basedir"), "target" );
+ }
+ else
+ {
+ workDirectory = new File( "", "target" );
+ }
+
+ localRepositoryDirectory = new File( workDirectory, "repository" );
+ localPathFragment = "/repo/";
+ remotePathFragment = "/repo/";
+ remoteRepositoryHostUrl = "http://localhost" + remotePathFragment;
+ server = new SimpleTestServer( localPathFragment, remotePathFragment );
}
public void testMetadataResolver()
@@ -33,26 +53,24 @@
// obr
MetadataSource source = new SimpleSource();
RepositoryLayout layout = new DefaultRepositoryLayout();
-
- MetadataResolver metadataResolver = new DefaultMetadataResolver( new DefaultArtifactRetriever(), source );
+
+ MetadataResolver metadataResolver = new DefaultMetadataResolver( new DefaultArtifactRetriever(), source );
ArtifactMetadata metadata = new ArtifactMetadata( "a", "a", "1.0" );
+
+ LocalRepository localRepository = new DefaultLocalRepository( "local", layout, localRepositoryDirectory );
+ RemoteRepository remoteRepository = new DefaultRemoteRepository( "remote", layout, remoteRepositoryHostUrl );
+
+ MetadataResolutionRequest request = new MetadataResolutionRequest().setQuery( metadata ).setLocalRepository( localRepository ).addRemoteRepository( remoteRepository );
+
+ // Do we do this in memory, in which case the layout?
- LocalRepository localRepository = new DefaultLocalRepository( "local", layout, new File( "" ) );
- RemoteRepository remoteRepository = new DefaultRemoteRepository( "remote", layout, "");
-
- MetadataResolutionRequest request = new MetadataResolutionRequest()
- .setQuery( metadata )
- .setLocalRepository( localRepository )
- .addRemoteRepository( remoteRepository );
-
- MetadataResolutionResult result = metadataResolver.resolve( request );
+ MetadataResolutionResult result = metadataResolver.resolve( request );
}
class SimpleSource
implements MetadataSource
{
-
- public MetadataResolution retrieve( ArtifactMetadata artifact, Repository localRepository, List<Repository> remoteRepositories )
+ public MetadataResolution retrieve( ArtifactMetadata artifact, LocalRepository localRepository, Set<RemoteRepository> remoteRepositories )
throws MetadataRetrievalException
{
// TODO Auto-generated method stub
@@ -60,4 +78,13 @@
}
}
+
+ class SimpleLayout
+ implements RepositoryLayout
+ {
+ public String pathOf( Artifact artifact )
+ {
+ return artifact.getArtifactId() + "-" + artifact.getVersion() + ".txt";
+ }
+ }
}
Modified: maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/spi/http/server/SimpleTestServer.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/spi/http/server/SimpleTestServer.java?rev=660262&r1=660261&r2=660262&view=diff
==============================================================================
--- maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/spi/http/server/SimpleTestServer.java (original)
+++ maven/sandbox/trunk/mercury/src/test/java/org/apache/maven/mercury/spi/http/server/SimpleTestServer.java Mon May 26 11:24:00 2008
@@ -1,20 +1,16 @@
/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
*/
package org.apache.maven.mercury.spi.http.server;
@@ -33,47 +29,54 @@
import org.mortbay.jetty.servlet.DefaultServlet;
import org.mortbay.util.IO;
-public class SimpleTestServer extends Server
+public class SimpleTestServer
+ extends Server
{
-
public SimpleTestServer()
throws Exception
{
- super(0);
-
+ this( "/testRepo/", "/maven2/repo" );
+ }
+
+ public SimpleTestServer( String localPathFragment, String remotePathFragment )
+ throws Exception
+ {
+ super( 0 );
+
HandlerCollection handlers = new HandlerCollection();
- setHandler(handlers);
-
- Context context = new Context(handlers,"/maven2/repo");
- handlers.addHandler(new DefaultHandler());
-
- File base = File.createTempFile("simpleTestServer",null);
+ setHandler( handlers );
+
+ Context context = new Context( handlers, remotePathFragment );
+ handlers.addHandler( new DefaultHandler() );
+
+ File base = File.createTempFile( "simpleTestServer", null );
base.delete();
base.mkdir();
base.deleteOnExit();
-
-
- URL list = SimpleTestServer.class.getResource("/testRepo/");
- LineNumberReader in = new LineNumberReader(new InputStreamReader(list.openStream()));
- String file=null;
- while ((file=in.readLine())!=null)
+
+ URL list = SimpleTestServer.class.getResource( localPathFragment );
+ LineNumberReader in = new LineNumberReader( new InputStreamReader( list.openStream() ) );
+ String file = null;
+ while ( ( file = in.readLine() ) != null )
{
- if (!file.startsWith("file"))
+ if ( !file.startsWith( "file" ) )
+ {
continue;
- OutputStream out=new FileOutputStream(new File(base,file));
- IO.copy(SimpleTestServer.class.getResource("/testRepo/"+file).openStream(),out);
+ }
+ OutputStream out = new FileOutputStream( new File( base, file ) );
+ IO.copy( SimpleTestServer.class.getResource( localPathFragment + file ).openStream(), out );
out.close();
}
- context.addServlet(DefaultServlet.class,"/");
- context.setResourceBase(base.getCanonicalPath());
+ context.addServlet( DefaultServlet.class, "/" );
+ context.setResourceBase( base.getCanonicalPath() );
}
-
+
public int getPort()
{
return getConnectors()[0].getLocalPort();
}
- public static void main(String[] args)
+ public static void main( String[] args )
throws Exception
{
SimpleTestServer server = new SimpleTestServer();