public Constraint( VersionRangeResult result ) { versionConstraint = result.getVersionConstraint(); repositories = new LinkedHashMap<Version, ArtifactRepository>(); for ( Version version : result.getVersions() ) { repositories.put( version, result.getRepository( version ) ); } }
public VersionRangeResult toResult( VersionRangeRequest request ) { VersionRangeResult result = new VersionRangeResult( request ); for ( Map.Entry<Version, ArtifactRepository> entry : repositories.entrySet() ) { result.addVersion( entry.getKey() ); result.setRepository( entry.getKey(), entry.getValue() ); } result.setVersionConstraint( versionConstraint ); return result; }
private static String getMessage( VersionRangeResult result ) { StringBuilder buffer = new StringBuilder( 256 ); buffer.append( "Failed to resolve version range" ); if ( result != null ) { buffer.append( " for " ).append( result.getRequest().getArtifact() ); if ( !result.getExceptions().isEmpty() ) { buffer.append( ": " ).append( result.getExceptions().iterator().next().getMessage() ); } } return buffer.toString(); }
rangeResult = versionRangeResolver.resolveVersionRange( session, rangeRequest ); if ( rangeResult.getVersions().isEmpty() ) Version version = rangeResult.getVersions().get( rangeResult.getVersions().size() - 1 ); root = root.setArtifact( root.getArtifact().setVersion( version.toString() ) ); edge.setRequestContext( request.getRequestContext() ); edge.setRelocations( descriptorResult.getRelocations() ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version );
Version newestVersion = rangeResult.getHighestVersion(); if (currentVersion.compareTo(availableVersion) < 0) { System.out.println("A newest version [" + newestVersion + "] exists from repository: " + rangeResult.getRepository(newestVersion));
public static String highestVersion(final String info, final String prefix, final String defaultVersion) { final VersionRangeResult result = VersionResolver.versions(info, defaultVersion); if (result == null) { return defaultVersion; } final List<Version> versions = result.getVersions(); Collections.sort(versions); // Version impl comparable so we just need to call it :) Version usedVersion = null; for (Version current : versions) { if (current.toString().startsWith(prefix)) { usedVersion = current; } } if (usedVersion != null) { return usedVersion.toString(); } return defaultVersion; } }
public VersionRangeResult resolveVersions(String groupId, String artifactId, String classifier, String extension, String version) { final RepositorySystemSession session = newSession(); Artifact artifact = new DefaultArtifact(groupId, artifactId, classifier, extension, version); if (artifact.getVersion().equals("LATEST")) { artifact = artifact.setVersion(LATEST_VERSION_RANGE); } final VersionRangeRequest request = new VersionRangeRequest(artifact, m_remoteRepos, null); try { return m_repoSystem.resolveVersionRange(session, request); } catch (VersionRangeResolutionException e) { final VersionRangeResult result = new VersionRangeResult(request); result.setVersions(Arrays.asList((Version) new VersionImpl(version))); return result; } }
private static Throwable getCause( VersionRangeResult result ) { Throwable cause = null; if ( result != null && !result.getExceptions().isEmpty() ) { cause = result.getExceptions().get( 0 ); } return cause; }
/** * Tries to resolve versions = LATEST using an open range version query. * If it succeeds, version of artifact is set to the highest available version. * * @param session to be used. * @param artifact to be used * @return an artifact with version set properly (highest if available) * @throws org.sonatype.aether.resolution.VersionRangeResolutionException * in case of resolver errors. */ private Artifact resolveLatestVersionRange(RepositorySystemSession session, Artifact artifact) throws VersionRangeResolutionException { if (artifact.getVersion().equals("LATEST")) { artifact = artifact.setVersion(LATEST_VERSION_RANGE); VersionRangeResult versionResult = m_repoSystem.resolveVersionRange(session, new VersionRangeRequest(artifact, m_remoteRepos, null)); if (versionResult != null) { Version v = versionResult.getHighestVersion(); if (v != null) { artifact = artifact.setVersion(v.toString()); } else { throw new VersionRangeResolutionException(versionResult, "Not highest version found for " + artifact); } } } return artifact; }
rangeResult = versionRangeResolver.resolveVersionRange( session, rangeRequest ); if ( rangeResult.getVersions().isEmpty() ) Version version = rangeResult.getVersions().get( rangeResult.getVersions().size() - 1 ); root = root.setArtifact( root.getArtifact().setVersion( version.toString() ) ); edge.setRequestContext( request.getRequestContext() ); edge.setRelocations( descriptorResult.getRelocations() ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version );
@Override public List<Coordinate> resolveVersions(DependencyQuery query) { VersionRangeResult r = getVersions(query); List<Coordinate> result = new ArrayList<Coordinate>(); Predicate<Dependency> filter = query.getDependencyFilter(); for (Version v : r.getVersions()) { CoordinateBuilder coord = CoordinateBuilder.create(query.getCoordinate()).setVersion(v.toString()); DependencyBuilder versionedDep = DependencyBuilder.create().setCoordinate(coord); if (filter == null || filter.accept(versionedDep)) { result.add(coord); } } return result; }
private static Throwable getCause( VersionRangeResult result ) { Throwable cause = null; if ( result != null && !result.getExceptions().isEmpty() ) { cause = result.getExceptions().get( 0 ); } return cause; }
public Constraint( VersionRangeResult result ) { versionConstraint = result.getVersionConstraint(); repositories = new LinkedHashMap<Version, ArtifactRepository>(); for ( Version version : result.getVersions() ) { repositories.put( version, result.getRepository( version ) ); } }
public VersionRangeResult toResult( VersionRangeRequest request ) { VersionRangeResult result = new VersionRangeResult( request ); for ( Map.Entry<Version, ArtifactRepository> entry : repositories.entrySet() ) { result.addVersion( entry.getKey() ); result.setRepository( entry.getKey(), entry.getValue() ); } result.setVersionConstraint( versionConstraint ); return result; }
private static String getMessage( VersionRangeResult result ) { StringBuilder buffer = new StringBuilder( 256 ); buffer.append( "Failed to resolve version range" ); if ( result != null ) { buffer.append( " for " ).append( result.getRequest().getArtifact() ); if ( !result.getExceptions().isEmpty() ) { buffer.append( ": " ).append( result.getExceptions().iterator().next().getMessage() ); } } return buffer.toString(); }
private static Throwable getCause( VersionRangeResult result ) { Throwable cause = null; if ( result != null && !result.getExceptions().isEmpty() ) { cause = result.getExceptions().get( 0 ); } return cause; }
if ( rangeResult.getVersions().isEmpty() ) List<Version> versions = rangeResult.getVersions(); for ( Version version : versions ) edge.setPremanagedVersion( premanagedVersion ); edge.setRelocations( relocations ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version ); edge.setRequestContext( args.result.getRequest().getRequestContext() ); ArtifactRepository repo = rangeResult.getRepository( version ); if ( repo instanceof RemoteRepository ) edge.setPremanagedVersion( premanagedVersion ); edge.setRelocations( relocations ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version ); edge.setRequestContext( args.result.getRequest().getRequestContext() );
private static String getMessage( VersionRangeResult result ) { StringBuilder buffer = new StringBuilder( 256 ); buffer.append( "Failed to resolve version range" ); if ( result != null ) { buffer.append( " for " ).append( result.getRequest().getArtifact() ); if ( !result.getExceptions().isEmpty() ) { buffer.append( ": " ).append( result.getExceptions().iterator().next().getMessage() ); } } return buffer.toString(); }
if ( rangeResult.getVersions().isEmpty() ) List<Version> versions = rangeResult.getVersions(); for ( Version version : versions ) edge.setPremanagedVersion( premanagedVersion ); edge.setRelocations( relocations ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version ); edge.setRequestContext( args.result.getRequest().getRequestContext() ); ArtifactRepository repo = rangeResult.getRepository( version ); if ( repo instanceof RemoteRepository ) edge.setPremanagedVersion( premanagedVersion ); edge.setRelocations( relocations ); edge.setVersionConstraint( rangeResult.getVersionConstraint() ); edge.setVersion( version ); edge.setRequestContext( args.result.getRequest().getRequestContext() );