Delete @ExecutionStrategy.
This annotation was made superfluous in a previous CL but is only removed in this separate CL to keep changes small(er).
RELNOTES: None.
PiperOrigin-RevId: 289882670
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ExecutionStrategy.java b/src/main/java/com/google/devtools/build/lib/actions/ExecutionStrategy.java
deleted file mode 100644
index 3bb86d3..0000000
--- a/src/main/java/com/google/devtools/build/lib/actions/ExecutionStrategy.java
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright 2014 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.google.devtools.build.lib.actions;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/** Annotation that marks strategies that extend the execution phase behavior of Blaze. */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ExecutionStrategy {
- /**
- * The names this strategy is available under on the command line.
- */
- String[] name() default {};
-
- /**
- * Returns the action context this strategy implements.
- */
- Class<? extends ActionContext> contextType();
-}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/LocalTemplateExpansionStrategy.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/LocalTemplateExpansionStrategy.java
index faa379f..258d1a1 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/LocalTemplateExpansionStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/LocalTemplateExpansionStrategy.java
@@ -17,7 +17,6 @@
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ArtifactPathResolver;
import com.google.devtools.build.lib.actions.EnvironmentalExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.SpawnContinuation;
import com.google.devtools.build.lib.analysis.actions.AbstractFileWriteAction.DeterministicWriter;
import com.google.devtools.build.lib.util.StringUtilities;
@@ -26,9 +25,6 @@
import java.nio.charset.StandardCharsets;
/** Strategy to perform tempate expansion locally */
-@ExecutionStrategy(
- name = {"local"},
- contextType = TemplateExpansionContext.class)
public class LocalTemplateExpansionStrategy implements TemplateExpansionContext {
public static final Class<LocalTemplateExpansionStrategy> TYPE =
LocalTemplateExpansionStrategy.class;
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java b/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
index 46f4fa1..71a150e 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/BazelWorkspaceStatusModule.java
@@ -26,7 +26,6 @@
import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.ActionResult;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
import com.google.devtools.build.lib.analysis.BuildInfo;
import com.google.devtools.build.lib.analysis.BuildInfoEvent;
@@ -280,7 +279,6 @@
}
}
- @ExecutionStrategy(contextType = WorkspaceStatusAction.Context.class)
private static final class BazelWorkspaceStatusActionContext
implements WorkspaceStatusAction.Context {
private final CommandEnvironment env;
diff --git a/src/main/java/com/google/devtools/build/lib/dynamic/DynamicSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/dynamic/DynamicSpawnStrategy.java
index 06b938e..9521724 100644
--- a/src/main/java/com/google/devtools/build/lib/dynamic/DynamicSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/dynamic/DynamicSpawnStrategy.java
@@ -26,7 +26,6 @@
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.DynamicStrategyRegistry;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext;
import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext.StopConcurrentSpawns;
import com.google.devtools.build.lib.actions.Spawn;
@@ -63,10 +62,8 @@
* save 0.5s of time, when it then takes us 5 seconds to upload the results to remote executors for
* another action that's scheduled to run there.
*/
-@ExecutionStrategy(
- name = {"dynamic", "dynamic_worker"},
- contextType = SpawnActionContext.class)
public class DynamicSpawnStrategy implements SpawnActionContext {
+
private static final Logger logger = Logger.getLogger(DynamicSpawnStrategy.class.getName());
private final ListeningExecutorService executorService;
diff --git a/src/main/java/com/google/devtools/build/lib/dynamic/LegacyDynamicSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/dynamic/LegacyDynamicSpawnStrategy.java
index 88648d7..e7b9bb9 100644
--- a/src/main/java/com/google/devtools/build/lib/dynamic/LegacyDynamicSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/dynamic/LegacyDynamicSpawnStrategy.java
@@ -25,7 +25,6 @@
import com.google.devtools.build.lib.actions.EnvironmentalExecException;
import com.google.devtools.build.lib.actions.ExecException;
import com.google.devtools.build.lib.actions.ExecutionRequirements;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext;
import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext.StopConcurrentSpawns;
import com.google.devtools.build.lib.actions.Spawn;
@@ -63,9 +62,6 @@
* save 0.5s of time, when it then takes us 5 seconds to upload the results to remote executors for
* another action that's scheduled to run there.
*/
-@ExecutionStrategy(
- name = {"dynamic", "dynamic_worker"},
- contextType = SpawnActionContext.class)
public class LegacyDynamicSpawnStrategy implements SpawnActionContext {
private static final Logger logger = Logger.getLogger(DynamicSpawnStrategy.class.getName());
diff --git a/src/main/java/com/google/devtools/build/lib/exec/FileWriteStrategy.java b/src/main/java/com/google/devtools/build/lib/exec/FileWriteStrategy.java
index 4a0c156..b9394fa 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/FileWriteStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/FileWriteStrategy.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.AbstractAction;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.EnvironmentalExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.RunningActionEvent;
import com.google.devtools.build.lib.actions.SpawnContinuation;
import com.google.devtools.build.lib.analysis.actions.AbstractFileWriteAction;
@@ -34,14 +33,10 @@
/**
* A strategy for executing an {@link AbstractFileWriteAction}.
*/
-@ExecutionStrategy(name = { "local" }, contextType = FileWriteActionContext.class)
public final class FileWriteStrategy implements FileWriteActionContext {
private static final Logger logger = Logger.getLogger(FileWriteStrategy.class.getName());
public static final Class<FileWriteStrategy> TYPE = FileWriteStrategy.class;
- public FileWriteStrategy() {
- }
-
@Override
public SpawnContinuation beginWriteOutputToFile(
AbstractAction action,
diff --git a/src/main/java/com/google/devtools/build/lib/exec/SpawnCache.java b/src/main/java/com/google/devtools/build/lib/exec/SpawnCache.java
index b9220e7..af64f4b 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/SpawnCache.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/SpawnCache.java
@@ -15,7 +15,6 @@
import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.Spawn;
import com.google.devtools.build.lib.actions.SpawnResult;
import com.google.devtools.build.lib.exec.SpawnRunner.SpawnExecutionContext;
@@ -88,10 +87,6 @@
}
/** A no-op spawn cache. */
- @ExecutionStrategy(
- name = {"no-cache"},
- contextType = SpawnCache.class
- )
public static class NoSpawnCache implements SpawnCache {
@Override
public CacheHandle lookup(Spawn spawn, SpawnExecutionContext context) {
diff --git a/src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java b/src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java
index fa6bb5e..38bf09b 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/SpawnLogContext.java
@@ -19,7 +19,6 @@
import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ActionInput;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.FileArtifactValue;
import com.google.devtools.build.lib.actions.MetadataProvider;
import com.google.devtools.build.lib.actions.Spawn;
@@ -56,10 +55,6 @@
/**
* A logging utility for spawns.
*/
-@ExecutionStrategy(
- name = {"spawn-log"},
- contextType = SpawnLogContext.class
-)
public class SpawnLogContext implements ActionContext {
private static final Logger logger = Logger.getLogger(SpawnLogContext.class.getName());
diff --git a/src/main/java/com/google/devtools/build/lib/exec/StandaloneTestStrategy.java b/src/main/java/com/google/devtools/build/lib/exec/StandaloneTestStrategy.java
index fc914ed..99cf4d3 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/StandaloneTestStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/StandaloneTestStrategy.java
@@ -26,7 +26,6 @@
import com.google.devtools.build.lib.actions.EnvironmentalExecException;
import com.google.devtools.build.lib.actions.ExecException;
import com.google.devtools.build.lib.actions.ExecutionRequirements;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.ResourceSet;
import com.google.devtools.build.lib.actions.SimpleSpawn;
import com.google.devtools.build.lib.actions.Spawn;
@@ -35,7 +34,6 @@
import com.google.devtools.build.lib.actions.SpawnResult;
import com.google.devtools.build.lib.actions.TestExecException;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
-import com.google.devtools.build.lib.analysis.test.TestActionContext;
import com.google.devtools.build.lib.analysis.test.TestConfiguration;
import com.google.devtools.build.lib.analysis.test.TestResult;
import com.google.devtools.build.lib.analysis.test.TestRunnerAction;
@@ -68,10 +66,6 @@
/** Runs TestRunnerAction actions. */
// TODO(bazel-team): add tests for this strategy.
-@ExecutionStrategy(
- contextType = TestActionContext.class,
- name = {"standalone"}
-)
public class StandaloneTestStrategy extends TestStrategy {
private static final ImmutableMap<String, String> ENV_VARS =
ImmutableMap.<String, String>builder()
diff --git a/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java b/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java
index fd37c68..2cdcc24 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeStrategy.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.EnvironmentalExecException;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.RunningActionEvent;
import com.google.devtools.build.lib.analysis.actions.SymlinkTreeAction;
import com.google.devtools.build.lib.analysis.actions.SymlinkTreeActionContext;
@@ -41,7 +40,6 @@
* Implements SymlinkTreeAction by using the output service or by running an embedded script to
* create the symlink tree.
*/
-@ExecutionStrategy(contextType = SymlinkTreeActionContext.class)
public final class SymlinkTreeStrategy implements SymlinkTreeActionContext {
private static final Logger logger = Logger.getLogger(SymlinkTreeStrategy.class.getName());
diff --git a/src/main/java/com/google/devtools/build/lib/includescanning/CppIncludeScanningContextImpl.java b/src/main/java/com/google/devtools/build/lib/includescanning/CppIncludeScanningContextImpl.java
index d0415c1..8c90610 100644
--- a/src/main/java/com/google/devtools/build/lib/includescanning/CppIncludeScanningContextImpl.java
+++ b/src/main/java/com/google/devtools/build/lib/includescanning/CppIncludeScanningContextImpl.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.rules.cpp.CppCompileAction;
import com.google.devtools.build.lib.rules.cpp.CppIncludeScanningContext;
import com.google.devtools.build.lib.rules.cpp.IncludeProcessing;
@@ -29,7 +28,6 @@
/**
* Include scanning context implementation.
*/
-@ExecutionStrategy(contextType = CppIncludeScanningContext.class)
public class CppIncludeScanningContextImpl implements CppIncludeScanningContext {
private final Supplier<? extends IncludeScannerSupplier> includeScannerSupplier;
diff --git a/src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java b/src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java
index 9fd44dd..61f9173 100644
--- a/src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java
+++ b/src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java
@@ -29,7 +29,6 @@
import com.google.devtools.build.lib.actions.ArtifactFactory;
import com.google.devtools.build.lib.actions.ArtifactResolver;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.ExecutorInitException;
import com.google.devtools.build.lib.analysis.ArtifactsToOwnerLabels;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
@@ -127,7 +126,6 @@
/**
* Implementation of {@link CppIncludeExtractionContext}.
*/
- @ExecutionStrategy(contextType = CppIncludeExtractionContext.class)
public static final class CppIncludeExtractionContextImpl implements CppIncludeExtractionContext {
private final CommandEnvironment env;
@@ -144,7 +142,6 @@
/**
* SwigIncludeScanningContextImpl implements SwigIncludeScanningContext.
*/
- @ExecutionStrategy(contextType = SwigIncludeScanningContext.class)
public static final class SwigIncludeScanningContextImpl implements SwigIncludeScanningContext {
private final CommandEnvironment env;
private final Supplier<SpawnIncludeScanner> spawnScannerSupplier;
diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnCache.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnCache.java
index 689c024..8ce8f1d 100644
--- a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnCache.java
+++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnCache.java
@@ -28,7 +28,6 @@
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.ActionInput;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.FileArtifactValue;
import com.google.devtools.build.lib.actions.Spawn;
import com.google.devtools.build.lib.actions.SpawnResult;
@@ -67,9 +66,6 @@
/** A remote {@link SpawnCache} implementation. */
@ThreadSafe // If the RemoteActionCache implementation is thread-safe.
-@ExecutionStrategy(
- name = {"remote-cache"},
- contextType = SpawnCache.class)
final class RemoteSpawnCache implements SpawnCache {
private final Path execRoot;
diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java
index 9265147..77ec364 100644
--- a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java
@@ -13,8 +13,6 @@
// limitations under the License.
package com.google.devtools.build.lib.remote;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
@@ -23,10 +21,6 @@
* Strategy that uses a distributed cache for sharing action input and output files. Optionally this
* strategy also support offloading the work to a remote worker.
*/
-@ExecutionStrategy(
- name = {"remote"},
- contextType = SpawnActionContext.class
-)
final class RemoteSpawnStrategy extends AbstractSpawnStrategy {
RemoteSpawnStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/WriteAdbArgsActionContext.java b/src/main/java/com/google/devtools/build/lib/rules/android/WriteAdbArgsActionContext.java
index 9c0f355..d3bd939 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/WriteAdbArgsActionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/WriteAdbArgsActionContext.java
@@ -14,11 +14,9 @@
package com.google.devtools.build.lib.rules.android;
import com.google.devtools.build.lib.actions.ActionContext;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import javax.annotation.Nullable;
/** {@link ActionContext} for {@link WriteAdbArgsAction}. */
-@ExecutionStrategy(contextType = WriteAdbArgsActionContext.class)
public final class WriteAdbArgsActionContext implements ActionContext {
private final String userHomeDirectory;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileActionContext.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileActionContext.java
index 5e437ce..a1e552f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileActionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileActionContext.java
@@ -18,7 +18,6 @@
import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.view.proto.Deps;
import java.io.IOException;
import java.io.InputStream;
@@ -26,7 +25,6 @@
import java.util.concurrent.ConcurrentHashMap;
/** Context for compiling Java files. */
-@ExecutionStrategy(contextType = JavaCompileActionContext.class)
public class JavaCompileActionContext implements ActionContext {
private final ConcurrentHashMap<Artifact, Deps.Dependencies> cache = new ConcurrentHashMap<>();
diff --git a/src/main/java/com/google/devtools/build/lib/rules/test/ExclusiveTestStrategy.java b/src/main/java/com/google/devtools/build/lib/rules/test/ExclusiveTestStrategy.java
index 204caaf..7c2d963 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/test/ExclusiveTestStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/test/ExclusiveTestStrategy.java
@@ -17,7 +17,6 @@
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.analysis.test.TestActionContext;
import com.google.devtools.build.lib.analysis.test.TestResult;
import com.google.devtools.build.lib.analysis.test.TestRunnerAction;
@@ -33,9 +32,6 @@
* trigger behavior in SkyframeExecutor to schedule test execution sequentially after non-test
* actions. This ensures streamed test output is not polluted by other action output.
*/
-@ExecutionStrategy(
- contextType = TestActionContext.class,
- name = {"exclusive"})
public class ExclusiveTestStrategy implements TestActionContext {
private TestActionContext parent;
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java
index bbc25b9..685e6ff 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedSpawnRunner.java
@@ -22,9 +22,7 @@
import com.google.common.collect.ImmutableSet;
import com.google.common.io.ByteStreams;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.Spawn;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.actions.Spawns;
import com.google.devtools.build.lib.exec.TreeDeleter;
import com.google.devtools.build.lib.exec.local.LocalEnvProvider;
@@ -51,10 +49,6 @@
import javax.annotation.Nullable;
/** Spawn runner that uses Darwin (macOS) sandboxing to execute a process. */
-@ExecutionStrategy(
- name = {"sandboxed", "darwin-sandbox"},
- contextType = SpawnActionContext.class
-)
final class DarwinSandboxedSpawnRunner extends AbstractSandboxSpawnRunner {
/** Path to the {@code getconf} system tool to use. */
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
index a4c05ea..597175b 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
@@ -14,18 +14,11 @@
package com.google.devtools.build.lib.sandbox;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
/** Strategy that uses sandboxing to execute a process, for Darwin */
-//TODO(ulfjack): This class only exists for this annotation. Find a better way to handle this!
-@ExecutionStrategy(
- name = {"sandboxed", "darwin-sandbox"},
- contextType = SpawnActionContext.class
-)
final class DarwinSandboxedStrategy extends AbstractSpawnStrategy {
DarwinSandboxedStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/DockerSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/DockerSandboxedStrategy.java
index ba38fe6..a2e2284 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/DockerSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/DockerSandboxedStrategy.java
@@ -14,17 +14,11 @@
package com.google.devtools.build.lib.sandbox;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
/** Strategy that uses Docker to execute a process. */
-// TODO(ulfjack): This class only exists for this annotation. Find a better way to handle this!
-@ExecutionStrategy(
- name = {"docker"},
- contextType = SpawnActionContext.class)
public final class DockerSandboxedStrategy extends AbstractSpawnStrategy {
DockerSandboxedStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
index 3a80e38..a31938b 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
@@ -14,8 +14,6 @@
package com.google.devtools.build.lib.sandbox;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.exec.TreeDeleter;
@@ -27,11 +25,6 @@
import javax.annotation.Nullable;
/** Strategy that uses sandboxing to execute a process. */
-// TODO(ulfjack): This class only exists for this annotation. Find a better way to handle this!
-@ExecutionStrategy(
- name = {"sandboxed", "linux-sandbox"},
- contextType = SpawnActionContext.class
-)
public final class LinuxSandboxedStrategy extends AbstractSpawnStrategy {
LinuxSandboxedStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
index 096f564..38e596d 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
@@ -14,18 +14,11 @@
package com.google.devtools.build.lib.sandbox;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
/** Strategy that uses sandboxing to execute a process. */
-//TODO(ulfjack): This class only exists for this annotation. Find a better way to handle this!
-@ExecutionStrategy(
- name = {"sandboxed", "processwrapper-sandbox"},
- contextType = SpawnActionContext.class
-)
final class ProcessWrapperSandboxedStrategy extends AbstractSpawnStrategy {
ProcessWrapperSandboxedStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/WindowsSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/WindowsSandboxedStrategy.java
index 9588a38..6644984 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/WindowsSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/WindowsSandboxedStrategy.java
@@ -14,17 +14,11 @@
package com.google.devtools.build.lib.sandbox;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
/** Strategy that uses sandboxing to execute a process. */
-// TODO(ulfjack): This class only exists for this annotation. Find a better way to handle this!
-@ExecutionStrategy(
- name = {"sandboxed", "windows-sandbox"},
- contextType = SpawnActionContext.class)
public final class WindowsSandboxedStrategy extends AbstractSpawnStrategy {
WindowsSandboxedStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeExtractionContext.java b/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeExtractionContext.java
index 31d931b..b656df2 100644
--- a/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeExtractionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeExtractionContext.java
@@ -14,7 +14,6 @@
package com.google.devtools.build.lib.standalone;
import com.google.devtools.build.lib.actions.ArtifactResolver;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.rules.cpp.CppIncludeExtractionContext;
import com.google.devtools.build.lib.runtime.CommandEnvironment;
@@ -22,7 +21,6 @@
* An IncludeExtractionContext that does nothing. Since local execution does not need to discover
* inclusion in advance, we do not need include scanning.
*/
-@ExecutionStrategy(contextType = CppIncludeExtractionContext.class)
class DummyCppIncludeExtractionContext implements CppIncludeExtractionContext {
private final CommandEnvironment env;
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeScanningContext.java b/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeScanningContext.java
index de27436..7dbf632 100644
--- a/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeScanningContext.java
+++ b/src/main/java/com/google/devtools/build/lib/standalone/DummyCppIncludeScanningContext.java
@@ -16,7 +16,6 @@
import com.google.common.util.concurrent.ListenableFuture;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.rules.cpp.CppCompileAction;
import com.google.devtools.build.lib.rules.cpp.CppIncludeScanningContext;
import com.google.devtools.build.lib.rules.cpp.IncludeProcessing;
@@ -25,7 +24,6 @@
import javax.annotation.Nullable;
/** A CppIncludeScanningContext that does nothing. */
-@ExecutionStrategy(contextType = CppIncludeScanningContext.class)
class DummyCppIncludeScanningContext implements CppIncludeScanningContext {
@Override
@Nullable
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
index e08c962..914342a 100644
--- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
@@ -13,8 +13,6 @@
// limitations under the License.
package com.google.devtools.build.lib.standalone;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.exec.SpawnRunner;
import com.google.devtools.build.lib.vfs.Path;
@@ -22,7 +20,6 @@
/**
* Strategy that uses subprocessing to execute a process.
*/
-@ExecutionStrategy(name = { "standalone", "local" }, contextType = SpawnActionContext.class)
public class StandaloneSpawnStrategy extends AbstractSpawnStrategy {
public StandaloneSpawnStrategy(Path execRoot, SpawnRunner spawnRunner) {
super(execRoot, spawnRunner);
diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
index 462b12f..7d955d3 100644
--- a/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerSpawnStrategy.java
@@ -13,8 +13,6 @@
// limitations under the License.
package com.google.devtools.build.lib.worker;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
-import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.exec.AbstractSpawnStrategy;
import com.google.devtools.build.lib.vfs.Path;
@@ -22,10 +20,6 @@
* A spawn action context that launches Spawns the first time they are used in a persistent mode and
* then shards work over all the processes.
*/
-@ExecutionStrategy(
- name = {"worker"},
- contextType = SpawnActionContext.class
-)
public final class WorkerSpawnStrategy extends AbstractSpawnStrategy {
public WorkerSpawnStrategy(Path execRoot, WorkerSpawnRunner spawnRunner) {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestUtil.java b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestUtil.java
index 04a2356..da62d1f 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestUtil.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestUtil.java
@@ -29,7 +29,6 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Artifact.SpecialArtifact;
import com.google.devtools.build.lib.actions.ArtifactRoot;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.MiddlemanFactory;
import com.google.devtools.build.lib.actions.MutableActionGraph;
import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException;
@@ -263,7 +262,6 @@
}
/** A WorkspaceStatusAction.Context that has no stable keys and no volatile keys. */
- @ExecutionStrategy(contextType = WorkspaceStatusAction.Context.class)
public static class DummyWorkspaceStatusActionContext implements WorkspaceStatusAction.Context {
@Override
public ImmutableMap<String, Key> getStableKeys() {
diff --git a/src/test/java/com/google/devtools/build/lib/exec/SpawnActionContextMapsTest.java b/src/test/java/com/google/devtools/build/lib/exec/SpawnActionContextMapsTest.java
index 24613d4..e79b95b 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/SpawnActionContextMapsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/SpawnActionContextMapsTest.java
@@ -21,7 +21,6 @@
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionExecutionMetadata;
import com.google.devtools.build.lib.actions.ExecException;
-import com.google.devtools.build.lib.actions.ExecutionStrategy;
import com.google.devtools.build.lib.actions.Spawn;
import com.google.devtools.build.lib.actions.SpawnActionContext;
import com.google.devtools.build.lib.actions.SpawnResult;
@@ -127,7 +126,6 @@
return mockSpawn;
}
- @ExecutionStrategy(contextType = SpawnActionContext.class, name = "ac1")
private static class AC1 implements SpawnActionContext {
@Override
public ImmutableList<SpawnResult> exec(
@@ -142,7 +140,6 @@
}
}
- @ExecutionStrategy(contextType = SpawnActionContext.class, name = "ac2")
private static class AC2 implements SpawnActionContext {
@Override
public ImmutableList<SpawnResult> exec(