package qubexplorer.server;
/**
*
* @author Victor
*/
public class Version {
private final String versionString;
private final String[] tokens;
public Version(String versionString) {
this.versionString = versionString;
tokens=versionString.split("\\.");
}
public int getMajor(){
if (tokens.length >= 1) {
return Integer.parseInt(tokens[0]);
} else {
throw new IllegalArgumentException("Problem getting major version in " + versionString);
}
}
public int getMinor(){
if (tokens.length >= 2) {
return Integer.parseInt(tokens[1]);
} else {
throw new IllegalArgumentException("Problem getting minor version in " + versionString);
}
}
public int getTokenCount(){
return tokens.length;
}
public String getToken(int index){
return tokens[index];
}
@Override
public String toString(){
return versionString;
}
public int compareTo(int major, int minor){
if(getMajor() > major){
return 1;
}
if(getMajor() < major) {
return -1;
}
String minorToken = getTokenCount() >= 2 ? getToken(1): "0";
return minorToken.compareTo(String.valueOf(minor));
}
}