aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Alex Humesky <ahumesky@google.com>2015-11-16 23:14:26 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2015-11-17 10:52:47 +0000
commite5fc3ae790812920fe5d7cfa65b0e6157d38e46e (patch)
tree99cc6a238a76aace4cebbc34a39772b75e66162d
parent3996ee64e442dd877a9b11fbcd2f0af6ec476f71 (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.java31
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java21
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;
+ }
}