if (coordinates.getClassifier() != null) { fileNameBuilder.append('-').append(coordinates.getClassifier());
coordinates.getVersion(), coordinates.getPackaging(), coordinates.getClassifier(), coordinates.getFileVersion()); timestampMatcher.group(1) + "-SNAPSHOT", coordinates.getPackaging(), coordinates.getClassifier(), coordinates.getVersion());
@Override public String configRelativize(String config) { if (!config.startsWith("@")) { return null; } MavenCoordinates coordinates = MavenCoordinates.fromConfigGAV(config); if (coordinates == null) { return null; } for (String defaultGroupId : defaultGroupIds) { if (defaultGroupId.equals(coordinates.getGroupId())) { return MavenCoordinates.toConfigGAV(new MavenCoordinates( null, coordinates.getArtifactId(), coordinates.getVersion(), coordinates.getPackaging(), coordinates.getClassifier(), coordinates.getFileVersion())); } } return null; }
@Override public String configUpgrade(String config, String version) { if (!version.startsWith("@")) { return null; } MavenCoordinates coordinates = MavenCoordinates.fromConfigGAV(config); if (coordinates == null) { return null; } coordinates = new MavenCoordinates(coordinates.getGroupId(), coordinates.getArtifactId(), version.substring(1), coordinates.getPackaging(), coordinates.getClassifier(), null); coordinates = resolve(coordinates); if (coordinates != null) { return MavenCoordinates.toConfigGAV(coordinates); } return configResolve(version); }
private MavenCoordinates resolveSnapshotTimestamp(MavenCoordinates coordinates, String groupId) { for (URI repositoryBase : repositoryBases) { try { // load maven metadata file HttpUriBuilder uriBuilder = uriBuilderFrom(repositoryBase); uriBuilder.appendPath(groupId.replace('.', '/')); uriBuilder.appendPath(coordinates.getArtifactId()); uriBuilder.appendPath(coordinates.getVersion()); uriBuilder.appendPath("maven-metadata.xml"); URI uri = uriBuilder.build(); MavenMetadata metadata = MavenMetadata.unmarshalMavenMetadata(toString(uri)); for (SnapshotVersion snapshotVersion : metadata.versioning.snapshotVersions) { if (coordinates.getPackaging().equals(snapshotVersion.extension) && Objects.equal(coordinates.getClassifier(), snapshotVersion.classifier)) { MavenCoordinates timestampSpec = new MavenCoordinates(groupId, coordinates.getArtifactId(), coordinates.getVersion(), coordinates.getPackaging(), coordinates.getClassifier(), snapshotVersion.value); return timestampSpec; } } } catch (Exception ignored) { // no maven-metadata.xml file... hope this is laid out normally } } return null; }
@Override public String binaryRelativize(String binary) { MavenCoordinates coordinates = MavenCoordinates.fromBinaryGAV(binary); if (coordinates == null) { return null; } for (String defaultGroupId : defaultGroupIds) { if (defaultGroupId.equals(coordinates.getGroupId())) { return MavenCoordinates.toBinaryGAV(new MavenCoordinates( null, coordinates.getArtifactId(), coordinates.getVersion(), coordinates.getPackaging(), coordinates.getClassifier(), coordinates.getFileVersion())); } } return null; }
@Override public String binaryUpgrade(String binary, String version) { MavenCoordinates coordinates = MavenCoordinates.fromBinaryGAV(binary); if (coordinates == null) { return null; } coordinates = new MavenCoordinates(coordinates.getGroupId(), coordinates.getArtifactId(), version, coordinates.getPackaging(), coordinates.getClassifier(), null); coordinates = resolve(coordinates); if (coordinates != null) { return MavenCoordinates.toBinaryGAV(coordinates); } return binaryResolve(version); }