diff options
author | kush <kush@google.com> | 2017-09-22 15:39:21 -0400 |
---|---|---|
committer | John Cater <jcater@google.com> | 2017-09-25 09:38:42 -0400 |
commit | d8ba904a3b0598e97601bc670840e39f21799ead (patch) | |
tree | af5c547a17e4b4f2f992cb80fadff6a6dc7fee4e /src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java | |
parent | eea486c686682a77157f156ce844d0bbeadbe77e (diff) |
Stop the transitive duplication of FilesetTraversalParams when Filesets are nested.
RELNOTES: None
PiperOrigin-RevId: 169723791
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java index 38386e264d..3ed1ecec0f 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java @@ -13,12 +13,14 @@ // limitations under the License. package com.google.devtools.build.lib.skyframe; +import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.actions.FilesetOutputSymlink; import com.google.devtools.build.lib.actions.FilesetTraversalParams; import com.google.devtools.build.skyframe.LegacySkyKey; import com.google.devtools.build.skyframe.SkyKey; import com.google.devtools.build.skyframe.SkyValue; +import java.util.stream.StreamSupport; /** Output symlinks produced by a whole FilesetEntry or by a single file in FilesetEntry.files. */ public final class FilesetEntryValue implements SkyValue { @@ -48,6 +50,12 @@ public final class FilesetEntryValue implements SkyValue { return LegacySkyKey.create(SkyFunctions.FILESET_ENTRY, params); } + public static ImmutableList<SkyKey> keys(Iterable<FilesetTraversalParams> paramsIterable) { + return StreamSupport.stream(paramsIterable.spliterator(), /*parallel=*/ false) + .map(FilesetEntryValue::key) + .collect(ImmutableList.toImmutableList()); + } + @Override public boolean equals(Object obj) { if (this == obj) { |