aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2016-07-05 08:13:41 +0000
committerGravatar Klaus Aehlig <aehlig@google.com>2016-07-05 10:27:20 +0000
commite8d9c4cb9b7ce0a41cde67622997a86be876ede9 (patch)
tree245e73e58177ef4780622dc65cd3570a4565a2c1 /src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java
parent66d8dd8baf1d1de4834f327e05a1deddae5c7b94 (diff)
Rewrite workspace creation to use a builder class.
An instance of the builder is passed to all modules, which can each add / set things on the builder. This reduces the BlazeModule API surface, while also being more flexible for future changes. -- MOS_MIGRATED_REVID=126613981
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java23
1 files changed, 7 insertions, 16 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java b/src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java
index 3c51885c60..12c4bd208e 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java
@@ -56,12 +56,11 @@ import com.google.devtools.build.lib.runtime.BlazeCommand;
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.runtime.WorkspaceBuilder;
import com.google.devtools.build.lib.skyframe.SkyFunctions;
import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.util.AbruptExitException;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
-import com.google.devtools.build.skyframe.SkyFunction;
-import com.google.devtools.build.skyframe.SkyFunctionName;
import com.google.devtools.build.skyframe.SkyKey;
import com.google.devtools.build.skyframe.SkyValue;
import com.google.devtools.common.options.OptionsProvider;
@@ -133,8 +132,12 @@ public class BazelRepositoryModule extends BlazeModule {
};
@Override
- public Iterable<SkyValueDirtinessChecker> getCustomDirtinessCheckers() {
- return ImmutableList.of(REPOSITORY_VALUE_CHECKER);
+ public void workspaceInit(BlazeDirectories directories, WorkspaceBuilder builder) {
+ builder.addCustomDirtinessChecker(REPOSITORY_VALUE_CHECKER);
+ // Create the repository function everything flows through.
+ builder.addSkyFunction(SkyFunctions.REPOSITORY, new RepositoryLoaderFunction());
+ builder.addSkyFunction(SkyFunctions.REPOSITORY_DIRECTORY, delegator);
+ builder.addSkyFunction(MavenServerFunction.NAME, new MavenServerFunction());
}
@Override
@@ -164,18 +167,6 @@ public class BazelRepositoryModule extends BlazeModule {
}
@Override
- public ImmutableMap<SkyFunctionName, SkyFunction> getSkyFunctions(BlazeDirectories directories) {
- ImmutableMap.Builder<SkyFunctionName, SkyFunction> builder = ImmutableMap.builder();
-
- // Create the repository function everything flows through.
- builder.put(SkyFunctions.REPOSITORY, new RepositoryLoaderFunction());
-
- builder.put(SkyFunctions.REPOSITORY_DIRECTORY, delegator);
- builder.put(MavenServerFunction.NAME, new MavenServerFunction());
- return builder.build();
- }
-
- @Override
public void beforeCommand(Command command, CommandEnvironment env) throws AbruptExitException {
delegator.setClientEnvironment(env.getClientEnv());
skylarkRepositoryFunction.setCommandEnvironment(env);