package com.compomics.software.autoupdater;
import java.util.Comparator;
import java.util.Scanner;
/**
* Class for comparing tool version numbers.
*
* @author Davy Maddelein
*/
public class CompareVersionNumbers implements Comparator<String> {
@Override
public int compare(String oldVersionNumber, String newVersionNumber) {
int compareInt = -1;
Scanner a = (new Scanner(oldVersionNumber)).useDelimiter("\\.");
Scanner b = (new Scanner(newVersionNumber)).useDelimiter("\\.");
int oldversionnumber = 0, newversionnumber = 0;
if (!newVersionNumber.contains("b") || !newVersionNumber.contains("beta")) {
while (a.hasNext() && b.hasNext()) {
oldversionnumber = Integer.parseInt(a.next());
newversionnumber = Integer.parseInt(b.next());
if (newversionnumber > oldversionnumber) {
return 1;
} else if (newversionnumber < oldversionnumber) {
return -1;
}
}
if (b.hasNext() && !a.hasNext()) {
compareInt = 1;
} else if (!b.hasNext() && !a.hasNext() && oldversionnumber == newversionnumber) {
compareInt = 0;
}
}
return compareInt;
}
}