diff --git a/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java b/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java index bbecf1620ecd..328209eba03f 100644 --- a/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java +++ b/java/java-psi-api/src/com/intellij/openapi/projectRoots/JavaSdkVersion.java @@ -1,6 +1,4 @@ -/* - * Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. - */ +// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.openapi.projectRoots; import com.intellij.pom.java.LanguageLevel; @@ -17,26 +15,24 @@ import java.util.Arrays; * @see LanguageLevel */ public enum JavaSdkVersion { - JDK_1_0(LanguageLevel.JDK_1_3, new String[]{"1.0"}), - JDK_1_1(LanguageLevel.JDK_1_3, new String[]{"1.1"}), - JDK_1_2(LanguageLevel.JDK_1_3, new String[]{"1.2"}), - JDK_1_3(LanguageLevel.JDK_1_3, new String[]{"1.3"}), - JDK_1_4(LanguageLevel.JDK_1_4, new String[]{"1.4"}), - JDK_1_5(LanguageLevel.JDK_1_5, new String[]{"1.5", "5.0"}), - JDK_1_6(LanguageLevel.JDK_1_6, new String[]{"1.6", "6.0"}), - JDK_1_7(LanguageLevel.JDK_1_7, new String[]{"1.7", "7.0"}), - JDK_1_8(LanguageLevel.JDK_1_8, new String[]{"1.8", "8.0"}), - JDK_1_9(LanguageLevel.JDK_1_9, new String[]{"1.9", "9.0", "9-ea"}), - JDK_10(LanguageLevel.JDK_1_9, new String[]{"10.0", "10-ea"}); + JDK_1_0(LanguageLevel.JDK_1_3), + JDK_1_1(LanguageLevel.JDK_1_3), + JDK_1_2(LanguageLevel.JDK_1_3), + JDK_1_3(LanguageLevel.JDK_1_3), + JDK_1_4(LanguageLevel.JDK_1_4), + JDK_1_5(LanguageLevel.JDK_1_5), + JDK_1_6(LanguageLevel.JDK_1_6), + JDK_1_7(LanguageLevel.JDK_1_7), + JDK_1_8(LanguageLevel.JDK_1_8), + JDK_1_9(LanguageLevel.JDK_1_9), + JDK_10(LanguageLevel.JDK_1_9); private static final JavaSdkVersion MAX_JDK = JDK_1_9; private final LanguageLevel myMaxLanguageLevel; - private final String[] myVersionStrings; - JavaSdkVersion(@NotNull LanguageLevel maxLanguageLevel, @NotNull String[] description) { + JavaSdkVersion(@NotNull LanguageLevel maxLanguageLevel) { myMaxLanguageLevel = maxLanguageLevel; - myVersionStrings = description; } @NotNull @@ -44,20 +40,19 @@ public enum JavaSdkVersion { return myMaxLanguageLevel; } + public int getMajorVersion() { + return ordinal(); + } + @NotNull public String getDescription() { - return myVersionStrings[0]; + return JavaVersion.compose(getMajorVersion(), 0, 0, 0, false).toString(); } public boolean isAtLeast(@NotNull JavaSdkVersion version) { return compareTo(version) >= 0; } - @Override - public String toString() { - return super.toString() + ", description: " + getDescription(); - } - @NotNull public static JavaSdkVersion fromLanguageLevel(@NotNull LanguageLevel languageLevel) throws IllegalArgumentException { if (languageLevel == LanguageLevel.JDK_1_3) {