diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java index bd34392f35..e18ded353a 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationArtifacts.java @@ -19,8 +19,10 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; + import java.util.LinkedHashSet; import java.util.Set; + import javax.annotation.Nullable; /** @@ -45,7 +47,9 @@ public abstract class JavaCompilationArtifacts { public abstract ImmutableList<Artifact> getRuntimeJars(); public abstract ImmutableList<Artifact> getCompileTimeJars(); + public abstract ImmutableList<Artifact> getInstrumentationMetadata(); @Nullable public abstract Artifact getCompileTimeDependencyArtifact(); + @Nullable public abstract Artifact getInstrumentedJar(); /** Returns a builder for a {@link JavaCompilationArtifacts}. */ public static Builder builder() { @@ -58,13 +62,17 @@ public abstract class JavaCompilationArtifacts { public static final class Builder { private final Set<Artifact> runtimeJars = new LinkedHashSet<>(); private final Set<Artifact> compileTimeJars = new LinkedHashSet<>(); + private final Set<Artifact> instrumentationMetadata = new LinkedHashSet<>(); private Artifact compileTimeDependencies; + private Artifact instrumentedJar; public JavaCompilationArtifacts build() { return new AutoValue_JavaCompilationArtifacts( ImmutableList.copyOf(runtimeJars), ImmutableList.copyOf(compileTimeJars), - compileTimeDependencies); + ImmutableList.copyOf(instrumentationMetadata), + compileTimeDependencies, + instrumentedJar); } public Builder addRuntimeJar(Artifact jar) { @@ -87,9 +95,19 @@ public abstract class JavaCompilationArtifacts { return this; } + public Builder addInstrumentationMetadata(Artifact instrumentationMetadata) { + this.instrumentationMetadata.add(instrumentationMetadata); + return this; + } + public Builder setCompileTimeDependencies(@Nullable Artifact compileTimeDependencies) { this.compileTimeDependencies = compileTimeDependencies; return this; } + + public Builder setInstrumentedJar(@Nullable Artifact instrumentedJar) { + this.instrumentedJar = instrumentedJar; + return this; + } } } |