aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java_tools
diff options
context:
space:
mode:
authorGravatar Liam Miller-Cushon <cushon@google.com>2016-11-17 01:02:36 +0000
committerGravatar Kristina Chodorow <kchodorow@google.com>2016-11-17 18:18:23 +0000
commit047bfddc702a83ad630638f5d5584a164398ff33 (patch)
tree1b1d6db4f37aec6bbf76964e760a1b3f0477039f /src/java_tools
parentc167d1e9dc03aebdc7dd8f59cbde4e4d783fee0e (diff)
-- MOS_MIGRATED_REVID=139399869
Diffstat (limited to 'src/java_tools')
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/DependencyModule.java24
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/StrictJavaDepsPlugin.java2
2 files changed, 20 insertions, 6 deletions
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/DependencyModule.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/DependencyModule.java
index 8523afa495..80ea962836 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/DependencyModule.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/DependencyModule.java
@@ -15,13 +15,17 @@
package com.google.devtools.build.buildjar.javac.plugins.dependency;
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import com.google.common.base.Verify;
+import com.google.common.collect.FluentIterable;
+import com.google.common.collect.Ordering;
import com.google.devtools.build.buildjar.JarOwner;
import com.google.devtools.build.buildjar.javac.plugins.BlazeJavaCompilerPlugin;
import com.google.devtools.build.lib.view.proto.Deps;
import com.google.devtools.build.lib.view.proto.Deps.Dependency.Kind;
+import com.sun.tools.javac.code.Symbol.PackageSymbol;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
@@ -35,7 +39,6 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.TreeSet;
/**
* Wrapper class for managing dependencies on top of
@@ -82,7 +85,7 @@ public final class DependencyModule {
Set<String> requiredClasspath;
private final FixMessage fixMessage;
private final Set<String> exemptGenerators;
- private final Set<String> packages;
+ private final Set<PackageSymbol> packages;
DependencyModule(
StrictJavaDeps strictJavaDeps,
@@ -108,7 +111,7 @@ public final class DependencyModule {
this.usedClasspath = new HashSet<>();
this.fixMessage = fixMessage;
this.exemptGenerators = exemptGenerators;
- this.packages = new TreeSet<>();
+ this.packages = new HashSet<>();
}
/**
@@ -144,7 +147,18 @@ public final class DependencyModule {
deps.setRuleLabel(targetLabel);
}
deps.setSuccess(successful);
- deps.addAllContainedPackage(packages);
+
+ deps.addAllContainedPackage(
+ FluentIterable.from(packages)
+ .transform(
+ new Function<PackageSymbol, String>() {
+ @Override
+ public String apply(PackageSymbol pkg) {
+ return pkg.isUnnamed() ? "" : pkg.getQualifiedName().toString();
+ }
+ })
+ .toSortedList(Ordering.natural()));
+
// Filter using the original classpath, to preserve ordering.
for (String entry : classpath.split(":")) {
if (explicitDependenciesMap.containsKey(entry)) {
@@ -201,7 +215,7 @@ public final class DependencyModule {
}
/** Adds a package to the set of packages built by this target. */
- public boolean addPackage(String packge) {
+ public boolean addPackage(PackageSymbol packge) {
return packages.add(packge);
}
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/StrictJavaDepsPlugin.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/StrictJavaDepsPlugin.java
index 20ec2d15a1..504a37dcea 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/StrictJavaDepsPlugin.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/plugins/dependency/StrictJavaDepsPlugin.java
@@ -154,7 +154,7 @@ public final class StrictJavaDepsPlugin extends BlazeJavaCompilerPlugin {
}
if (toplevels.add(env.toplevel)) {
checkingTreeScanner.scan(env.toplevel.getImports());
- dependencyModule.addPackage(env.toplevel.packge.toString());
+ dependencyModule.addPackage(env.toplevel.packge);
}
} finally {
checkingTreeScanner.isStrictDepsExempt = previousExemption;