aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/commands/FetchCommand.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/repository/DecompressorValue.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/repository/GitCloneFunction.java15
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadFunction.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadValue.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java21
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidNdkRepositoryFunction.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/ApiLevel.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/NdkPaths.java23
-rw-r--r--src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/collect/CollectionUtils.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/collect/nestedset/EmptyNestedSet.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/collect/nestedset/Order.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/collect/nestedset/RecordingUniqueifier.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/graph/DFS.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/graph/Node.java7
-rw-r--r--src/main/java/com/google/devtools/build/lib/query2/engine/AllPathsFunction.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/TargetDeviceFamily.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/python/PyCommon.java11
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/BlazeRuntime.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/FancyTerminalEventHandler.java60
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/TestResultAnalyzer.java13
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/commands/InfoCommand.java16
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/util/CPU.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/util/CommandBuilder.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/util/StringUtil.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/util/UserUtils.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/vfs/ModifiedFileSet.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/worker/WorkerFactory.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java4
38 files changed, 142 insertions, 132 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java b/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
index 1b0383d5c6..5a59cab882 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.bazel;
+import static com.google.common.base.StandardSystemProperty.USER_NAME;
+
import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
import com.google.common.base.Supplier;
@@ -81,7 +83,7 @@ public class BazelWorkspaceStatusModule extends BlazeModule {
this.options = Preconditions.checkNotNull(options);
this.stableStatus = stableStatus;
this.volatileStatus = volatileStatus;
- this.username = System.getProperty("user.name");
+ this.username = USER_NAME.value();
this.hostname = NetUtil.findShortHostName();
this.timestamp = System.currentTimeMillis();
this.getWorkspaceStatusCommand =
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/commands/FetchCommand.java b/src/main/java/com/google/devtools/build/lib/bazel/commands/FetchCommand.java
index a9dccefcbe..e879f7574c 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/commands/FetchCommand.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/commands/FetchCommand.java
@@ -80,7 +80,7 @@ public final class FetchCommand implements BlazeCommand {
}
PackageCacheOptions pkgOptions = options.getOptions(PackageCacheOptions.class);
- if (pkgOptions.fetch == false) {
+ if (!pkgOptions.fetch) {
runtime.getReporter().handle(Event.error(null, "You cannot run fetch with --fetch=false"));
return ExitCode.COMMAND_LINE_ERROR;
}
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/DecompressorValue.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/DecompressorValue.java
index 4d67554ad8..484c6e6650 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/DecompressorValue.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/DecompressorValue.java
@@ -42,7 +42,7 @@ public class DecompressorValue implements SkyValue {
return true;
}
- if (other == null || !(other instanceof DecompressorValue)) {
+ if (!(other instanceof DecompressorValue)) {
return false;
}
@@ -126,7 +126,7 @@ public class DecompressorValue implements SkyValue {
return true;
}
- if (other == null || !(other instanceof DecompressorDescriptor)) {
+ if (!(other instanceof DecompressorDescriptor)) {
return false;
}
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/GitCloneFunction.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/GitCloneFunction.java
index 29c7b729f6..e8dc70cc18 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/GitCloneFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/GitCloneFunction.java
@@ -134,13 +134,12 @@ public class GitCloneFunction implements SkyFunction {
// recursively includes itself as a submodule, which would result in an infinite
// loop if submodules are cloned recursively. For now, limit submodules to only
// the first level.
- if (descriptor.initSubmodules) {
- if (!git.submoduleInit().call().isEmpty()) {
- git.submoduleUpdate()
- .setProgressMonitor(
- new GitProgressMonitor("Cloning submodules for " + descriptor.remote, reporter))
- .call();
- }
+ if (descriptor.initSubmodules && !git.submoduleInit().call().isEmpty()) {
+ git
+ .submoduleUpdate()
+ .setProgressMonitor(
+ new GitProgressMonitor("Cloning submodules for " + descriptor.remote, reporter))
+ .call();
}
} catch (InvalidRemoteException e) {
throw new RepositoryFunctionException(
@@ -218,7 +217,7 @@ public class GitCloneFunction implements SkyFunction {
if (obj == this) {
return true;
}
- if (obj == null || !(obj instanceof GitRepositoryDescriptor)) {
+ if (!(obj instanceof GitRepositoryDescriptor)) {
return false;
}
GitRepositoryDescriptor other = (GitRepositoryDescriptor) obj;
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadFunction.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadFunction.java
index 5c7bf51371..f17f829574 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadFunction.java
@@ -110,7 +110,7 @@ public class HttpDownloadFunction implements SkyFunction {
if (obj == this) {
return true;
}
- if (obj == null || !(obj instanceof HttpDescriptor)) {
+ if (!(obj instanceof HttpDescriptor)) {
return false;
}
HttpDescriptor other = (HttpDescriptor) obj;
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadValue.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadValue.java
index fbd989a113..1d4561a231 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadValue.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/HttpDownloadValue.java
@@ -43,7 +43,7 @@ public class HttpDownloadValue implements SkyValue {
if (this == other) {
return true;
}
- if (other == null || !(other instanceof HttpDownloadValue)) {
+ if (!(other instanceof HttpDownloadValue)) {
return false;
}
HttpDownloadValue otherValue = (HttpDownloadValue) other;
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
index 488015874c..2133bd5d10 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
@@ -184,14 +184,19 @@ public class BazelRuleClassProvider {
}
}
- if (prerequisiteTarget instanceof PackageGroup) {
- if (!attrName.equals("visibility")) {
- context.reportError(rule.getAttributeLocation(attrName),
- "in " + attrName + " attribute of " + rule.getRuleClass()
- + " rule " + rule.getLabel() + ": package group '"
- + prerequisiteLabel + "' is misplaced here "
- + "(they are only allowed in the visibility attribute)");
- }
+ if (prerequisiteTarget instanceof PackageGroup && !attrName.equals("visibility")) {
+ context.reportError(
+ rule.getAttributeLocation(attrName),
+ "in "
+ + attrName
+ + " attribute of "
+ + rule.getRuleClass()
+ + " rule "
+ + rule.getLabel()
+ + ": package group '"
+ + prerequisiteLabel
+ + "' is misplaced here "
+ + "(they are only allowed in the visibility attribute)");
}
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidNdkRepositoryFunction.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidNdkRepositoryFunction.java
index 57e775722d..bdf22915e9 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidNdkRepositoryFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidNdkRepositoryFunction.java
@@ -142,11 +142,11 @@ public class AndroidNdkRepositoryFunction extends RepositoryFunction {
toolchain.getToolPathList().get(0).getPath());
// Create file glob patterns for the various files that the toolchain references.
-
- String androidPlatformIncludes = NdkPaths.stripRepositoryPrefix(toolchain.getBuiltinSysroot())
- + "/**/*";
- List<String> toolchainFileGlobPatterns = new ArrayList<String>();
+ String androidPlatformIncludes =
+ NdkPaths.stripRepositoryPrefix(toolchain.getBuiltinSysroot()) + "/**/*";
+
+ List<String> toolchainFileGlobPatterns = new ArrayList<>();
toolchainFileGlobPatterns.add(androidPlatformIncludes);
for (String cxxFlag : toolchain.getUnfilteredCxxFlagList()) {
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/ApiLevel.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/ApiLevel.java
index 34e6663a7b..eaf8be4def 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/ApiLevel.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/ApiLevel.java
@@ -136,7 +136,7 @@ class ApiLevel {
// Check that this API level supports the given cpu architecture (eg 64 bit is supported on only
// 21+).
- if (!API_LEVEL_TO_ARCHITECTURES.get(correctedApiLevel).contains(targetCpu)) {
+ if (!API_LEVEL_TO_ARCHITECTURES.containsEntry(correctedApiLevel, targetCpu)) {
// If the given API level does not support the given architecture, find an API level that
// does support this architecture. A warning isn't printed because the crosstools for
// architectures that aren't supported by this API level are generated anyway, even if the
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/NdkPaths.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/NdkPaths.java
index 564a34d739..690fde3b11 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/NdkPaths.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/NdkPaths.java
@@ -184,24 +184,21 @@ public class NdkPaths {
ImmutableList<String> createStlportIncludePaths() {
- String prefix = "external/%repositoryName%/ndk/sources/cxx-stl/"
- .replace("%repositoryName%", repositoryName);
+ String prefix =
+ "external/%repositoryName%/ndk/sources/cxx-stl/"
+ .replace("%repositoryName%", repositoryName);
- return ImmutableList.<String>builder()
- .add(prefix + "stlport/stlport")
- .add(prefix + "gabi++/include")
- .build();
+ return ImmutableList.of(prefix + "stlport/stlport", prefix + "gabi++/include");
}
ImmutableList<String> createLibcxxIncludePaths() {
- String prefix = "external/%repositoryName%/ndk/sources/"
- .replace("%repositoryName%", repositoryName);
+ String prefix =
+ "external/%repositoryName%/ndk/sources/".replace("%repositoryName%", repositoryName);
- return ImmutableList.<String>builder()
- .add(prefix + "cxx-stl/llvm-libc++/libcxx/include")
- .add(prefix + "cxx-stl/llvm-libc++abi/libcxxabi/include")
- .add(prefix + "android/support/include")
- .build();
+ return ImmutableList.of(
+ prefix + "cxx-stl/llvm-libc++/libcxx/include",
+ prefix + "cxx-stl/llvm-libc++abi/libcxxabi/include",
+ prefix + "android/support/include");
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
index 66275dcd6d..24391f3b61 100644
--- a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
+++ b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
@@ -101,7 +101,6 @@ import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
@@ -190,7 +189,7 @@ public class ExecutionTool {
for (BlazeModule module : runtime.getBlazeModules()) {
builder.addAll(module.getActionContextConsumers());
}
- builder.addAll(Arrays.asList(extraConsumers));
+ builder.add(extraConsumers);
return builder.build();
}
@@ -200,7 +199,7 @@ public class ExecutionTool {
for (BlazeModule module : runtime.getBlazeModules()) {
builder.addAll(module.getActionContextProviders());
}
- builder.addAll(Arrays.asList(extraProviders));
+ builder.add(extraProviders);
return builder.build();
}
diff --git a/src/main/java/com/google/devtools/build/lib/collect/CollectionUtils.java b/src/main/java/com/google/devtools/build/lib/collect/CollectionUtils.java
index d7b04bb8e0..55c1cad13b 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/CollectionUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/CollectionUtils.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.collect;
+import static com.google.common.collect.Sets.newEnumSet;
+
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
@@ -189,7 +191,7 @@ public final class CollectionUtils {
}
}
- return result.isEmpty() ? EnumSet.noneOf(clazz) : EnumSet.copyOf(result);
+ return newEnumSet(result, clazz);
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/collect/nestedset/EmptyNestedSet.java b/src/main/java/com/google/devtools/build/lib/collect/nestedset/EmptyNestedSet.java
index 5889ba8bf1..8bf4d556ad 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/nestedset/EmptyNestedSet.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/nestedset/EmptyNestedSet.java
@@ -82,6 +82,6 @@ final class EmptyNestedSet<E> extends NestedSet<E> {
@Override
public int shallowHashCode() {
- return Objects.hash(getOrder());
+ return Objects.hashCode(getOrder());
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/collect/nestedset/Order.java b/src/main/java/com/google/devtools/build/lib/collect/nestedset/Order.java
index 201fc37689..7f25ad658d 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/nestedset/Order.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/nestedset/Order.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.collect.nestedset;
import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Maps;
import java.util.HashMap;
@@ -84,7 +85,7 @@ public enum Order {
static {
Order[] tmpValues = Order.values();
- HashMap<String, Order> entries = new HashMap<>(tmpValues.length);
+ HashMap<String, Order> entries = Maps.newHashMapWithExpectedSize(tmpValues.length);
for (Order current : tmpValues) {
entries.put(current.getName(), current);
diff --git a/src/main/java/com/google/devtools/build/lib/collect/nestedset/RecordingUniqueifier.java b/src/main/java/com/google/devtools/build/lib/collect/nestedset/RecordingUniqueifier.java
index c71f2006c8..51715eaf59 100644
--- a/src/main/java/com/google/devtools/build/lib/collect/nestedset/RecordingUniqueifier.java
+++ b/src/main/java/com/google/devtools/build/lib/collect/nestedset/RecordingUniqueifier.java
@@ -15,9 +15,9 @@ package com.google.devtools.build.lib.collect.nestedset;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
+import com.google.common.collect.Sets;
import java.util.BitSet;
-import java.util.HashSet;
import java.util.Set;
/**
@@ -68,7 +68,7 @@ class RecordingUniqueifier implements Uniqueifier {
SHARED_SMALL_MEMOS_2 = memos2;
}
- private final Set<Object> witnessed = new HashSet<>(256);
+ private final Set<Object> witnessed = Sets.newHashSetWithExpectedSize(256);
private final BitSet memo = new BitSet();
private int idx = 0;
diff --git a/src/main/java/com/google/devtools/build/lib/graph/DFS.java b/src/main/java/com/google/devtools/build/lib/graph/DFS.java
index 7930a2faa4..77ad5d9a94 100644
--- a/src/main/java/com/google/devtools/build/lib/graph/DFS.java
+++ b/src/main/java/com/google/devtools/build/lib/graph/DFS.java
@@ -14,7 +14,7 @@
package com.google.devtools.build.lib.graph;
-import com.google.common.collect.Lists;
+import com.google.common.collect.Ordering;
import java.util.Collection;
import java.util.Collections;
@@ -102,8 +102,7 @@ public class DFS<T> {
Collection<Node<T>> edgeTargets = transpose
? node.getPredecessors() : node.getSuccessors();
if (edgeOrder != null) {
- List<Node<T>> mutableNodeList = Lists.newArrayList(edgeTargets);
- Collections.sort(mutableNodeList, edgeOrder);
+ List<Node<T>> mutableNodeList = Ordering.from(edgeOrder).sortedCopy(edgeTargets);
edgeTargets = mutableNodeList;
}
diff --git a/src/main/java/com/google/devtools/build/lib/graph/Node.java b/src/main/java/com/google/devtools/build/lib/graph/Node.java
index d271ca0f78..b873b52262 100644
--- a/src/main/java/com/google/devtools/build/lib/graph/Node.java
+++ b/src/main/java/com/google/devtools/build/lib/graph/Node.java
@@ -13,10 +13,11 @@
// limitations under the License.
package com.google.devtools.build.lib.graph;
+import com.google.common.collect.Sets;
+
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
-import java.util.HashSet;
import java.util.List;
/**
@@ -173,8 +174,8 @@ public final class Node<T> {
return true;
} else if (previousSize == ARRAYLIST_THRESHOLD) {
// ArrayList -> HashSet
- Collection<Node<T>> newSet = new HashSet<>(INITIAL_HASHSET_CAPACITY);
- newSet.addAll(set);
+ Collection<Node<T>> newSet = Sets.newHashSetWithExpectedSize(INITIAL_HASHSET_CAPACITY);
+ newSet.addAll(set);
newSet.add(value);
return updateField(predecessorSet, newSet);
} else {
diff --git a/src/main/java/com/google/devtools/build/lib/query2/engine/AllPathsFunction.java b/src/main/java/com/google/devtools/build/lib/query2/engine/AllPathsFunction.java
index ca307a8ff4..bfa4fa6a36 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/engine/AllPathsFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/engine/AllPathsFunction.java
@@ -71,10 +71,8 @@ public class AllPathsFunction implements QueryFunction {
Collection<T> reverseDeps = env.getReverseDeps(worklist);
worklist = new ArrayList<>();
for (T np : reverseDeps) {
- if (reachableFromX.contains(np)) {
- if (result.add(np)) {
- worklist.add(np);
- }
+ if (reachableFromX.contains(np) && result.add(np)) {
+ worklist.add(np);
}
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
index 79260c980f..0e552a6d96 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.rules.android;
+import static com.google.common.base.Strings.isNullOrEmpty;
+
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Joiner;
import com.google.common.base.Optional;
@@ -664,7 +666,7 @@ public abstract class AndroidBinary implements RuleConfiguredTargetFactory {
private static String getExpandedMakeVarsForAttr(RuleContext context, String attr) {
final String value = context.attributes().get(attr, Type.STRING);
- if (value == null || value.isEmpty()) {
+ if (isNullOrEmpty(value)) {
return null;
}
return context.expandMakeVariables(attr, value);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java
index e3f8f23bd0..520e4c9420 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProvider.java
@@ -184,7 +184,7 @@ public final class AndroidResourcesProvider implements TransitiveInfoProvider {
@Override
public int hashCode() {
- return Objects.hash(label);
+ return Objects.hashCode(label);
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java
index 896a73d6e7..c97d5b6fd1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java
@@ -783,7 +783,7 @@ public final class CppLinkAction extends AbstractAction {
} else {
// TODO(bazel-team): once the LLVM compiler patches have been finalized, this should
// be converted to a crosstool feature configuration instead.
- List<String> opts = new ArrayList<String>(linkopts);
+ List<String> opts = new ArrayList<>(linkopts);
opts.add("-flto");
opts.add(
"-Wl,-plugin-opt,thin-lto="
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java
index 8f6ebcb283..e89e3a119d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java
@@ -874,7 +874,7 @@ public final class LinkCommandLine extends CommandLine {
if (ltoMap != null) {
Preconditions.checkState(
- ltoMap.size() == 0, "Still have LTO objects left: " + ltoMap + ", command-line: " + argv);
+ ltoMap.size() == 0, "Still have LTO objects left: %s, command-line: %s", ltoMap, argv);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
index 0285031c7c..c894f2b571 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
@@ -640,10 +640,11 @@ public class JavaCompileAction extends AbstractAction {
: "--indirect_dependency");
builder.add(jar.getExecPathString());
Label label = getTargetName(jar);
- builder.add(label.getPackageIdentifier().getRepository().isDefault()
- ? label.toString()
- // Escape '@' prefix for .params file.
- : "@" + label.toString());
+ builder.add(
+ label.getPackageIdentifier().getRepository().isDefault()
+ ? label.toString()
+ // Escape '@' prefix for .params file.
+ : "@" + label);
}
return builder.build();
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/TargetDeviceFamily.java b/src/main/java/com/google/devtools/build/lib/rules/objc/TargetDeviceFamily.java
index 2233f965a3..49cac13037 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/TargetDeviceFamily.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/TargetDeviceFamily.java
@@ -103,7 +103,7 @@ public enum TargetDeviceFamily {
*/
public static Set<TargetDeviceFamily> fromBuildSetting(String targetedDevice) {
ImmutableSet.Builder<TargetDeviceFamily> result = ImmutableSet.builder();
- for (String numericSetting : Splitter.on(",").split(targetedDevice)) {
+ for (String numericSetting : Splitter.on(',').split(targetedDevice)) {
numericSetting = numericSetting.trim();
switch (numericSetting) {
case "1":
diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PyCommon.java b/src/main/java/com/google/devtools/build/lib/rules/python/PyCommon.java
index fe9c2b6257..23f19a9b34 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/python/PyCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/python/PyCommon.java
@@ -270,11 +270,12 @@ public final class PyCommon {
+ "' need to be converted to Python 2 (not yet implemented)");
}
}
- if (targetVersion == PythonVersion.PY3 || targetVersion == PythonVersion.PY2AND3) {
- if (sourceVersion == PythonVersion.PY2ONLY) {
- ruleContext.ruleError("Rule '" + source
- + "' can only be used with Python 2, and cannot be converted to Python 3");
- }
+ if ((targetVersion == PythonVersion.PY3 || targetVersion == PythonVersion.PY2AND3)
+ && sourceVersion == PythonVersion.PY2ONLY) {
+ ruleContext.ruleError(
+ "Rule '"
+ + source
+ + "' can only be used with Python 2, and cannot be converted to Python 3");
}
}
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 ddd3cb1585..edd1b92602 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
@@ -819,10 +819,8 @@ public final class BlazeRuntime {
eventBus.post(new CommandPrecompleteEvent(originalExit));
// If Blaze did not suffer an infrastructure failure, check for errors in modules.
ExitCode exitCode = originalExit;
- if (!originalExit.isInfrastructureFailure()) {
- if (pendingException != null) {
- exitCode = pendingException.getExitCode();
- }
+ if (!originalExit.isInfrastructureFailure() && pendingException != null) {
+ exitCode = pendingException.getExitCode();
}
pendingException = null;
return exitCode;
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/FancyTerminalEventHandler.java b/src/main/java/com/google/devtools/build/lib/runtime/FancyTerminalEventHandler.java
index a2d03ae2ab..a1242b0e59 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/FancyTerminalEventHandler.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/FancyTerminalEventHandler.java
@@ -15,7 +15,7 @@ package com.google.devtools.build.lib.runtime;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableList;
-import com.google.common.collect.Iterables;
+import com.google.common.collect.Iterators;
import com.google.devtools.build.lib.events.Event;
import com.google.devtools.build.lib.events.EventKind;
import com.google.devtools.build.lib.util.Pair;
@@ -66,36 +66,36 @@ public class FancyTerminalEventHandler extends BlazeCommandEventHandler {
// [1,442 / 23,476] Compiling base/base.cc
"^\\[(?:(?:\\d\\d?\\d?%)|(?:[\\d+,]+ / [\\d,]+))\\] ");
private static final Splitter LINEBREAK_SPLITTER = Splitter.on('\n');
- private static final List<String> SPECIAL_MESSAGES = ImmutableList.of(
- "Reading startup options from "
- + "HKEY_LOCAL_MACHINE\\Software\\Google\\Devtools\\Blaze\\CurrentVersion",
- "Contacting ftp://microsoft.com/win3.1/downloadcenter",
- "Downloading MSVCR71.DLL",
- "Installing Windows Update 37 of 118...",
- "Sending request to Azure server",
- "Checking whether your copy of Blaze is Genuine",
- "Initializing HAL",
- "Loading NDIS2SUP.VXD",
- "Initializing DRM",
- "Contacting license server",
- "Starting EC2 instances",
- "Starting MS-DOS 6.0",
- "Updating virus database",
- "Linking WIN32.DLL",
- "Linking GGL32.EXE",
- "Starting ActiveX controls",
- "Launching Microsoft Visual Studio 2013",
- "Launching IEXPLORE.EXE",
- "Initializing BASIC v2.1 interpreter",
- "Parsing COM object monikers",
- "Notifying field agents",
- "Negotiating with killer robots",
- "Searching for cellular signal",
- "Checking for outstanding GCard expenses",
- "Waiting for workstation CPU temperature to decrease"
- );
+ private static final List<String> SPECIAL_MESSAGES =
+ ImmutableList.of(
+ "Reading startup options from "
+ + "HKEY_LOCAL_MACHINE\\Software\\Google\\Devtools\\Blaze\\CurrentVersion",
+ "Contacting ftp://microsoft.com/win3.1/downloadcenter",
+ "Downloading MSVCR71.DLL",
+ "Installing Windows Update 37 of 118...",
+ "Sending request to Azure server",
+ "Checking whether your copy of Blaze is Genuine",
+ "Initializing HAL",
+ "Loading NDIS2SUP.VXD",
+ "Initializing DRM",
+ "Contacting license server",
+ "Starting EC2 instances",
+ "Starting MS-DOS 6.0",
+ "Updating virus database",
+ "Linking WIN32.DLL",
+ "Linking GGL32.EXE",
+ "Starting ActiveX controls",
+ "Launching Microsoft Visual Studio 2013",
+ "Launching IEXPLORE.EXE",
+ "Initializing BASIC v2.1 interpreter",
+ "Parsing COM object monikers",
+ "Notifying field agents",
+ "Negotiating with killer robots",
+ "Searching for cellular signal",
+ "Checking for outstanding GCard expenses",
+ "Waiting for workstation CPU temperature to decrease");
- private final Iterator<String> messageIterator = Iterables.cycle(SPECIAL_MESSAGES).iterator();
+ private final Iterator<String> messageIterator = Iterators.cycle(SPECIAL_MESSAGES);
private volatile boolean trySpecial;
private volatile Instant skipUntil = Instant.now();
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/TestResultAnalyzer.java b/src/main/java/com/google/devtools/build/lib/runtime/TestResultAnalyzer.java
index 33a228c9a1..e9dbd9bbb2 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/TestResultAnalyzer.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/TestResultAnalyzer.java
@@ -263,12 +263,13 @@ public class TestResultAnalyzer {
.setRanRemotely(result.getData().getIsRemoteStrategy());
List<String> warnings = new ArrayList<>();
- if (status == BlazeTestStatus.PASSED) {
- if (shouldEmitTestSizeWarningInSummary(
- summaryOptions.testVerboseTimeoutWarnings,
- warnings, result.getData().getTestProcessTimesList(), target)) {
- summaryBuilder.setWasUnreportedWrongSize(true);
- }
+ if (status == BlazeTestStatus.PASSED
+ && shouldEmitTestSizeWarningInSummary(
+ summaryOptions.testVerboseTimeoutWarnings,
+ warnings,
+ result.getData().getTestProcessTimesList(),
+ target)) {
+ summaryBuilder.setWasUnreportedWrongSize(true);
}
return summaryBuilder
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java b/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java
index e168462ad2..4418f1eb8d 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java
@@ -226,7 +226,7 @@ public final class HelpCommand implements BlazeCommand {
for (String name : commands) {
BlazeCommand command = commandsByName.get(name);
- String varName = name.toUpperCase().replace("-", "_");
+ String varName = name.toUpperCase().replace('-', '_');
Command annotation = command.getClass().getAnnotation(Command.class);
if (!annotation.completion().isEmpty()) {
outErr.printOutLn("BAZEL_COMMAND_" + varName + "_ARGUMENT=\""
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/commands/InfoCommand.java b/src/main/java/com/google/devtools/build/lib/runtime/commands/InfoCommand.java
index d1f18cefcd..1a0566b9cd 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/commands/InfoCommand.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/commands/InfoCommand.java
@@ -365,15 +365,13 @@ public class InfoCommand implements BlazeCommand {
AllowedRuleClassInfo.Builder info = AllowedRuleClassInfo.newBuilder();
info.setPolicy(AllowedRuleClassInfo.AllowedRuleClasses.ANY);
- if (attr.isStrictLabelCheckingEnabled()) {
- if (attr.getAllowedRuleClassesPredicate() != Predicates.<RuleClass>alwaysTrue()) {
- info.setPolicy(AllowedRuleClassInfo.AllowedRuleClasses.SPECIFIED);
- Predicate<RuleClass> filter = attr.getAllowedRuleClassesPredicate();
- for (RuleClass otherClass : Iterables.filter(
- ruleClasses, filter)) {
- if (otherClass.isDocumented()) {
- info.addAllowedRuleClass(otherClass.getName());
- }
+ if (attr.isStrictLabelCheckingEnabled()
+ && attr.getAllowedRuleClassesPredicate() != Predicates.<RuleClass>alwaysTrue()) {
+ info.setPolicy(AllowedRuleClassInfo.AllowedRuleClasses.SPECIFIED);
+ Predicate<RuleClass> filter = attr.getAllowedRuleClassesPredicate();
+ for (RuleClass otherClass : Iterables.filter(ruleClasses, filter)) {
+ if (otherClass.isDocumented()) {
+ info.addAllowedRuleClass(otherClass.getName());
}
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
index 011ccbc249..829f69ed60 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
@@ -108,7 +108,7 @@ public class LinuxSandboxedStrategy implements SpawnActionContext {
FileOutErr outErr = actionExecutionContext.getFileOutErr();
// The execId is a unique ID just for this invocation of "exec".
- String execId = uuid + "-" + Integer.toString(execCounter.getAndIncrement());
+ String execId = uuid + "-" + execCounter.getAndIncrement();
// Each invocation of "exec" gets its own sandbox.
Path sandboxPath =
@@ -216,7 +216,7 @@ public class LinuxSandboxedStrategy implements SpawnActionContext {
Path target = mount.getValue();
// The source must exist.
- Preconditions.checkArgument(source.exists(), source.toString() + " does not exist");
+ Preconditions.checkArgument(source.exists(), "%s does not exist", source.toString());
// We cannot mount two different things onto the same target.
if (!mounts.containsEntry(source, target) && mounts.containsValue(target)) {
diff --git a/src/main/java/com/google/devtools/build/lib/util/CPU.java b/src/main/java/com/google/devtools/build/lib/util/CPU.java
index 0bfce8a6ba..51b126f532 100644
--- a/src/main/java/com/google/devtools/build/lib/util/CPU.java
+++ b/src/main/java/com/google/devtools/build/lib/util/CPU.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.util;
+import static com.google.common.base.StandardSystemProperty.OS_ARCH;
+
import com.google.common.collect.ImmutableSet;
import java.util.Set;
@@ -46,7 +48,7 @@ public enum CPU {
}
private static CPU determineCurrentCpu() {
- String currentArch = System.getProperty("os.arch");
+ String currentArch = OS_ARCH.value();
for (CPU cpu : CPU.values()) {
if (cpu.archs.contains(currentArch)) {
diff --git a/src/main/java/com/google/devtools/build/lib/util/CommandBuilder.java b/src/main/java/com/google/devtools/build/lib/util/CommandBuilder.java
index ae25c4f8dc..13cb298143 100644
--- a/src/main/java/com/google/devtools/build/lib/util/CommandBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/util/CommandBuilder.java
@@ -14,6 +14,8 @@
package com.google.devtools.build.lib.util;
+import static com.google.common.base.StandardSystemProperty.JAVA_IO_TMPDIR;
+
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.CharMatcher;
import com.google.common.base.Joiner;
@@ -104,7 +106,7 @@ public final class CommandBuilder {
}
public CommandBuilder useTempDir() {
- workingDir = new File(System.getProperty("java.io.tmpdir"));
+ workingDir = new File(JAVA_IO_TMPDIR.value());
return this;
}
diff --git a/src/main/java/com/google/devtools/build/lib/util/StringUtil.java b/src/main/java/com/google/devtools/build/lib/util/StringUtil.java
index b24742c2cb..54fdd5f310 100644
--- a/src/main/java/com/google/devtools/build/lib/util/StringUtil.java
+++ b/src/main/java/com/google/devtools/build/lib/util/StringUtil.java
@@ -87,7 +87,7 @@ public class StringUtil {
// many concurrent submissions that touch the same files,
// attempt to use a single reference for equal strings via the
// deduplicator.
- result.add(StringCanonicalizer.intern(new String(val)));
+ result.add(StringCanonicalizer.intern(val));
}
return result;
}
diff --git a/src/main/java/com/google/devtools/build/lib/util/UserUtils.java b/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
index 93e2a662af..111002b75f 100644
--- a/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/util/UserUtils.java
@@ -14,6 +14,8 @@
package com.google.devtools.build.lib.util;
+import static com.google.common.base.StandardSystemProperty.USER_NAME;
+
import com.google.common.base.Strings;
import java.util.Map;
@@ -30,7 +32,7 @@ public final class UserUtils {
}
private static class Holder {
- static final String userName = System.getProperty("user.name");
+ static final String userName = USER_NAME.value();
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/vfs/ModifiedFileSet.java b/src/main/java/com/google/devtools/build/lib/vfs/ModifiedFileSet.java
index 3d6a6387d9..319017e5e9 100644
--- a/src/main/java/com/google/devtools/build/lib/vfs/ModifiedFileSet.java
+++ b/src/main/java/com/google/devtools/build/lib/vfs/ModifiedFileSet.java
@@ -63,7 +63,7 @@ public final class ModifiedFileSet {
@Override
public int hashCode() {
- return Objects.hash(modified);
+ return Objects.hashCode(modified);
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerFactory.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerFactory.java
index a6e37c4031..8248e1c062 100644
--- a/src/main/java/com/google/devtools/build/lib/worker/WorkerFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerFactory.java
@@ -31,7 +31,7 @@ final class WorkerFactory extends BaseKeyedPooledObjectFactory<WorkerKey, Worker
*/
@Override
public PooledObject<Worker> wrap(Worker worker) {
- return new DefaultPooledObject<Worker>(worker);
+ return new DefaultPooledObject<>(worker);
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
index 8fb7ef29a6..bfac250546 100644
--- a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
@@ -75,8 +75,8 @@ final class WorkerSpawnStrategy implements SpawnActionContext {
// persistent mode and then pass it the flagfile via a WorkRequest to make it actually do the
// work.
if (!Iterables.getLast(spawn.getArguments()).startsWith("@")) {
- Preconditions.checkState(
- false, "Must have parameter file as last arg, got args: " + spawn.getArguments());
+ throw new IllegalStateException(
+ "Must have parameter file as last arg, got args: " + spawn.getArguments());
}
FileOutErr outErr = actionExecutionContext.getFileOutErr();