in nbm-maven-plugin/src/main/java/org/apache/netbeans/nbm/AdaptNbVersion.java [39:89]
public static String adaptVersion(String version, Object type, Date date) {
StringTokenizer tok = new StringTokenizer(version, ".");
if (SNAPSHOT.equals(version) && TYPE_IMPLEMENTATION.equals(type)) {
return "0.0.0." + generateSnapshotValue(date);
}
StringBuilder toReturn = new StringBuilder();
while (tok.hasMoreTokens()) {
String token = tok.nextToken();
if (TYPE_IMPLEMENTATION.equals(type)) {
int snapshotIndex = token.indexOf(SNAPSHOT);
if (snapshotIndex > 0) {
String repl = token.substring(0, snapshotIndex) + generateSnapshotValue(date);
if (token.length() > snapshotIndex + SNAPSHOT.length()) {
repl = token.substring(
snapshotIndex + SNAPSHOT.length());
}
token = repl;
}
}
if (TYPE_SPECIFICATION.equals(type)) {
// strip the trailing -RC1, -BETA5, -SNAPSHOT
if (token.indexOf('-') > 0) {
token = token.substring(0, token.indexOf('-'));
} else if (token.indexOf('_') > 0) {
token = token.substring(0, token.indexOf('_'));
}
try {
Integer intValue = Integer.valueOf(token);
token = intValue.toString();
} catch (NumberFormatException exc) {
// ignore, will just not be added to the
token = "";
}
}
if (token.length() > 0) {
if (toReturn.length() != 0) {
toReturn.append(".");
}
toReturn.append(token);
}
}
if (toReturn.length() == 0) {
toReturn.append("0.0.0");
}
String result = toReturn.toString();
if (TYPE_SPECIFICATION.equals(type)) {
result = computeSpecificationVersion(result);
}
return result;
}