aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis
diff options
context:
space:
mode:
authorGravatar ruperts <ruperts@google.com>2017-11-21 16:37:13 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-11-21 16:38:50 -0800
commit7967f3387e63723bb36b974f83a816265d404c38 (patch)
tree1533cc8bd2d63e1db9426d8795df902d104a3d1a /src/main/java/com/google/devtools/build/lib/analysis
parenta2a3d8ca6634abb8f8dc184edb4ea01543de8505 (diff)
Return SpawnResults using a List instead of a Set.
Currently we don't care about the list order of SpawnResults. However, we may care about the list order later. Also, if the equals() method for SpawnResults is ever changed then it may be problematic to return SpawnResults in a Set. Aside: ActionResults use SpawnResults to calculate cumulative execution times for Actions, and may provide other metrics in future. RELNOTES: None. PiperOrigin-RevId: 176579460
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionContext.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactAction.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkTreeActionContext.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/test/TestActionContext.java6
5 files changed, 11 insertions, 13 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionContext.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionContext.java
index 4a2a19b1ae..8a0572ef12 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionContext.java
@@ -17,7 +17,7 @@ import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ExecException;
import com.google.devtools.build.lib.actions.SpawnResult;
-import java.util.Set;
+import java.util.List;
/**
* The action context for {@link AbstractFileWriteAction} instances (technically instances of
@@ -28,9 +28,9 @@ public interface FileWriteActionContext extends ActionContext {
/**
* Performs all the setup and then calls back into the action to write the data.
*
- * @return a set of SpawnResults created during execution, if any
+ * @return a list of SpawnResults created during execution, if any
*/
- Set<SpawnResult> exec(
+ List<SpawnResult> exec(
AbstractFileWriteAction action, ActionExecutionContext actionExecutionContext)
throws ExecException, InterruptedException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactAction.java
index 90f09f4c94..3c73955c04 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactAction.java
@@ -45,7 +45,6 @@ import java.io.IOException;
import java.util.Collection;
import java.util.List;
import java.util.Map;
-import java.util.Set;
/**
* An action that populates a TreeArtifact with the contents of an archive file.
@@ -191,7 +190,7 @@ public final class PopulateTreeArtifactAction extends AbstractAction {
}
// Execute the spawn.
- Set<SpawnResult> spawnResults;
+ List<SpawnResult> spawnResults;
try {
spawnResults = getContext(actionExecutionContext).exec(spawn, actionExecutionContext);
} catch (ExecException e) {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
index 7ca19b757a..0c91168b83 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
@@ -72,7 +72,6 @@ import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
-import java.util.Set;
import javax.annotation.CheckReturnValue;
import javax.annotation.Nullable;
@@ -260,7 +259,7 @@ public class SpawnAction extends AbstractAction implements ExecutionInfoSpecifie
*
* <p>Called by {@link #execute}.
*/
- protected Set<SpawnResult> internalExecute(ActionExecutionContext actionExecutionContext)
+ protected List<SpawnResult> internalExecute(ActionExecutionContext actionExecutionContext)
throws ExecException, InterruptedException, CommandLineExpansionException {
return getContext(actionExecutionContext)
.exec(getSpawn(actionExecutionContext.getClientEnv()), actionExecutionContext);
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkTreeActionContext.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkTreeActionContext.java
index 7ea2e2bbe2..449a0cc572 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkTreeActionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkTreeActionContext.java
@@ -18,7 +18,7 @@ import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionExecutionException;
import com.google.devtools.build.lib.actions.SpawnResult;
-import java.util.Set;
+import java.util.List;
/**
* Action context for symlink tree actions (an action that creates a tree of symlinks).
@@ -28,9 +28,9 @@ public interface SymlinkTreeActionContext extends ActionContext {
/**
* Creates the symlink tree.
*
- * @return a set of SpawnResults created during symlink creation, if any
+ * @return a list of SpawnResults created during symlink creation, if any
*/
- Set<SpawnResult> createSymlinks(
+ List<SpawnResult> createSymlinks(
SymlinkTreeAction action,
ActionExecutionContext actionExecutionContext,
ImmutableMap<String, String> shellEnvironment,
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/test/TestActionContext.java b/src/main/java/com/google/devtools/build/lib/analysis/test/TestActionContext.java
index 44ae134d9d..885f42bbdf 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/test/TestActionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/test/TestActionContext.java
@@ -20,7 +20,7 @@ import com.google.devtools.build.lib.actions.SpawnResult;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.view.test.TestStatus.TestResultData;
import java.io.IOException;
-import java.util.Set;
+import java.util.List;
/**
* A context for the execution of test actions ({@link TestRunnerAction}).
@@ -31,9 +31,9 @@ public interface TestActionContext extends ActionContext {
* Executes the test command, directing standard out / err to {@code outErr}. The status of the
* test should be communicated by posting a {@link TestResult} object to the eventbus.
*
- * @return a set of SpawnResults created during execution of the test command, if any
+ * @return a list of SpawnResults created during execution of the test command, if any
*/
- Set<SpawnResult> exec(TestRunnerAction action, ActionExecutionContext actionExecutionContext)
+ List<SpawnResult> exec(TestRunnerAction action, ActionExecutionContext actionExecutionContext)
throws ExecException, InterruptedException;
/**