aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java
diff options
context:
space:
mode:
authorGravatar kush <kush@google.com>2017-09-22 15:39:21 -0400
committerGravatar John Cater <jcater@google.com>2017-09-25 09:38:42 -0400
commitd8ba904a3b0598e97601bc670840e39f21799ead (patch)
treeaf5c547a17e4b4f2f992cb80fadff6a6dc7fee4e /src/main/java/com/google/devtools/build/lib/skyframe/FilesetEntryValue.java
parenteea486c686682a77157f156ce844d0bbeadbe77e (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.java8
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) {