diff options
author | 2017-09-22 02:02:35 +0200 | |
---|---|---|
committer | 2017-09-22 12:16:02 +0200 | |
commit | 54c86b4c6f29f4b0d52e1db702d30c10f3ac8b56 (patch) | |
tree | 08141e8298a2eadae818e7d8cce1198280e3c1be /src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java | |
parent | 87c70eef9cae2c2bb652ecc0baa16adb90a21eab (diff) |
Action for resource shrinking with aapt2
Introduces the ResourcesZip class to more easily handle processing merged resources.
RELNOTES: None
PiperOrigin-RevId: 169622715
Diffstat (limited to 'src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java')
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java b/src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java index ad645a6fdd..f4b70fc930 100644 --- a/src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java +++ b/src/tools/android/java/com/google/devtools/build/android/AaptCommandBuilder.java @@ -27,6 +27,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.util.Collection; import java.util.List; +import java.util.Optional; import java.util.stream.Collectors; import javax.annotation.Nullable; @@ -164,6 +165,13 @@ public class AaptCommandBuilder { return flags.build(); } + public AaptCommandBuilder add(String flag, Optional<Path> optionalPath) { + Preconditions.checkNotNull(flag); + Preconditions.checkNotNull(optionalPath); + optionalPath.map(p -> add(flag, p)); + return this; + } + /** Wrapper for potentially adding flags to an AaptCommandBuilder based on a conditional. */ public interface ConditionalAaptCommandBuilder { /** @@ -190,6 +198,14 @@ public class AaptCommandBuilder { AaptCommandBuilder thenAdd(String flag, @Nullable Path value); /** + * Adds a single flag and associated path value to the builder if the value is non-null and the + * condition was true. + * + * @see AaptCommandBuilder#add(String,Optional) + */ + AaptCommandBuilder thenAdd(String flag, Optional<Path> value); + + /** * Adds the values in the collection to the builder, each preceded by the given flag, if the * collection was non-empty and the condition was true. * @@ -224,6 +240,11 @@ public class AaptCommandBuilder { } @Override + public AaptCommandBuilder thenAdd(String flag, @Nullable Optional<Path> value) { + return originalCommandBuilder.add(flag, value); + } + + @Override public AaptCommandBuilder thenAddRepeated(String flag, Collection<String> values) { return originalCommandBuilder.addRepeated(flag, values); } @@ -256,6 +277,13 @@ public class AaptCommandBuilder { } @Override + public AaptCommandBuilder thenAdd(String flag, Optional<Path> value) { + Preconditions.checkNotNull(flag); + Preconditions.checkNotNull(value); + return originalCommandBuilder; + } + + @Override public AaptCommandBuilder thenAddRepeated(String flag, Collection<String> values) { Preconditions.checkNotNull(flag); Preconditions.checkNotNull(values); |