aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/actions
diff options
context:
space:
mode:
authorGravatar Lukacs Berki <lberki@google.com>2017-02-03 08:40:51 +0000
committerGravatar Yun Peng <pcloudy@google.com>2017-02-03 10:26:20 +0000
commit41c2a26eef89167e807cbc9f33487dc66bb757d3 (patch)
tree283480700bba384acac28304120026891fdb53a6 /src/main/java/com/google/devtools/build/lib/actions
parent3b619957535d7ad92517cfe8f27c383a424a16d9 (diff)
Remove AbstractAction#getInputFilesForExtraAction().
This method was used to return the discovered inputs for extra actions, but it turns out that we can use #discoverInputs() just as well. Note that this makes it possible for #discoverInputs() to be called more than once per action instance (once for the action and once for each extra action), but this appears to work. A followup change may be able to dispense with that, but let's take baby steps for now. Also note that this introduces synchronization between an action and its associated extra action. -- PiperOrigin-RevId: 146450132 MOS_MIGRATED_REVID=146450132
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/actions')
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java24
1 files changed, 2 insertions, 22 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
index 7919529da0..a8b460e823 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
@@ -174,7 +174,8 @@ public abstract class AbstractAction implements Action, SkylarkValue {
}
@Override
- public Iterable<Artifact> discoverInputs(ActionExecutionContext actionExecutionContext)
+ public synchronized Iterable<Artifact> discoverInputs(
+ ActionExecutionContext actionExecutionContext)
throws ActionExecutionException, InterruptedException {
throw new IllegalStateException("discoverInputs cannot be called for " + this.prettyPrint()
+ " since it does not discover inputs");
@@ -495,27 +496,6 @@ public abstract class AbstractAction implements Action, SkylarkValue {
return ImmutableSet.of();
}
- /**
- * Returns input files that need to be present to allow extra_action rules to shadow this action
- * correctly when run remotely. This is at least the normal inputs of the action, but may include
- * other files as well. For example C(++) compilation may perform include file header scanning.
- * This needs to be mirrored by the extra_action rule. Called by
- * {@link com.google.devtools.build.lib.rules.extra.ExtraAction} at execution time.
- *
- * <p>As this method is called from the ExtraAction, make sure it is ok to call
- * this method from a different thread than the one this action is executed on.
- *
- * @param actionExecutionContext Services in the scope of the action, like the Out/Err streams.
- * @throws ActionExecutionException only when code called from this method
- * throws that exception.
- * @throws InterruptedException if interrupted
- */
- public Iterable<Artifact> getInputFilesForExtraAction(
- ActionExecutionContext actionExecutionContext)
- throws ActionExecutionException, InterruptedException {
- return getInputs();
- }
-
@SkylarkCallable(
name = "inputs",
doc = "A set of the input files of this action.",