aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2016-08-11 12:39:46 +0000
committerGravatar Yue Gan <yueg@google.com>2016-08-12 08:49:35 +0000
commit653a16a49b83bd96b18ee71c8123f53305811472 (patch)
tree64a878f636aff27a4448caa5827a4b0852336093 /src/main/java/com/google/devtools
parent67ad82a319ff8959e69e774e7c15d3af904ec23d (diff)
Replace calls to <class>.newInstance with <class>.getConstructor().newInstance.
This is safer; newInstance on class objects bypasses exception checking. -- MOS_MIGRATED_REVID=129976805
Diffstat (limited to 'src/main/java/com/google/devtools')
-rw-r--r--src/main/java/com/google/devtools/build/docgen/RuleDocumentationAttribute.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java6
2 files changed, 5 insertions, 6 deletions
diff --git a/src/main/java/com/google/devtools/build/docgen/RuleDocumentationAttribute.java b/src/main/java/com/google/devtools/build/docgen/RuleDocumentationAttribute.java
index 02357ff3f6..41091afee5 100644
--- a/src/main/java/com/google/devtools/build/docgen/RuleDocumentationAttribute.java
+++ b/src/main/java/com/google/devtools/build/docgen/RuleDocumentationAttribute.java
@@ -23,7 +23,6 @@ import com.google.devtools.build.lib.packages.Attribute;
import com.google.devtools.build.lib.packages.BuildType;
import com.google.devtools.build.lib.packages.TriState;
import com.google.devtools.build.lib.syntax.Type;
-
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
@@ -258,8 +257,8 @@ public class RuleDocumentationAttribute implements Comparable<RuleDocumentationA
ConfiguredRuleClassProvider ruleClassProvider) {
if (ruleClassProvider == null) {
try {
- return usingClass.newInstance();
- } catch (IllegalAccessException | InstantiationException e) {
+ return usingClass.getConstructor().newInstance();
+ } catch (ReflectiveOperationException | IllegalArgumentException e) {
throw new IllegalStateException(e);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java b/src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java
index dc4920d1dc..5a4ebd0875 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java
@@ -527,7 +527,7 @@ public final class BlazeRuntime {
ImmutableList.Builder<BlazeModule> result = ImmutableList.builder();
for (Class<? extends BlazeModule> moduleClass : moduleClasses) {
try {
- BlazeModule module = moduleClass.newInstance();
+ BlazeModule module = moduleClass.getConstructor().newInstance();
result.add(module);
} catch (Throwable e) {
throw new IllegalStateException("Cannot instantiate module " + moduleClass.getName(), e);
@@ -782,11 +782,11 @@ public final class BlazeRuntime {
// gRPC server is not compiled in so that we don't need gRPC for bootstrapping.
Class<?> factoryClass = Class.forName(
"com.google.devtools.build.lib.server.GrpcServerImpl$Factory");
- RPCServer.Factory factory = (RPCServer.Factory) factoryClass.newInstance();
+ RPCServer.Factory factory = (RPCServer.Factory) factoryClass.getConstructor().newInstance();
return factory.create(commandExecutor, runtime.getClock(),
startupOptions.commandPort, runtime.getServerDirectory(),
startupOptions.maxIdleSeconds);
- } catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
+ } catch (ReflectiveOperationException | IllegalArgumentException e) {
throw new AbruptExitException("gRPC server not compiled in", ExitCode.BLAZE_INTERNAL_ERROR);
}
}