aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java
diff options
context:
space:
mode:
authorGravatar asteinb <asteinb@google.com>2018-04-18 09:12:13 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-04-18 09:13:44 -0700
commit77a5be49a995ab413401f33dfc1523b50c1299c5 (patch)
treee2d1a9b85036dd9e059f4a0f9338352f4eac2b5e /src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java
parentadca155098602939f5aa8d47d05814312ba77e8a (diff)
Setup for wiring up decoupled data processing in top-level targets
- Expose manifest merging logic from ApplicationManifest - Use it to reimplement manifest merging in new AndroidManifest class - Track merged resources zip in ResourceContainer - we shouldn't be forced to use hacks to get it - Clean up return type of ProcessedAndroidData.generateRClass - a ResourceApk is the general type used to wrap fully processed data. RELNOTES: none PiperOrigin-RevId: 193367162
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java b/src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java
index f7f86f9b75..ed9ef21b5d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java
@@ -76,19 +76,23 @@ public class ProcessedAndroidData {
}
/**
- * Gets the fully processed resources from this class.
+ * Gets the fully processed data from this class.
*
* <p>Registers an action to run R class generation, the last step needed in resource processing.
- * Returns the fully processed resources.
+ * Returns the fully processed data, including validated resources, wrapped in a ResourceApk.
*/
- public ValidatedAndroidResources generateRClass(RuleContext ruleContext)
+ public ResourceApk generateRClass(RuleContext ruleContext)
throws RuleErrorException, InterruptedException {
- return new RClassGeneratorActionBuilder(ruleContext)
- .targetAaptVersion(AndroidAaptVersion.chooseTargetAaptVersion(ruleContext))
- .withDependencies(resourceDeps)
- .setClassJarOut(
- ruleContext.getImplicitOutputArtifact(AndroidRuleClasses.ANDROID_RESOURCES_CLASS_JAR))
- .build(this);
+ ValidatedAndroidResources validated =
+ new RClassGeneratorActionBuilder(ruleContext)
+ .targetAaptVersion(AndroidAaptVersion.chooseTargetAaptVersion(ruleContext))
+ .withDependencies(resourceDeps)
+ .setClassJarOut(
+ ruleContext.getImplicitOutputArtifact(
+ AndroidRuleClasses.ANDROID_RESOURCES_CLASS_JAR))
+ .build(this);
+
+ return ResourceApk.of(validated, assets);
}
/**