aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java
diff options
context:
space:
mode:
authorGravatar Janak Ramakrishnan <janakr@google.com>2015-07-28 21:39:22 +0000
committerGravatar Lukacs Berki <lberki@google.com>2015-07-29 16:01:26 +0000
commit6ddbb6e48bf1fb389634934dcce1e251a77e50e5 (patch)
tree70fc6245d85def4f54842f8ee33112373fb8e4e8 /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java
parent6c2303c461478c6082a29b969e49ad5adb0029aa (diff)
Allow modules to specify additional nodes in the graph to be invalidated and use this functionality to properly invalidate http download nodes if the downloaded zip file doesn't match the specified hash.
This still means that the actual files downloaded may not match, but checking all such files may be too expensive. This helps with #336 but before that issue can be closed all remote repositories (git, etc.), should have similar functionality added. -- MOS_MIGRATED_REVID=99317085
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java
index a1615cf02e..7710fb0b67 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorFactory.java
@@ -41,8 +41,6 @@ public interface SkyframeExecutorFactory {
*
* @param reporter the reporter to be used by the executor
* @param pkgFactory the package factory
- * @param skyframeBuild use Skyframe for the build phase. Should be always true after we are in
- * the skyframe full mode.
* @param tsgm timestamp granularity monitor
* @param directories Blaze directories
* @param workspaceStatusActionFactory a factory for creating WorkspaceStatusAction objects
@@ -52,11 +50,15 @@ public interface SkyframeExecutorFactory {
* @param preprocessorFactorySupplier
* @param extraSkyFunctions
* @param extraPrecomputedValues
+ * @param customDirtinessCheckers
* @return an instance of the SkyframeExecutor
* @throws AbruptExitException if the executor cannot be created
*/
- SkyframeExecutor create(Reporter reporter, PackageFactory pkgFactory,
- TimestampGranularityMonitor tsgm, BlazeDirectories directories,
+ SkyframeExecutor create(
+ Reporter reporter,
+ PackageFactory pkgFactory,
+ TimestampGranularityMonitor tsgm,
+ BlazeDirectories directories,
Factory workspaceStatusActionFactory,
ImmutableList<BuildInfoFactory> buildInfoFactories,
Set<Path> immutableDirectories,
@@ -64,5 +66,7 @@ public interface SkyframeExecutorFactory {
Predicate<PathFragment> allowedMissingInputs,
Preprocessor.Factory.Supplier preprocessorFactorySupplier,
ImmutableMap<SkyFunctionName, SkyFunction> extraSkyFunctions,
- ImmutableList<PrecomputedValue.Injected> extraPrecomputedValues) throws AbruptExitException;
+ ImmutableList<PrecomputedValue.Injected> extraPrecomputedValues,
+ Iterable<SkyValueDirtinessChecker> customDirtinessCheckers)
+ throws AbruptExitException;
}