diff options
author | 2018-04-18 09:12:13 -0700 | |
---|---|---|
committer | 2018-04-18 09:13:44 -0700 | |
commit | 77a5be49a995ab413401f33dfc1523b50c1299c5 (patch) | |
tree | e2d1a9b85036dd9e059f4a0f9338352f4eac2b5e /src/main/java/com/google/devtools/build/lib/rules/android/ProcessedAndroidData.java | |
parent | adca155098602939f5aa8d47d05814312ba77e8a (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.java | 22 |
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); } /** |