diff options
author | Ulf Adams <ulfjack@google.com> | 2016-10-31 16:52:48 +0000 |
---|---|---|
committer | Laszlo Csomor <laszlocsomor@google.com> | 2016-11-02 08:25:42 +0000 |
commit | a0e3af46ca41f55163188d4beef10534c006aaca (patch) | |
tree | d9cc68a79c856f7d536244d17267e7c7ea0e2c87 /src/main/java/com/google/devtools/build/lib/standalone | |
parent | 03afc7d463149860df6e7c7aa04a6325bb9391e3 (diff) |
Refactor the module API to use the builder pattern for executor creation.
This significantly simplifies several of our modules.
--
MOS_MIGRATED_REVID=137713119
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/standalone')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java | 40 |
1 files changed, 4 insertions, 36 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java index 58145b0ad3..bde53f0a5e 100644 --- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java +++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneModule.java @@ -13,50 +13,18 @@ // limitations under the License. package com.google.devtools.build.lib.standalone; -import com.google.common.collect.ImmutableList; -import com.google.common.eventbus.Subscribe; -import com.google.devtools.build.lib.actions.ActionContextConsumer; -import com.google.devtools.build.lib.actions.ActionContextProvider; +import com.google.devtools.build.lib.actions.ExecutorBuilder; import com.google.devtools.build.lib.buildtool.BuildRequest; -import com.google.devtools.build.lib.buildtool.buildevent.BuildStartingEvent; import com.google.devtools.build.lib.runtime.BlazeModule; -import com.google.devtools.build.lib.runtime.Command; import com.google.devtools.build.lib.runtime.CommandEnvironment; -import com.google.devtools.build.lib.util.Preconditions; /** * StandaloneModule provides pluggable functionality for blaze. */ public class StandaloneModule extends BlazeModule { - private CommandEnvironment env; - private BuildRequest buildRequest; - - @Override - public Iterable<ActionContextConsumer> getActionContextConsumers() { - Preconditions.checkNotNull(env); - return ImmutableList.<ActionContextConsumer>of(new StandaloneActionContextConsumer()); - } - - @Override - public Iterable<ActionContextProvider> getActionContextProviders() { - return ImmutableList.<ActionContextProvider>of( - new StandaloneActionContextProvider(env, buildRequest)); - } - - @Override - public void beforeCommand(Command command, CommandEnvironment env) { - this.env = env; - env.getEventBus().register(this); - } - @Override - public void afterCommand() { - this.env = null; - this.buildRequest = null; - } - - @Subscribe - public void buildStarting(BuildStartingEvent event) { - buildRequest = event.getRequest(); + public void executorInit(CommandEnvironment env, BuildRequest request, ExecutorBuilder builder) { + builder.addActionContextProvider(new StandaloneActionContextProvider(env, request)); + builder.addActionContextConsumer(new StandaloneActionContextConsumer()); } } |