Browse Source

GlobalBundleCache: Fix ClassNewInstance warning from Error Prone

Error Prone reports:

  [ClassNewInstance] Class.newInstance() bypasses exception checking;
  prefer getDeclaredConstructor().newInstance()

  See https://errorprone.info/bugpattern/ClassNewInstance

This was the only occurrence of the warning in the code base; now it's
fixed, increase the severity to ERROR to prevent future occurrences.

Change-Id: Ic04d1c5d2bd458bbb4bb399d6ce9d147bd48d0b1
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
tags/v5.4.1.201908211225-r
David Pursehouse 4 years ago
parent
commit
dad9e1ff95
2 changed files with 5 additions and 3 deletions
  1. 4
    2
      org.eclipse.jgit/src/org/eclipse/jgit/nls/GlobalBundleCache.java
  2. 1
    1
      tools/BUILD

+ 4
- 2
org.eclipse.jgit/src/org/eclipse/jgit/nls/GlobalBundleCache.java View File

@@ -43,6 +43,7 @@

package org.eclipse.jgit.nls;

import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
@@ -92,12 +93,13 @@ class GlobalBundleCache {
}
TranslationBundle bundle = bundles.get(type);
if (bundle == null) {
bundle = type.newInstance();
bundle = type.getDeclaredConstructor().newInstance();
bundle.load(locale);
bundles.put(type, bundle);
}
return (T) bundle;
} catch (InstantiationException | IllegalAccessException e) {
} catch (InstantiationException | IllegalAccessException
| InvocationTargetException | NoSuchMethodException e) {
throw new Error(e);
}
}

+ 1
- 1
tools/BUILD View File

@@ -32,7 +32,7 @@ java_package_configuration(
"-Xep:BoxedPrimitiveConstructor:ERROR",
"-Xep:CannotMockFinalClass:ERROR",
"-Xep:ClassCanBeStatic:ERROR",
"-Xep:ClassNewInstance:WARN",
"-Xep:ClassNewInstance:ERROR",
"-Xep:DefaultCharset:ERROR",
"-Xep:DoubleCheckedLocking:ERROR",
"-Xep:ElementsCountedInLoop:ERROR",

Loading…
Cancel
Save