[LANG-1570] JavaVersion enum constants for Java 14 and 15. (#553)
diff --git a/src/main/java/org/apache/commons/lang3/JavaVersion.java b/src/main/java/org/apache/commons/lang3/JavaVersion.java
index e287c9f..d275607 100644
--- a/src/main/java/org/apache/commons/lang3/JavaVersion.java
+++ b/src/main/java/org/apache/commons/lang3/JavaVersion.java
@@ -116,6 +116,20 @@ public enum JavaVersion {
JAVA_13(13.0f, "13"),
/**
+ * Java 14
+ *
+ * @since 3.11
+ */
+ JAVA_14(14.0f, "14"),
+
+ /**
+ * Java 15
+ *
+ * @since 3.11
+ */
+ JAVA_15(15.0f, "15"),
+
+ /**
* The most recent java version. Mainly introduced to avoid to break when a new version of Java is used.
*/
JAVA_RECENT(maxVersion(), Float.toString(maxVersion()));
@@ -224,6 +238,10 @@ static JavaVersion get(final String nom) {
return JAVA_12;
} else if ("13".equals(nom)) {
return JAVA_13;
+ } else if ("14".equals(nom)) {
+ return JAVA_14;
+ } else if ("15".equals(nom)) {
+ return JAVA_15;
}
final float v = toFloatVersion(nom);
if ((v - 1.) < 1.) { // then we need to check decimals > .9
diff --git a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
index 64d8f82..c06b57c 100644
--- a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
+++ b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
@@ -25,6 +25,8 @@
import static org.apache.commons.lang3.JavaVersion.JAVA_11;
import static org.apache.commons.lang3.JavaVersion.JAVA_12;
import static org.apache.commons.lang3.JavaVersion.JAVA_13;
+import static org.apache.commons.lang3.JavaVersion.JAVA_14;
+import static org.apache.commons.lang3.JavaVersion.JAVA_15;
import static org.apache.commons.lang3.JavaVersion.JAVA_1_1;
import static org.apache.commons.lang3.JavaVersion.JAVA_1_2;
import static org.apache.commons.lang3.JavaVersion.JAVA_1_3;
@@ -62,10 +64,12 @@ public void testGetJavaVersion() {
assertEquals(JAVA_11, get("11"), "11 failed");
assertEquals(JAVA_12, get("12"), "12 failed");
assertEquals(JAVA_13, get("13"), "13 failed");
+ assertEquals(JAVA_14, get("14"), "14 failed");
+ assertEquals(JAVA_15, get("15"), "15 failed");
assertEquals(JAVA_RECENT, get("1.10"), "1.10 failed");
// assertNull("2.10 unexpectedly worked", get("2.10"));
assertEquals(get("1.5"), getJavaVersion("1.5"), "Wrapper method failed");
- assertEquals(JAVA_RECENT, get("14"), "Unhandled"); // LANG-1384
+ assertEquals(JAVA_RECENT, get("16"), "Unhandled"); // LANG-1384
}
@Test