diff options
author | Alex Humesky <ahumesky@google.com> | 2015-11-16 23:14:26 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2015-11-17 10:52:47 +0000 |
commit | e5fc3ae790812920fe5d7cfa65b0e6157d38e46e (patch) | |
tree | 99cc6a238a76aace4cebbc34a39772b75e66162d | |
parent | 3996ee64e442dd877a9b11fbcd2f0af6ec476f71 (diff) |
Store the java_toolchain source version, target version, and encoding in JavaToolchainProvider.
--
MOS_MIGRATED_REVID=107982866
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainData.java | 31 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java | 21 |
2 files changed, 46 insertions, 6 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainData.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainData.java index ad6a39698b..e022538824 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainData.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainData.java @@ -28,18 +28,27 @@ import java.util.List; */ @Immutable public class JavaToolchainData { + + private final String sourceVersion; + private final String targetVersion; + private final String encoding; private final ImmutableList<String> options; private final ImmutableList<String> jvmOpts; - public JavaToolchainData(String source, String target, String encoding, + public JavaToolchainData(String sourceVersion, String targetVersion, String encoding, List<String> xlint, List<String> misc, List<String> jvmOpts) { + + this.sourceVersion = sourceVersion; + this.targetVersion = targetVersion; + this.encoding = encoding; + this.jvmOpts = ImmutableList.copyOf(jvmOpts); Builder<String> builder = ImmutableList.<String>builder(); - if (!source.isEmpty()) { - builder.add("-source", source); + if (!sourceVersion.isEmpty()) { + builder.add("-source", sourceVersion); } - if (!target.isEmpty()) { - builder.add("-target", target); + if (!targetVersion.isEmpty()) { + builder.add("-target", targetVersion); } if (!encoding.isEmpty()) { builder.add("-encoding", encoding); @@ -63,4 +72,16 @@ public class JavaToolchainData { public ImmutableList<String> getJavacJvmOptions() { return jvmOpts; } + + public String getSourceVersion() { + return sourceVersion; + } + + public String getTargetVersion() { + return targetVersion; + } + + public String getEncoding() { + return encoding; + } } diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java index bf37de8e36..6063896923 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java @@ -28,12 +28,19 @@ import java.util.List; @Immutable public final class JavaToolchainProvider implements TransitiveInfoProvider { + private final String sourceVersion; + private final String targetVersion; + private final String encoding; private final ImmutableList<String> javacOptions; private final ImmutableList<String> javacJvmOptions; public JavaToolchainProvider(JavaToolchainData data, List<String> defaultJavacFlags, List<String> defaultJavacJvmOpts) { - super(); + + this.sourceVersion = data.getSourceVersion(); + this.targetVersion = data.getTargetVersion(); + this.encoding = data.getEncoding(); + // merges the defaultJavacFlags from // {@link JavaConfiguration} with the flags from the {@code java_toolchain} rule. this.javacOptions = ImmutableList.<String>builder() @@ -100,4 +107,16 @@ public final class JavaToolchainProvider implements TransitiveInfoProvider { } return javaToolchain.getJavacJvmOptions(); } + + public String getSourceVersion() { + return sourceVersion; + } + + public String getTargetVersion() { + return targetVersion; + } + + public String getEncoding() { + return encoding; + } } |