diff options
author | tomlu <tomlu@google.com> | 2018-01-17 14:36:26 -0800 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-01-17 14:37:59 -0800 |
commit | ee6a6862e26704854fb08bd90912890814cc3426 (patch) | |
tree | 294eac82202e393c5baae0e357325f2488ab3cbb /src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java | |
parent | f323fb3043bc782526e0e47933efedea9c5c2ad9 (diff) |
Introduce Root class.
This class represents a root (such as a package path or an output root) used for file lookups and artifacts. It is meant to be as opaque as possible in order to hide the user's environment from sky keys and sky functions.
Roots are used by RootedPaths and ArtifactRoots.
This CL attempts to make the minimum number of modifications necessary to change RootedPath and ArtifactRoot to use these fields. Deprecated methods and invasive accessors are permitted to minimise the risk of any observable changes.
RELNOTES: None
PiperOrigin-RevId: 182271759
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java index fd0f08fc44..0eab83286b 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternFunction.java @@ -37,8 +37,8 @@ import com.google.devtools.build.lib.rules.repository.RepositoryDirectoryValue; import com.google.devtools.build.lib.skyframe.EnvironmentBackedRecursivePackageProvider.MissingDepException; import com.google.devtools.build.lib.util.BatchCallback; import com.google.devtools.build.lib.util.BatchCallback.NullCallback; -import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; +import com.google.devtools.build.lib.vfs.Root; import com.google.devtools.build.lib.vfs.RootedPath; import com.google.devtools.build.skyframe.SkyFunction; import com.google.devtools.build.skyframe.SkyFunctionException; @@ -246,7 +246,7 @@ public class PrepareDepsOfPatternFunction implements SkyFunction { Preconditions.checkArgument(excludedSubdirectories.isEmpty(), excludedSubdirectories); FilteringPolicy policy = rulesOnly ? FilteringPolicies.RULES_ONLY : FilteringPolicies.NO_FILTER; - List<Path> roots = new ArrayList<>(); + List<Root> roots = new ArrayList<>(); if (repository.isMain()) { roots.addAll(pkgPath.getPathEntries()); } else { @@ -261,10 +261,10 @@ public class PrepareDepsOfPatternFunction implements SkyFunction { // already checked for its existence. throw new IllegalStateException(String.format("No such repository '%s'", repository)); } - roots.add(repositoryValue.getPath()); + roots.add(Root.fromPath(repositoryValue.getPath())); } - for (Path root : roots) { + for (Root root : roots) { RootedPath rootedPath = RootedPath.toRootedPath(root, directoryPathFragment); env.getValues( ImmutableList.of( |