Skip to content

Commit

Permalink
update JavaVersion
Browse files Browse the repository at this point in the history
ahadas committed Aug 12, 2023
1 parent b95af71 commit 23a0c7e
Showing 2 changed files with 37 additions and 24 deletions.
Original file line number Diff line number Diff line change
@@ -29,13 +29,6 @@
* @author Maxence Bernard, Arik Hadas
*/
public enum JavaVersion implements ComparableRuntimeProperty {
/** Java 1.8.x */
JAVA_8("1.8"),
/** Java 9.x */
JAVA_9("9"),
/** Java 10.x */
JAVA_10("10"),
/** Java 11.x */
JAVA_11("11"),
/** Java 12.x */
JAVA_12("12"),
@@ -49,6 +42,16 @@ public enum JavaVersion implements ComparableRuntimeProperty {
JAVA_16("16"),
/** Java 17.x */
JAVA_17("17"),
/** Java 18.x */
JAVA_18("18"),
/** Java 19.x */
JAVA_19("19"),
/** Java 20.x */
JAVA_20("20"),
/** Java 21.x */
JAVA_21("21"),
/** Java 22.x */
JAVA_22("22"),
;

/** Logger used by this class. */
@@ -126,7 +129,22 @@ static JavaVersion parseSystemProperty(String javaVersionProp) {
if (javaVersionProp == null
|| (javaVersionProp = javaVersionProp.trim()).equals(""))
// Assume java 1.8 (first supported Java version)
return JavaVersion.JAVA_8;
return JavaVersion.JAVA_11;
// Java 20
if (javaVersionProp.startsWith("22"))
return JavaVersion.JAVA_22;
// Java 21
if (javaVersionProp.startsWith("21"))
return JavaVersion.JAVA_21;
// Java 20
if (javaVersionProp.startsWith("20"))
return JavaVersion.JAVA_20;
// Java 19
if (javaVersionProp.startsWith("19"))
return JavaVersion.JAVA_19;
// Java 18
if (javaVersionProp.startsWith("18"))
return JavaVersion.JAVA_18;
// Java 17
if (javaVersionProp.startsWith("17"))
return JavaVersion.JAVA_17;
@@ -148,18 +166,9 @@ static JavaVersion parseSystemProperty(String javaVersionProp) {
// Java 11
if (javaVersionProp.startsWith("11"))
return JavaVersion.JAVA_11;
// Java 10
if (javaVersionProp.startsWith("10"))
return JavaVersion.JAVA_10;
// Java 9
if (javaVersionProp.startsWith("9"))
return JavaVersion.JAVA_9;
// Java 1.8
if (javaVersionProp.startsWith("1.8"))
return JavaVersion.JAVA_8;

// Newer version we don't know of yet, assume latest supported Java version
return JavaVersion.JAVA_16;
return JavaVersion.JAVA_22;
}

/**
Original file line number Diff line number Diff line change
@@ -31,15 +31,17 @@ public class JavaVersionTest {
*/
@Test
public void testOrder() {
assert JavaVersion.JAVA_22.compareTo(JavaVersion.JAVA_21)>0;
assert JavaVersion.JAVA_21.compareTo(JavaVersion.JAVA_20)>0;
assert JavaVersion.JAVA_20.compareTo(JavaVersion.JAVA_19)>0;
assert JavaVersion.JAVA_19.compareTo(JavaVersion.JAVA_18)>0;
assert JavaVersion.JAVA_18.compareTo(JavaVersion.JAVA_17)>0;
assert JavaVersion.JAVA_17.compareTo(JavaVersion.JAVA_16)>0;
assert JavaVersion.JAVA_16.compareTo(JavaVersion.JAVA_15)>0;
assert JavaVersion.JAVA_15.compareTo(JavaVersion.JAVA_14)>0;
assert JavaVersion.JAVA_14.compareTo(JavaVersion.JAVA_13)>0;
assert JavaVersion.JAVA_13.compareTo(JavaVersion.JAVA_12)>0;
assert JavaVersion.JAVA_12.compareTo(JavaVersion.JAVA_11)>0;
assert JavaVersion.JAVA_11.compareTo(JavaVersion.JAVA_10)>0;
assert JavaVersion.JAVA_10.compareTo(JavaVersion.JAVA_9)>0;
assert JavaVersion.JAVA_9.compareTo(JavaVersion.JAVA_8)>0;
}

/**
@@ -59,16 +61,18 @@ public void testCurrent() {
*/
@Test
public void testParsing() {
assert JavaVersion.parseSystemProperty("1.8")==JavaVersion.JAVA_8;
assert JavaVersion.parseSystemProperty("9")==JavaVersion.JAVA_9;
assert JavaVersion.parseSystemProperty("10")==JavaVersion.JAVA_10;
assert JavaVersion.parseSystemProperty("11")==JavaVersion.JAVA_11;
assert JavaVersion.parseSystemProperty("12")==JavaVersion.JAVA_12;
assert JavaVersion.parseSystemProperty("13")==JavaVersion.JAVA_13;
assert JavaVersion.parseSystemProperty("14")==JavaVersion.JAVA_14;
assert JavaVersion.parseSystemProperty("15")==JavaVersion.JAVA_15;
assert JavaVersion.parseSystemProperty("16")==JavaVersion.JAVA_16;
assert JavaVersion.parseSystemProperty("17")==JavaVersion.JAVA_17;
assert JavaVersion.parseSystemProperty("18")==JavaVersion.JAVA_18;
assert JavaVersion.parseSystemProperty("19")==JavaVersion.JAVA_19;
assert JavaVersion.parseSystemProperty("20")==JavaVersion.JAVA_20;
assert JavaVersion.parseSystemProperty("21")==JavaVersion.JAVA_21;
assert JavaVersion.parseSystemProperty("22")==JavaVersion.JAVA_22;
}


0 comments on commit 23a0c7e

Please sign in to comment.