diff options
author | Klaus Aehlig <aehlig@google.com> | 2017-02-24 16:30:15 +0000 |
---|---|---|
committer | Yue Gan <yueg@google.com> | 2017-02-27 15:05:00 +0000 |
commit | 777b30d06700f76ba580715429f3663de3fa0529 (patch) | |
tree | d3abdc6f42d04256c486270add24e5b0c5d3abbd /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java | |
parent | 25aa033ad5657a5cfa16e8307464648b9374be2d (diff) |
Provide more reporting options to SkyFunctions
With more specific information to be reported by Skyfunctions, e.g.,
to inform the build-event protocol on missing files, the EventHandler
interface is no longer enough. Therefore, provide an enriched context
for reporting events.
--
Change-Id: I2d06166fe4d5b9054e24ad8c752fafc039e3f9f8
Reviewed-on: https://cr.bazel.build/8794
PiperOrigin-RevId: 148463437
MOS_MIGRATED_REVID=148463437
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java index 6b1e6ca28c..742d2fa2d9 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java @@ -16,7 +16,7 @@ package com.google.devtools.build.lib.skyframe; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; -import com.google.devtools.build.lib.events.EventHandler; +import com.google.devtools.build.lib.events.ExtendedEventHandler; import com.google.devtools.build.lib.pkgcache.TransitivePackageLoader; import com.google.devtools.build.lib.skyframe.SkyframeExecutor.SkyframeTransitivePackageLoader; import com.google.devtools.build.lib.util.Preconditions; @@ -45,8 +45,12 @@ final class SkyframeLabelVisitor implements TransitivePackageLoader { // The only remaining non-test caller of this code is BlazeQueryEnvironment. @Override - public boolean sync(EventHandler eventHandler, Set<Label> labelsToVisit, boolean keepGoing, - int parallelThreads) throws InterruptedException { + public boolean sync( + ExtendedEventHandler eventHandler, + Set<Label> labelsToVisit, + boolean keepGoing, + int parallelThreads) + throws InterruptedException { EvaluationResult<TransitiveTargetValue> result = transitivePackageLoader.loadTransitiveTargets( eventHandler, labelsToVisit, keepGoing, parallelThreads); @@ -121,14 +125,14 @@ final class SkyframeLabelVisitor implements TransitivePackageLoader { && Iterables.contains(errorInfo.getRootCauses(), TransitiveTargetValue.key(label)); } - private static void errorAboutLoadingFailure(Label topLevelLabel, @Nullable Throwable throwable, - EventHandler eventHandler) { + private static void errorAboutLoadingFailure( + Label topLevelLabel, @Nullable Throwable throwable, ExtendedEventHandler eventHandler) { eventHandler.handle(Event.error( "Loading of target '" + topLevelLabel + "' failed; build aborted" + (throwable == null ? "" : ": " + throwable.getMessage()))); } - private static void warnAboutLoadingFailure(Label label, EventHandler eventHandler) { + private static void warnAboutLoadingFailure(Label label, ExtendedEventHandler eventHandler) { eventHandler.handle(Event.warn("errors encountered while loading target '" + label + "'")); } } |