diff options
author | 2016-05-19 12:30:50 +0000 | |
---|---|---|
committer | 2016-05-19 16:28:12 +0000 | |
commit | 3930d34af88b6b2b052148b06318b012d84ab8df (patch) | |
tree | 52b65a5d115da70e739438ba2dccb9a14551d430 /src | |
parent | 0ab1f5f1f7c2d8d3dace22c5f779cd44acbdb6d4 (diff) |
LoadingPhaseStartedEvent: also provide the counter of packages loaded
Even during analysis, more packages will be loaded. However, those are
not tracked by the LoadingProgressReceiver. Therefore, provide a reference
to the AtomicInteger counting the total number of packages loaded already.
--
Change-Id: Ia546a2fec4afe6fd1bd69448b14ba889c68ae12c
Reviewed-on: https://bazel-review.googlesource.com/#/c/3644
MOS_MIGRATED_REVID=122722688
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/LoadingPhaseStartedEvent.java | 10 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/LoadingPhaseStartedEvent.java b/src/main/java/com/google/devtools/build/lib/skyframe/LoadingPhaseStartedEvent.java index f62c91b0dc..e3e7444688 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/LoadingPhaseStartedEvent.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/LoadingPhaseStartedEvent.java @@ -13,23 +13,31 @@ // limitations under the License. package com.google.devtools.build.lib.skyframe; +import java.util.concurrent.atomic.AtomicInteger; /** * This event is fired at the beginning of the loading phase. */ public final class LoadingPhaseStartedEvent { final LoadingProgressReceiver loadingProgressReceiver; + final AtomicInteger numPackagesLoaded; /** * Construct the event * * @param loadingProgressReceiver a receiver that gets updated about the progress of loading */ - public LoadingPhaseStartedEvent(LoadingProgressReceiver loadingProgressReceiver) { + public LoadingPhaseStartedEvent( + LoadingProgressReceiver loadingProgressReceiver, AtomicInteger numPackagesLoaded) { this.loadingProgressReceiver = loadingProgressReceiver; + this.numPackagesLoaded = numPackagesLoaded; } public LoadingProgressReceiver getLoadingProgressReceiver() { return loadingProgressReceiver; } + + public AtomicInteger getNumPackagesLoaded() { + return numPackagesLoaded; + } } diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java index beea6b5054..d118eafbaf 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java @@ -1727,7 +1727,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory { TestFilter.forOptions(options, eventHandler, ruleClassNames)); EvaluationResult<TargetPatternPhaseValue> evalResult; LoadingProgressReceiver loadingProgressReceiver = new LoadingProgressReceiver(); - eventBus.post(new LoadingPhaseStartedEvent(loadingProgressReceiver)); + eventBus.post(new LoadingPhaseStartedEvent(loadingProgressReceiver, numPackagesLoaded)); progressReceiver.loadingProgressReceiver = loadingProgressReceiver; try { evalResult = |