public static KyloVersion parseVersion(String versionString) { if (versionString != null) { String[] dotSplit = versionString.split("\\."); String[] dashSplit = dotSplit[dotSplit.length - 1].split("-"); dotSplit[dotSplit.length - 1] = dashSplit[0]; String tag = dashSplit.length > 1 ? dashSplit[1] : ""; String major = ""; String minor = ""; String point = ""; int majorIdx = 0; if (dotSplit[0].startsWith("0")) { major = dotSplit[0] + "." + dotSplit[1]; majorIdx = 1; } else { major = dotSplit[0]; } if (majorIdx + 1 < dotSplit.length) { minor = dotSplit[majorIdx + 1]; } if (majorIdx + 2 < dotSplit.length) { point = dotSplit[majorIdx + 2]; } return new Version(major, minor, point, tag); } else { return null; } }
public static KyloVersion parseVersion(String versionString) { if (versionString != null) { String[] dotSplit = versionString.split("\\."); String[] dashSplit = dotSplit[dotSplit.length - 1].split("-"); dotSplit[dotSplit.length - 1] = dashSplit[0]; String tag = dashSplit.length > 1 ? dashSplit[1] : ""; String major = ""; String minor = ""; String point = ""; int majorIdx = 0; if (dotSplit[0].startsWith("0")) { major = dotSplit[0] + "." + dotSplit[1]; majorIdx = 1; } else { major = dotSplit[0]; } if (majorIdx + 1 < dotSplit.length) { minor = dotSplit[majorIdx + 1]; } if (majorIdx + 2 < dotSplit.length) { point = dotSplit[majorIdx + 2]; } return new Version(major, minor, point, tag); } else { return null; } }
@Override public boolean isBefore(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) < 0; }
@Override public boolean isAfter(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) > 0; }
@Override public boolean isBefore(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) < 0; }
@Override public boolean isBefore(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) < 0; }
@Override public boolean isAfter(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) > 0; }
@Override public boolean isBefore(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) < 0; }
@Override public KyloVersion withoutTag() { return new Version(this.getMajorVersion(), this.getMinorVersion(), this.getPointVersion(), null); }
@Override public boolean isAfter(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) > 0; }
@Override public boolean isAfter(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) > 0; }
@Override public boolean isAfter(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) > 0; }
@Override public KyloVersion withoutTag() { return new Version(this.getMajorVersion(), this.getMinorVersion(), this.getPointVersion(), null); }
@Override public boolean isBefore(String major, String minor, String point, String tag) { return compareTo(new Version(major, minor, point, tag)) < 0; }
@Override public boolean isAfter(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) > 0; }
@Override public boolean isBefore(String major, String minor, String point) { return compareTo(new Version(major, minor, point, null)) < 0; }