@Override public String java8CompatibilityMessage() { return compatibilityMessage(JAVA_8); }
private String compatibilityMessage(int expected) { return isNotSet() ? (" (sonar.java.source not set. Assuming " + expected + " or greater.)") : ""; }
@Override public boolean isJava6Compatible() { return notSetOrAtLeast(JAVA_6); }
public static JavaVersion fromString(String javaVersion) { if (javaVersion != null) { try { return new JavaVersionImpl(Integer.parseInt(javaVersion.replaceAll("1.", ""))); } catch (NumberFormatException e) { LOG.warn("Invalid java version (got \"" + javaVersion + "\"). " + "The version will be ignored. Accepted formats are \"1.X\", or simply \"X\" " + "(for instance: \"1.5\" or \"5\", \"1.6\" or \"6\", \"1.7\" or \"7\", etc.)"); } } return new JavaVersionImpl(); }
private JavaVersion getJavaVersion() { JavaVersion javaVersion = JavaVersionImpl.fromString(settings.get(Java.SOURCE_VERSION).orElse(null)); LOG.info("Configured Java source version (" + Java.SOURCE_VERSION + "): " + javaVersion); return javaVersion; }
public static JavaVersion fromString(@Nullable String javaVersion) { if (javaVersion == null) { return new JavaVersionImpl(); } try { String cleanedVersion = javaVersion.startsWith("1.") ? javaVersion.substring(2) : javaVersion; int versionAsInt = Integer.parseInt(cleanedVersion); return new JavaVersionImpl(versionAsInt); } catch (NumberFormatException e) { LOG.warn("Invalid java version (got \"" + javaVersion + "\"). " + "The version will be ignored. Accepted formats are \"1.X\", or simply \"X\" " + "(for instance: \"1.5\" or \"5\", \"1.6\" or \"6\", \"1.7\" or \"7\", etc.)"); return new JavaVersionImpl(); } }
public static JavaVersion fromString(@Nullable String javaVersion) { if (javaVersion == null) { return new JavaVersionImpl(); } try { String cleanedVersion = javaVersion.startsWith("1.") ? javaVersion.substring(2) : javaVersion; int versionAsInt = Integer.parseInt(cleanedVersion); return new JavaVersionImpl(versionAsInt); } catch (NumberFormatException e) { LOG.warn("Invalid java version (got \"" + javaVersion + "\"). " + "The version will be ignored. Accepted formats are \"1.X\", or simply \"X\" " + "(for instance: \"1.5\" or \"5\", \"1.6\" or \"6\", \"1.7\" or \"7\", etc.)"); return new JavaVersionImpl(); } }
private boolean notSetOrAtLeast(int requiredJavaVersion) { return isNotSet() || requiredJavaVersion <= javaVersion; }
@Override public boolean isJava7Compatible() { return notSetOrAtLeast(JAVA_7); }
@Override public String java6CompatibilityMessage() { return compatibilityMessage(JAVA_6); }
@VisibleForTesting public static void scanSingleFileForTests(File file, VisitorsBridge visitorsBridge) { scanSingleFileForTests(file, visitorsBridge, new JavaVersionImpl()); }
private String compatibilityMessage(int expected) { return isNotSet() ? (" (sonar.java.source not set. Assuming " + expected + " or greater.)") : ""; }
@Override public boolean isJava7Compatible() { return notSetOrAtLeast(JAVA_7); }
@Override public String java8CompatibilityMessage() { return compatibilityMessage(JAVA_8); }
@VisibleForTesting public static void scanSingleFileForTests(File file, VisitorsBridge visitorsBridge) { scanSingleFileForTests(file, visitorsBridge, new JavaVersionImpl()); }
private String compatibilityMessage(int expected) { return isNotSet() ? (" (sonar.java.source not set. Assuming " + expected + " or greater.)") : ""; }
@Override public boolean isJava6Compatible() { return notSetOrAtLeast(JAVA_6); }
@Override public String java7CompatibilityMessage() { return compatibilityMessage(JAVA_7); }
/** * Verifies that the provided file will raise all the expected issues when analyzed with the given check and a given * java version used for the sources. * * @param filename The file to be analyzed * @param check The check to be used for the analysis * @param javaVersion The version to consider for the analysis (6 for java 1.6, 7 for 1.7, etc.) */ public static void verify(String filename, JavaFileScanner check, int javaVersion) { JavaCheckVerifier javaCheckVerifier = new JavaCheckVerifier(); javaCheckVerifier.providedJavaVersion = true; javaCheckVerifier.javaVersion = new JavaVersionImpl(javaVersion); scanFile(filename, check, javaCheckVerifier); }
private boolean notSetOrAtLeast(int requiredJavaVersion) { return isNotSet() || requiredJavaVersion <= javaVersion; }