use of org.commonjava.maven.atlas.ident.ref.SimpleProjectVersionRef in project galley by Commonjava.
the class PomPeek method createCoordinateInfo.
private boolean createCoordinateInfo() {
String v = elementValues.get(V);
final String pv = elementValues.get(PV);
if (isEmpty(v)) {
v = pv;
}
String g = elementValues.get(G);
final String pg = elementValues.get(PG);
if (isEmpty(g)) {
g = pg;
}
final String a = elementValues.get(A);
final String pa = elementValues.get(PA);
boolean valid = false;
if (isValidArtifactId(a) && isValidGroupId(g) && isValidVersion(v)) {
key = new SimpleProjectVersionRef(g, a, v);
valid = true;
}
if (isValidArtifactId(pa) && isValidGroupId(pg) && isValidVersion(pv)) {
parentKey = new SimpleProjectVersionRef(pg, pa, pv);
}
return valid;
}
use of org.commonjava.maven.atlas.ident.ref.SimpleProjectVersionRef in project galley by Commonjava.
the class XMLInfrastructure method getParentRef.
public ProjectVersionRef getParentRef(final Document doc) throws GalleyMavenXMLException {
final Element project = doc.getDocumentElement();
final NodeList nl = project.getElementsByTagName("parent");
if (nl == null || nl.getLength() < 1) {
logger.debug("No parent declaration.");
return null;
}
final Element parent = (Element) nl.item(0);
final String gid = getChildText("groupId", parent);
final String aid = getChildText("artifactId", parent);
final String ver = getChildText("version", parent);
if (isEmpty(gid) || isEmpty(aid) || isEmpty(ver)) {
throw new GalleyMavenXMLException("Project parent is present but invalid! (g=%s, a=%s, v=%s)", gid, aid, ver);
}
return new SimpleProjectVersionRef(gid, aid, ver);
}
use of org.commonjava.maven.atlas.ident.ref.SimpleProjectVersionRef in project galley by Commonjava.
the class ArtifactManagerImplTest method resolveSnapshot_FirstMatch_SingletonLocationList_SingletonSnapshotList_LatestVersionStrategy.
@Test
public void resolveSnapshot_FirstMatch_SingletonLocationList_SingletonSnapshotList_LatestVersionStrategy() throws Exception {
final String base = "single-snapshot/";
final String testResource = base + "single-snapshot.xml";
final String testPomResource = base + "single-snapshot-pom.xml";
final ProjectVersionRef ref = new SimpleProjectVersionRef("org.group", "artifact", "1.0-SNAPSHOT");
final ConcreteResource metadataResource = new ConcreteResource(LOCATION, fixture.snapshotMetadataPath(ref));
final ConcreteResource pomResource = new ConcreteResource(LOCATION, fixture.pomPath(ref.selectVersion("1.0-20140604.101244-1").asPomArtifact()));
fixture.getTransport().registerDownload(metadataResource, new TestDownload(ROOT + testResource));
fixture.getTransport().registerDownload(pomResource, new TestDownload(ROOT + testPomResource));
final Transfer retrieved = fixture.getArtifactManager().retrieve(LOCATION, ref.asPomArtifact(), new EventMetadata());
final Document document = fixture.getXml().parse(retrieved, new EventMetadata());
final ProjectVersionRef result = fixture.getXml().getProjectVersionRef(document);
System.out.println(result);
// assertThat( result, notNullValue() );
// assertThat( result.getVersionString(), equalTo( "1.0-20140604.101244-1" ) );
}
use of org.commonjava.maven.atlas.ident.ref.SimpleProjectVersionRef in project galley by Commonjava.
the class VersionResolverImplTest method resolveSnapshot_FirstMatch_TwoLocationList_TwoSingletonSnapshotList_LatestVersionStrategy.
@Test
public void resolveSnapshot_FirstMatch_TwoLocationList_TwoSingletonSnapshotList_LatestVersionStrategy() throws Exception {
final String testResource = "2-snapshots-2-locations/maven-metadata-1.xml";
final String testResource2 = "2-snapshots-2-locations/maven-metadata-2.xml";
final ProjectVersionRef ref = new SimpleProjectVersionRef("org.group2", "artifact", "1.0-SNAPSHOT");
final String path = fixture.snapshotMetadataPath(ref);
fixture.getTransport().registerDownload(new ConcreteResource(LOCATION, path), new TestDownload(ROOT + testResource));
fixture.getTransport().registerDownload(new ConcreteResource(LOCATION2, path), new TestDownload(ROOT + testResource2));
final ProjectVersionRef result = fixture.getVersionResolver().resolveFirstMatchVariableVersion(TWO_LOCATIONS, ref, LatestVersionSelectionStrategy.INSTANCE, new EventMetadata());
assertThat(result, notNullValue());
// newest snapshot is in the SECOND location, but we're using first-match semantics here.
assertThat(result.getVersionString(), equalTo("1.0-20140604.101244-1"));
}
use of org.commonjava.maven.atlas.ident.ref.SimpleProjectVersionRef in project galley by Commonjava.
the class VersionResolverImplTest method resolveSnapshot_FirstMatch_SingletonLocationList_TwoSnapshotList_LatestVersionStrategy.
@Test
public void resolveSnapshot_FirstMatch_SingletonLocationList_TwoSnapshotList_LatestVersionStrategy() throws Exception {
final String testResource = "2-snapshots-1-location/two-snapshots.xml";
final ProjectVersionRef ref = new SimpleProjectVersionRef("org.group2", "artifact", "1.0-SNAPSHOT");
final ConcreteResource cr = new ConcreteResource(LOCATION, fixture.snapshotMetadataPath(ref));
final TestDownload download = new TestDownload(ROOT + testResource);
fixture.getTransport().registerDownload(cr, download);
final ProjectVersionRef result = fixture.getVersionResolver().resolveFirstMatchVariableVersion(ONE_LOCATION, ref, LatestVersionSelectionStrategy.INSTANCE, new EventMetadata());
assertThat(result, notNullValue());
assertThat(result.getVersionString(), equalTo("1.0-20140604.102909-1"));
}
Aggregations