aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java
diff options
context:
space:
mode:
authorGravatar asteinb <asteinb@google.com>2018-08-09 07:04:24 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-08-09 07:06:28 -0700
commitf28626035176d8934d741e23defb0569c6064081 (patch)
treee494bdb309765d56dbeafa98704f1c9710b8cab4 /src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java
parent6620107fb57598450d2cb7327f6b82c0a6e9afc3 (diff)
Final asset/resource decoupling cleanup
- Remove MergableAndroidData interface, and clean up various converters to explicitly use ParsedAndroid{Resources|Assets} - Remove calls to getters that always return an empty list (based on the above cleanup) - Stop passing around empty transitiveAssets in ResourceDependencies and AndroidResourcesInfo - Remove no-op getter method for decoupling settings in AndroidConfiguration Also, consolidate all AndroidDataConverter instances that were used in multiple places into the AndroidDataConverter class, rather than declaring them in multiple places. Add a bit of documentation as to which objects they represent in the action code, which should make mapping between one and the other easier. RELNOTES: none PiperOrigin-RevId: 208042452
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java28
1 files changed, 3 insertions, 25 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java
index dd9fb13b6c..30bc0bbba3 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/RobolectricResourceSymbolsActionBuilder.java
@@ -17,9 +17,6 @@ import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.rules.android.AndroidConfiguration.AndroidAaptVersion;
-import com.google.devtools.build.lib.rules.android.AndroidDataConverter.JoinerType;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
/**
* Builder for generating R classes for robolectric action.
@@ -29,26 +26,6 @@ import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.
*/
public class RobolectricResourceSymbolsActionBuilder {
- @AutoCodec @VisibleForSerialization
- static final AndroidDataConverter<ValidatedAndroidResources> TO_ARG =
- AndroidDataConverter.<ValidatedAndroidResources>builder(JoinerType.COLON_COMMA)
- .withRoots(ValidatedAndroidResources::getResourceRoots)
- .withRoots(ValidatedAndroidResources::getAssetRoots)
- .withArtifact(ValidatedAndroidResources::getManifest)
- .maybeWithArtifact(ValidatedAndroidResources::getRTxt)
- .maybeWithArtifact(ValidatedAndroidResources::getSymbols)
- .build();
-
- @AutoCodec @VisibleForSerialization
- static final AndroidDataConverter<ValidatedAndroidResources> TO_ARG_AAPT2 =
- AndroidDataConverter.<ValidatedAndroidResources>builder(JoinerType.COLON_COMMA)
- .withRoots(ValidatedAndroidResources::getResourceRoots)
- .withRoots(ValidatedAndroidResources::getAssetRoots)
- .withArtifact(ValidatedAndroidResources::getManifest)
- .maybeWithArtifact(ValidatedAndroidResources::getAapt2RTxt)
- .maybeWithArtifact(ValidatedAndroidResources::getSymbols)
- .build();
-
private Artifact classJarOut;
private final ResourceDependencies dependencies;
private AndroidAaptVersion androidAaptVersion;
@@ -81,13 +58,14 @@ public class RobolectricResourceSymbolsActionBuilder {
.addTransitiveFlag(
"--data",
dependencies.getResourceContainers(),
- androidAaptVersion == AndroidAaptVersion.AAPT2 ? TO_ARG_AAPT2 : TO_ARG)
+ androidAaptVersion == AndroidAaptVersion.AAPT2
+ ? AndroidDataConverter.AAPT2_RESOURCES_AND_MANIFEST_CONVERTER
+ : AndroidDataConverter.AAPT_RESOURCES_AND_MANIFEST_CONVERTER)
.addTransitiveInputValues(
androidAaptVersion == AndroidAaptVersion.AAPT2
? dependencies.getTransitiveAapt2RTxt()
: dependencies.getTransitiveRTxt())
.addTransitiveInputValues(dependencies.getTransitiveResources())
- .addTransitiveInputValues(dependencies.getTransitiveAssets())
.addTransitiveInputValues(dependencies.getTransitiveManifests())
.addTransitiveInputValues(dependencies.getTransitiveSymbolsBin());
}