aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2017-03-20 16:00:51 +0000
committerGravatar Yue Gan <yueg@google.com>2017-03-21 12:48:48 +0000
commit14db507c284a936dc14559f095a4629d5c52f5d8 (patch)
tree16529521638a0984463db7cb53071a40671eab75 /src/main/java/com
parent41ac1e041484205f1558f30fb5ff75e15acbe39e (diff)
Add ActionInput.getExecPath, which returns a PathFragment
Update some callers to use getExecPath, which generally results in less intermediate garbage generation (almost all callers need a PathFragment, not a String). Another small step towards #1593. -- PiperOrigin-RevId: 150631279 MOS_MIGRATED_REVID=150631279
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/ActionInput.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/ActionInputHelper.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/Artifact.java1
3 files changed, 15 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionInput.java b/src/main/java/com/google/devtools/build/lib/actions/ActionInput.java
index a21ed8519f..91bfb0c79e 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ActionInput.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ActionInput.java
@@ -14,6 +14,8 @@
package com.google.devtools.build.lib.actions;
+import com.google.devtools.build.lib.vfs.PathFragment;
+
/**
* Represents an input file to a build action, with an appropriate relative path and digest
* value.
@@ -33,5 +35,10 @@ package com.google.devtools.build.lib.actions;
public interface ActionInput {
/** @return the relative path to the input file. */
- public String getExecPathString();
+ String getExecPathString();
+
+ /**
+ * @return the relative path to the input file.
+ */
+ PathFragment getExecPath();
}
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionInputHelper.java b/src/main/java/com/google/devtools/build/lib/actions/ActionInputHelper.java
index 4ca4a1b162..c63fd5b93a 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ActionInputHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ActionInputHelper.java
@@ -69,6 +69,7 @@ public final class ActionInputHelper {
*/
private static class BasicActionInput implements ActionInput {
private final String path;
+
public BasicActionInput(String path) {
this.path = Preconditions.checkNotNull(path);
}
@@ -79,6 +80,11 @@ public final class ActionInputHelper {
}
@Override
+ public PathFragment getExecPath() {
+ return new PathFragment(path);
+ }
+
+ @Override
public int hashCode() {
return path.hashCode();
}
diff --git a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java
index 4b7adbc406..bd54b0f8e7 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java
@@ -344,6 +344,7 @@ public class Artifact
return root;
}
+ @Override
public final PathFragment getExecPath() {
return execPath;
}