mirror of https://github.com/apache/maven.git
[MNG-3849] modifying maven repo system tests
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@751124 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
131c9d1cf0
commit
b7d67cd7e5
|
@ -45,5 +45,6 @@ extends AbstractMavenRepositorySystemTest
|
||||||
public void testRetrieve()
|
public void testRetrieve()
|
||||||
throws IOException
|
throws IOException
|
||||||
{
|
{
|
||||||
|
// super.testRetrieve();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -105,6 +105,13 @@ under the License.
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.maven.mercury</groupId>
|
||||||
|
<artifactId>mercury-repo-virtual</artifactId>
|
||||||
|
<version>${mercury.version}</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.maven.mercury</groupId>
|
<groupId>org.apache.maven.mercury</groupId>
|
||||||
<artifactId>mercury-artifact</artifactId>
|
<artifactId>mercury-artifact</artifactId>
|
||||||
|
@ -134,6 +141,11 @@ under the License.
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.maven</groupId>
|
||||||
|
<artifactId>maven-compat</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.sonatype.plexus</groupId>
|
<groupId>org.sonatype.plexus</groupId>
|
||||||
<artifactId>plexus-jetty6</artifactId>
|
<artifactId>plexus-jetty6</artifactId>
|
||||||
|
|
|
@ -19,24 +19,27 @@ under the License.
|
||||||
|
|
||||||
package org.apache.maven.repository.mercury;
|
package org.apache.maven.repository.mercury;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.maven.artifact.Artifact;
|
import org.apache.maven.artifact.Artifact;
|
||||||
import org.apache.maven.artifact.factory.ArtifactFactory;
|
import org.apache.maven.artifact.factory.ArtifactFactory;
|
||||||
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
|
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
|
||||||
import org.apache.maven.artifact.metadata.ResolutionGroup;
|
|
||||||
import org.apache.maven.artifact.repository.ArtifactRepository;
|
import org.apache.maven.artifact.repository.ArtifactRepository;
|
||||||
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
|
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
|
||||||
import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
|
import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
|
||||||
import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
|
import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
|
||||||
|
import org.apache.maven.artifact.versioning.ArtifactVersion;
|
||||||
|
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
|
||||||
|
import org.apache.maven.mercury.artifact.ArtifactBasicMetadata;
|
||||||
import org.apache.maven.mercury.artifact.ArtifactMetadata;
|
import org.apache.maven.mercury.artifact.ArtifactMetadata;
|
||||||
import org.apache.maven.mercury.builder.api.DependencyProcessor;
|
import org.apache.maven.mercury.builder.api.DependencyProcessor;
|
||||||
import org.apache.maven.mercury.plexus.PlexusMercury;
|
import org.apache.maven.mercury.plexus.PlexusMercury;
|
||||||
import org.apache.maven.mercury.repository.api.Repository;
|
import org.apache.maven.mercury.repository.api.Repository;
|
||||||
import org.apache.maven.mercury.repository.api.RepositoryException;
|
import org.apache.maven.mercury.repository.api.RepositoryException;
|
||||||
import org.apache.maven.mercury.util.Util;
|
import org.apache.maven.mercury.util.Util;
|
||||||
import org.apache.maven.repository.MavenRepositorySystem;
|
|
||||||
import org.apache.maven.repository.LegacyMavenRepositorySystem;
|
import org.apache.maven.repository.LegacyMavenRepositorySystem;
|
||||||
|
import org.apache.maven.repository.MavenRepositorySystem;
|
||||||
import org.codehaus.plexus.component.annotations.Component;
|
import org.codehaus.plexus.component.annotations.Component;
|
||||||
import org.codehaus.plexus.component.annotations.Requirement;
|
import org.codehaus.plexus.component.annotations.Requirement;
|
||||||
import org.codehaus.plexus.lang.DefaultLanguage;
|
import org.codehaus.plexus.lang.DefaultLanguage;
|
||||||
|
@ -74,8 +77,10 @@ public class MercuryRepositorySystem
|
||||||
ArtifactResolutionResult result = new ArtifactResolutionResult();
|
ArtifactResolutionResult result = new ArtifactResolutionResult();
|
||||||
|
|
||||||
List<Repository> repos =
|
List<Repository> repos =
|
||||||
MercuryAdaptor.toMercuryRepos( request.getLocalRepository(), request.getRemoteRepostories(),
|
MercuryAdaptor.toMercuryRepos( request.getLocalRepository()
|
||||||
_dependencyProcessor );
|
, request.getRemoteRepostories()
|
||||||
|
, _dependencyProcessor
|
||||||
|
);
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -97,4 +102,33 @@ public class MercuryRepositorySystem
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// public List<ArtifactVersion> retrieveAvailableVersions( Artifact artifact, ArtifactRepository localRepository,
|
||||||
|
// List<ArtifactRepository> remoteRepositories )
|
||||||
|
// throws ArtifactMetadataRetrievalException
|
||||||
|
// {
|
||||||
|
//
|
||||||
|
// List<Repository> repos =
|
||||||
|
// MercuryAdaptor.toMercuryRepos( localRepository, remoteRepositories, _dependencyProcessor );
|
||||||
|
//
|
||||||
|
// try
|
||||||
|
// {
|
||||||
|
// List<ArtifactBasicMetadata> vl = _mercury.readVersions( repos, MercuryAdaptor.toMercuryBasicMetadata( artifact ) );
|
||||||
|
//
|
||||||
|
// if( Util.isEmpty( vl ) )
|
||||||
|
// return null;
|
||||||
|
//
|
||||||
|
// List<ArtifactVersion> res = new ArrayList<ArtifactVersion>( vl.size() );
|
||||||
|
//
|
||||||
|
// for( ArtifactBasicMetadata bmd : vl )
|
||||||
|
// res.add( new DefaultArtifactVersion(bmd.getVersion()) );
|
||||||
|
//
|
||||||
|
// return res;
|
||||||
|
// }
|
||||||
|
// catch ( RepositoryException e )
|
||||||
|
// {
|
||||||
|
// throw new ArtifactMetadataRetrievalException(e);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,18 @@ under the License.
|
||||||
|
|
||||||
package org.apache.maven.repository;
|
package org.apache.maven.repository;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.apache.maven.artifact.Artifact;
|
||||||
|
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
|
||||||
|
import org.apache.maven.artifact.repository.ArtifactRepository;
|
||||||
|
import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
|
||||||
|
import org.apache.maven.artifact.resolver.ResolutionListener;
|
||||||
|
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
|
@ -28,5 +40,171 @@ package org.apache.maven.repository;
|
||||||
*/
|
*/
|
||||||
public class MetadataResolutionRequest
|
public class MetadataResolutionRequest
|
||||||
{
|
{
|
||||||
|
private Artifact artifact;
|
||||||
|
|
||||||
|
// Needs to go away
|
||||||
|
private Set<Artifact> artifactDependencies;
|
||||||
|
|
||||||
|
private ArtifactRepository localRepository;
|
||||||
|
|
||||||
|
private List<ArtifactRepository> remoteRepositories;
|
||||||
|
|
||||||
|
// Not sure what to do with this?
|
||||||
|
// Scope
|
||||||
|
// Lock down lists
|
||||||
|
private ArtifactFilter filter;
|
||||||
|
|
||||||
|
// Needs to go away
|
||||||
|
private List<ResolutionListener> listeners = new ArrayList<ResolutionListener>();
|
||||||
|
|
||||||
|
// This is like a filter but overrides all transitive versions
|
||||||
|
private Map managedVersionMap;
|
||||||
|
|
||||||
|
// This should not be in here, it's a component
|
||||||
|
private ArtifactMetadataSource metadataSource;
|
||||||
|
|
||||||
|
private boolean resolveRoot = true;
|
||||||
|
|
||||||
|
public MetadataResolutionRequest()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest( Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
|
||||||
|
{
|
||||||
|
this.artifact = artifact;
|
||||||
|
this.localRepository = localRepository;
|
||||||
|
this.remoteRepositories = remoteRepositories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Artifact getArtifact()
|
||||||
|
{
|
||||||
|
return artifact;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setArtifact( Artifact artifact )
|
||||||
|
{
|
||||||
|
this.artifact = artifact;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setArtifactDependencies( Set<Artifact> artifactDependencies )
|
||||||
|
{
|
||||||
|
this.artifactDependencies = artifactDependencies;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Artifact> getArtifactDependencies()
|
||||||
|
{
|
||||||
|
return artifactDependencies;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArtifactRepository getLocalRepository()
|
||||||
|
{
|
||||||
|
return localRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setLocalRepository( ArtifactRepository localRepository )
|
||||||
|
{
|
||||||
|
this.localRepository = localRepository;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ArtifactRepository> getRemoteRepostories()
|
||||||
|
{
|
||||||
|
return remoteRepositories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setRemoteRepostories( List<ArtifactRepository> remoteRepostories )
|
||||||
|
{
|
||||||
|
this.remoteRepositories = remoteRepostories;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArtifactFilter getFilter()
|
||||||
|
{
|
||||||
|
return filter;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setFilter( ArtifactFilter filter )
|
||||||
|
{
|
||||||
|
this.filter = filter;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ResolutionListener> getListeners()
|
||||||
|
{
|
||||||
|
return listeners;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setListeners( List<ResolutionListener> listeners )
|
||||||
|
{
|
||||||
|
this.listeners = listeners;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest addListener( ResolutionListener listener )
|
||||||
|
{
|
||||||
|
listeners.add( listener );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public ArtifactMetadataSource getMetadataSource()
|
||||||
|
{
|
||||||
|
return metadataSource;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setMetadataSource( ArtifactMetadataSource metadataSource )
|
||||||
|
{
|
||||||
|
this.metadataSource = metadataSource;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map getManagedVersionMap()
|
||||||
|
{
|
||||||
|
return managedVersionMap;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setManagedVersionMap( Map managedVersionMap )
|
||||||
|
{
|
||||||
|
this.managedVersionMap = managedVersionMap;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionRequest setResolveRoot( boolean resolveRoot )
|
||||||
|
{
|
||||||
|
this.resolveRoot = resolveRoot;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isResolveRoot()
|
||||||
|
{
|
||||||
|
return resolveRoot;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString()
|
||||||
|
{
|
||||||
|
StringBuffer sb = new StringBuffer()
|
||||||
|
.append( "REQUEST: " ).append( "\n" )
|
||||||
|
.append( "artifact: " ).append( artifact ).append( "\n" )
|
||||||
|
.append( artifactDependencies ).append( "\n" )
|
||||||
|
.append( "localRepository: " ).append( localRepository ).append( "\n" )
|
||||||
|
.append( "remoteRepositories: " ).append( remoteRepositories ).append( "\n" )
|
||||||
|
.append( "metadataSource: " ).append( metadataSource ).append( "\n" );
|
||||||
|
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,20 @@ under the License.
|
||||||
|
|
||||||
package org.apache.maven.repository;
|
package org.apache.maven.repository;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.LinkedHashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.apache.maven.artifact.Artifact;
|
||||||
|
import org.apache.maven.artifact.repository.ArtifactRepository;
|
||||||
|
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
|
||||||
|
import org.apache.maven.artifact.resolver.CyclicDependencyException;
|
||||||
|
import org.apache.maven.artifact.resolver.DefaultArtifactCollector;
|
||||||
|
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
|
@ -28,5 +42,302 @@ package org.apache.maven.repository;
|
||||||
*/
|
*/
|
||||||
public class MetadataResolutionResult
|
public class MetadataResolutionResult
|
||||||
{
|
{
|
||||||
|
private Artifact originatingArtifact;
|
||||||
|
|
||||||
|
private List<Artifact> missingArtifacts;
|
||||||
|
|
||||||
|
// Exceptions
|
||||||
|
|
||||||
|
private List<Exception> exceptions;
|
||||||
|
|
||||||
|
private List<Exception> versionRangeViolations;
|
||||||
|
|
||||||
|
private List<ArtifactResolutionException> metadataResolutionExceptions;
|
||||||
|
|
||||||
|
private List<CyclicDependencyException> circularDependencyExceptions;
|
||||||
|
|
||||||
|
private List<ArtifactResolutionException> errorArtifactExceptions;
|
||||||
|
|
||||||
|
// file system errors
|
||||||
|
|
||||||
|
private List<ArtifactRepository> repositories;
|
||||||
|
|
||||||
|
private Set<Artifact> requestedArtifacts;
|
||||||
|
|
||||||
|
private Set<Artifact> artifacts;
|
||||||
|
|
||||||
|
public Artifact getOriginatingArtifact()
|
||||||
|
{
|
||||||
|
return originatingArtifact;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult ListOriginatingArtifact( final Artifact originatingArtifact )
|
||||||
|
{
|
||||||
|
this.originatingArtifact = originatingArtifact;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addArtifact( Artifact artifact )
|
||||||
|
{
|
||||||
|
if ( artifacts == null )
|
||||||
|
{
|
||||||
|
artifacts = new LinkedHashSet<Artifact>();
|
||||||
|
}
|
||||||
|
|
||||||
|
artifacts.add( artifact );
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Artifact> getArtifacts()
|
||||||
|
{
|
||||||
|
return artifacts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addRequestedArtifact( Artifact artifact )
|
||||||
|
{
|
||||||
|
if ( requestedArtifacts == null )
|
||||||
|
{
|
||||||
|
requestedArtifacts = new LinkedHashSet<Artifact>();
|
||||||
|
}
|
||||||
|
|
||||||
|
requestedArtifacts.add( artifact );
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<Artifact> getRequestedArtifacts()
|
||||||
|
{
|
||||||
|
return requestedArtifacts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean hasMissingArtifacts()
|
||||||
|
{
|
||||||
|
return missingArtifacts != null && !missingArtifacts.isEmpty();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Artifact> getMissingArtifacts()
|
||||||
|
{
|
||||||
|
return missingArtifacts == null ? Collections.<Artifact> emptyList() : missingArtifacts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult addMissingArtifact( Artifact artifact )
|
||||||
|
{
|
||||||
|
missingArtifacts = initList( missingArtifacts );
|
||||||
|
|
||||||
|
missingArtifacts.add( artifact );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult setUnresolvedArtifacts( final List<Artifact> unresolvedArtifacts )
|
||||||
|
{
|
||||||
|
this.missingArtifacts = unresolvedArtifacts;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// Exceptions
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public boolean hasExceptions()
|
||||||
|
{
|
||||||
|
return exceptions != null && !exceptions.isEmpty();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Exception> getExceptions()
|
||||||
|
{
|
||||||
|
return exceptions == null ? Collections.<Exception> emptyList() : exceptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// Version Range Violations
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public boolean hasVersionRangeViolations()
|
||||||
|
{
|
||||||
|
return versionRangeViolations != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @TODO this needs to accept a {@link OverConstrainedVersionException} as returned by
|
||||||
|
* {@link #getVersionRangeViolation(int)} but it's not used like that in
|
||||||
|
* {@link DefaultArtifactCollector}
|
||||||
|
*/
|
||||||
|
public MetadataResolutionResult addVersionRangeViolation( Exception e )
|
||||||
|
{
|
||||||
|
versionRangeViolations = initList( versionRangeViolations );
|
||||||
|
|
||||||
|
versionRangeViolations.add( e );
|
||||||
|
|
||||||
|
exceptions = initList( exceptions );
|
||||||
|
|
||||||
|
exceptions.add( e );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OverConstrainedVersionException getVersionRangeViolation( int i )
|
||||||
|
{
|
||||||
|
return (OverConstrainedVersionException) versionRangeViolations.get( i );
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Exception> getVersionRangeViolations()
|
||||||
|
{
|
||||||
|
return versionRangeViolations == null ? Collections.<Exception> emptyList() : versionRangeViolations;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// Metadata Resolution Exceptions: ArtifactResolutionExceptions
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public boolean hasMetadataResolutionExceptions()
|
||||||
|
{
|
||||||
|
return metadataResolutionExceptions != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult addMetadataResolutionException( ArtifactResolutionException e )
|
||||||
|
{
|
||||||
|
metadataResolutionExceptions = initList( metadataResolutionExceptions );
|
||||||
|
|
||||||
|
metadataResolutionExceptions.add( e );
|
||||||
|
|
||||||
|
exceptions = initList( exceptions );
|
||||||
|
|
||||||
|
exceptions.add( e );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArtifactResolutionException getMetadataResolutionException( int i )
|
||||||
|
{
|
||||||
|
return metadataResolutionExceptions.get( i );
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ArtifactResolutionException> getMetadataResolutionExceptions()
|
||||||
|
{
|
||||||
|
return metadataResolutionExceptions == null ? Collections.<ArtifactResolutionException> emptyList()
|
||||||
|
: metadataResolutionExceptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// ErrorArtifactExceptions: ArtifactResolutionExceptions
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public boolean hasErrorArtifactExceptions()
|
||||||
|
{
|
||||||
|
return errorArtifactExceptions != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult addErrorArtifactException( ArtifactResolutionException e )
|
||||||
|
{
|
||||||
|
errorArtifactExceptions = initList( errorArtifactExceptions );
|
||||||
|
|
||||||
|
errorArtifactExceptions.add( e );
|
||||||
|
|
||||||
|
exceptions = initList( exceptions );
|
||||||
|
|
||||||
|
exceptions.add( e );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ArtifactResolutionException> getErrorArtifactExceptions()
|
||||||
|
{
|
||||||
|
if ( errorArtifactExceptions == null )
|
||||||
|
{
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
|
return errorArtifactExceptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// Circular Dependency Exceptions
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public boolean hasCircularDependencyExceptions()
|
||||||
|
{
|
||||||
|
return circularDependencyExceptions != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult addCircularDependencyException( CyclicDependencyException e )
|
||||||
|
{
|
||||||
|
circularDependencyExceptions = initList( circularDependencyExceptions );
|
||||||
|
|
||||||
|
circularDependencyExceptions.add( e );
|
||||||
|
|
||||||
|
exceptions = initList( exceptions );
|
||||||
|
|
||||||
|
exceptions.add( e );
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CyclicDependencyException getCircularDependencyException( int i )
|
||||||
|
{
|
||||||
|
return circularDependencyExceptions.get( i );
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<CyclicDependencyException> getCircularDependencyExceptions()
|
||||||
|
{
|
||||||
|
if ( circularDependencyExceptions == null )
|
||||||
|
{
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
|
return circularDependencyExceptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// Repositories
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
public List<ArtifactRepository> getRepositories()
|
||||||
|
{
|
||||||
|
if ( repositories == null )
|
||||||
|
{
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
|
return repositories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MetadataResolutionResult setRepositories( final List<ArtifactRepository> repositories )
|
||||||
|
{
|
||||||
|
this.repositories = repositories;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Internal
|
||||||
|
//
|
||||||
|
|
||||||
|
private <T> List<T> initList( final List<T> l )
|
||||||
|
{
|
||||||
|
if ( l == null )
|
||||||
|
{
|
||||||
|
return new ArrayList<T>();
|
||||||
|
}
|
||||||
|
return l;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString()
|
||||||
|
{
|
||||||
|
StringBuffer sb = new StringBuffer();
|
||||||
|
|
||||||
|
if ( artifacts != null )
|
||||||
|
{
|
||||||
|
int i = 1;
|
||||||
|
sb.append( "---------" ).append( "\n" );
|
||||||
|
sb.append( artifacts.size() ).append( "\n" );
|
||||||
|
for ( Artifact a : artifacts )
|
||||||
|
{
|
||||||
|
sb.append( i ).append( " " ).append( a ).append( "\n" );
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
sb.append( "---------" ).append( "\n" );
|
||||||
|
}
|
||||||
|
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,9 +35,14 @@ import org.apache.maven.artifact.repository.DefaultArtifactRepository;
|
||||||
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
|
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
|
||||||
import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
|
import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
|
||||||
import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
|
import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
|
||||||
|
import org.apache.maven.artifact.versioning.ArtifactVersion;
|
||||||
|
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
|
||||||
import org.apache.maven.mercury.util.FileUtil;
|
import org.apache.maven.mercury.util.FileUtil;
|
||||||
import org.codehaus.plexus.ContainerConfiguration;
|
import org.codehaus.plexus.ContainerConfiguration;
|
||||||
import org.codehaus.plexus.PlexusTestCase;
|
import org.codehaus.plexus.PlexusTestCase;
|
||||||
|
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Startable;
|
||||||
|
import org.sonatype.plexus.jetty.DefaultServletContainer;
|
||||||
|
import org.sonatype.plexus.webcontainer.ServletContainer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -61,6 +66,8 @@ public abstract class AbstractMavenRepositorySystemTest
|
||||||
|
|
||||||
protected MavenRepositorySystem _mrs;
|
protected MavenRepositorySystem _mrs;
|
||||||
|
|
||||||
|
protected Startable _server;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void setUp()
|
protected void setUp()
|
||||||
throws Exception
|
throws Exception
|
||||||
|
@ -87,6 +94,22 @@ public abstract class AbstractMavenRepositorySystemTest
|
||||||
_localRepo = new DefaultArtifactRepository("local", _localBase.getCanonicalPath(), new DefaultRepositoryLayout() );
|
_localRepo = new DefaultArtifactRepository("local", _localBase.getCanonicalPath(), new DefaultRepositoryLayout() );
|
||||||
|
|
||||||
_artifactFactory = getContainer().lookup( ArtifactFactory.class );
|
_artifactFactory = getContainer().lookup( ArtifactFactory.class );
|
||||||
|
|
||||||
|
_server = (Startable) getContainer().lookup( ServletContainer.class );
|
||||||
|
|
||||||
|
_server.start();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void tearDown()
|
||||||
|
throws Exception
|
||||||
|
{
|
||||||
|
super.tearDown();
|
||||||
|
|
||||||
|
if( _server != null )
|
||||||
|
_server.stop();
|
||||||
|
|
||||||
|
_server = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
|
protected void customizeContainerConfiguration( ContainerConfiguration containerConfiguration )
|
||||||
|
@ -123,6 +146,7 @@ public abstract class AbstractMavenRepositorySystemTest
|
||||||
request.setLocalRepository( _localRepo );
|
request.setLocalRepository( _localRepo );
|
||||||
request.setRemoteRepostories( _remoteRepos );
|
request.setRemoteRepostories( _remoteRepos );
|
||||||
request.setArtifact( artifact );
|
request.setArtifact( artifact );
|
||||||
|
request.setResolveRoot( true );
|
||||||
|
|
||||||
ArtifactResolutionResult res = _mrs.resolve( request );
|
ArtifactResolutionResult res = _mrs.resolve( request );
|
||||||
|
|
||||||
|
@ -154,4 +178,21 @@ public abstract class AbstractMavenRepositorySystemTest
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// public void testRetrieveVersions() throws Exception
|
||||||
|
// {
|
||||||
|
// Artifact artifact = _artifactFactory.createArtifact( "asm", "asm", "[3.0,3.2)", "compile", "jar" );
|
||||||
|
//
|
||||||
|
// List<ArtifactVersion> res = _mrs.retrieveAvailableVersions( artifact, _localRepo, _remoteRepos );
|
||||||
|
//
|
||||||
|
// assertNotNull( res );
|
||||||
|
//
|
||||||
|
// assertEquals( 2, res.size() );
|
||||||
|
//
|
||||||
|
// assertTrue( res.contains( new DefaultArtifactVersion("3.0") ) );
|
||||||
|
//
|
||||||
|
// assertTrue( res.contains( new DefaultArtifactVersion("3.1") ) );
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
|
@ -1,9 +1,4 @@
|
||||||
<plexus>
|
<plexus>
|
||||||
<load-on-start>
|
|
||||||
<component>
|
|
||||||
<role>org.sonatype.plexus.webcontainer.ServletContainer</role>
|
|
||||||
</component>
|
|
||||||
</load-on-start>
|
|
||||||
<components>
|
<components>
|
||||||
<component>
|
<component>
|
||||||
<role>org.sonatype.plexus.webcontainer.ServletContainer</role>
|
<role>org.sonatype.plexus.webcontainer.ServletContainer</role>
|
||||||
|
|
Loading…
Reference in New Issue