aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java
diff options
context:
space:
mode:
authorGravatar tomlu <tomlu@google.com>2017-11-29 14:01:21 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-11-29 14:03:30 -0800
commit3d1a194ff9e76f25f1a7242ff2d021523ba8e4a0 (patch)
tree9fec583a59b8ee6ee0f4fac513d5471956dfe1d3 /src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java
parent8f8b8859fc7d85feee97481443fb11c0b7ae03ce (diff)
Add ActionKeyContext to Action#getKey.
This key context can be used by actions to share partial key computations, for instance when computing MD5s for nested sets. RELNOTES: None PiperOrigin-RevId: 177359607
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java
index 8d927f1856..817c2fab54 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusFunction.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.skyframe;
import com.google.common.base.Preconditions;
+import com.google.devtools.build.lib.actions.ActionKeyContext;
import com.google.devtools.build.lib.analysis.WorkspaceStatusAction;
import com.google.devtools.build.skyframe.SkyFunction;
import com.google.devtools.build.skyframe.SkyKey;
@@ -26,12 +27,15 @@ public class WorkspaceStatusFunction implements SkyFunction {
WorkspaceStatusAction create(String workspaceName);
}
+ private final ActionKeyContext actionKeyContext;
private final Supplier<Boolean> removeActionAfterEvaluation;
private final WorkspaceStatusActionFactory workspaceStatusActionFactory;
WorkspaceStatusFunction(
+ ActionKeyContext actionKeyContext,
Supplier<Boolean> removeActionAfterEvaluation,
WorkspaceStatusActionFactory workspaceStatusActionFactory) {
+ this.actionKeyContext = actionKeyContext;
this.removeActionAfterEvaluation = Preconditions.checkNotNull(removeActionAfterEvaluation);
this.workspaceStatusActionFactory = workspaceStatusActionFactory;
}
@@ -50,6 +54,7 @@ public class WorkspaceStatusFunction implements SkyFunction {
workspaceStatusActionFactory.create(workspaceNameValue.getName());
return new WorkspaceStatusValue(
+ actionKeyContext,
action.getStableStatus(),
action.getVolatileStatus(),
action,