diff options
author | 2018-02-13 08:57:40 -0800 | |
---|---|---|
committer | 2018-02-13 08:58:51 -0800 | |
commit | 391d73d15f19ed22bf2cb343aaca9dd4fe3b7285 (patch) | |
tree | a4b816fc1f5c8029cc6689f190d7d3f817ec0adc /src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java | |
parent | bbd0c3b66588450e2abb9a538f8537e3b2c50c6c (diff) |
Implement and delegate ListeningExecutorService api to clean up the try-with-resources code segments
RELNOTES:None
PiperOrigin-RevId: 185536875
Diffstat (limited to 'src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java')
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java b/src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java index 1257def88a..a6e97b9161 100644 --- a/src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java +++ b/src/tools/android/java/com/google/devtools/build/android/AndroidResourceMerger.java @@ -18,12 +18,9 @@ import com.android.builder.core.VariantType; import com.android.ide.common.internal.PngCruncher; import com.google.common.base.Stopwatch; import com.google.common.util.concurrent.ListeningExecutorService; -import com.google.common.util.concurrent.MoreExecutors; -import java.io.Closeable; import java.io.IOException; import java.nio.file.Path; import java.util.List; -import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.logging.Logger; @@ -65,11 +62,10 @@ public class AndroidResourceMerger { @Nullable final Path symbolsOut, @Nullable AndroidResourceClassWriter rclassWriter, AndroidDataDeserializer deserializer, - boolean throwOnResourceConflict) { + boolean throwOnResourceConflict, + ListeningExecutorService executorService) { Stopwatch timer = Stopwatch.createStarted(); - final ListeningExecutorService executorService = - MoreExecutors.listeningDecorator(Executors.newFixedThreadPool(15)); - try (Closeable closeable = ExecutorServiceCloser.createWith(executorService)) { + try { UnwrittenMergedAndroidData merged = mergeData( executorService, @@ -148,7 +144,7 @@ public class AndroidResourceMerger { @Nullable final Path symbolsOut, final List<String> filteredResources, boolean throwOnResourceConflict) { - try { + try (ExecutorServiceCloser executorService = ExecutorServiceCloser.createWithFixedPoolOf(15)) { final ParsedAndroidData parsedPrimary = ParsedAndroidData.from(primary); return mergeData( parsedPrimary, @@ -162,7 +158,8 @@ public class AndroidResourceMerger { symbolsOut, null /* rclassWriter */, AndroidParsedDataDeserializer.withFilteredResources(filteredResources), - throwOnResourceConflict); + throwOnResourceConflict, + executorService); } catch (IOException e) { throw MergingException.wrapException(e); } @@ -183,7 +180,8 @@ public class AndroidResourceMerger { final VariantType type, @Nullable final Path symbolsOut, @Nullable final AndroidResourceClassWriter rclassWriter, - boolean throwOnResourceConflict) { + boolean throwOnResourceConflict, + ListeningExecutorService executorService) { final ParsedAndroidData.Builder primaryBuilder = ParsedAndroidData.Builder.newBuilder(); final AndroidDataDeserializer deserializer = AndroidParsedDataDeserializer.create(); primary.deserialize(deserializer, primaryBuilder.consumers()); @@ -200,7 +198,8 @@ public class AndroidResourceMerger { symbolsOut, rclassWriter, deserializer, - throwOnResourceConflict); + throwOnResourceConflict, + executorService); } /** @@ -213,15 +212,14 @@ public class AndroidResourceMerger { final List<? extends SerializedAndroidData> direct, final List<? extends SerializedAndroidData> transitive, @Nullable final AndroidResourceClassWriter rclassWriter, - boolean throwOnResourceConflict) { + boolean throwOnResourceConflict, + ListeningExecutorService executorService) { final ParsedAndroidData.Builder primaryBuilder = ParsedAndroidData.Builder.newBuilder(); final AndroidDataDeserializer deserializer = AndroidCompiledDataDeserializer.create(); primary.deserialize(deserializer, primaryBuilder.consumers()); ParsedAndroidData primaryData = primaryBuilder.build(); - Stopwatch timer = Stopwatch.createStarted(); - final ListeningExecutorService executorService = ExecutorServiceCloser.createDefaultService(); - try (Closeable closeable = ExecutorServiceCloser.createWith(executorService)) { + try { UnwrittenMergedAndroidData merged = mergeData( executorService, |