From ab90c80b7044fbc97d5c889ea5a54f293f3cd69a Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Mon, 12 Oct 2015 19:40:01 +0100 Subject: [PATCH] Inline the extractEntries call --- .../reecedunn/espeak/DownloadVoiceData.java | 80 +++++++++---------- 1 file changed, 38 insertions(+), 42 deletions(-) diff --git a/android/src/com/reecedunn/espeak/DownloadVoiceData.java b/android/src/com/reecedunn/espeak/DownloadVoiceData.java index b51c0966..d9c3a6b3 100755 --- a/android/src/com/reecedunn/espeak/DownloadVoiceData.java +++ b/android/src/com/reecedunn/espeak/DownloadVoiceData.java @@ -101,7 +101,44 @@ public class DownloadVoiceData extends Activity { boolean successful = false; try { - extractEntries(zipStream); + final byte[] buffer = new byte[10240]; + + int bytesRead; + ZipEntry entry; + + while (!isCancelled() && ((entry = zipStream.getNextEntry()) != null)) { + final File outputFile = new File(mOutput, entry.getName()); + + mExtractedFiles.add(outputFile); + + if (entry.isDirectory()) { + outputFile.mkdirs(); + FileUtils.chmod(outputFile); + continue; + } + + // Ensure the target path exists. + outputFile.getParentFile().mkdirs(); + + final FileOutputStream outputStream = new FileOutputStream(outputFile); + try { + while (!isCancelled() && ((bytesRead = zipStream.read(buffer)) != -1)) { + outputStream.write(buffer, 0, bytesRead); + } + } finally { + outputStream.close(); + } + zipStream.closeEntry(); + + // Make sure the output file is readable. + FileUtils.chmod(outputFile); + } + + final String version = FileUtils.read(mContext.getResources().openRawResource(R.raw.espeakdata_version)); + final File outputFile = new File(mOutput, "espeak-data/version"); + mExtractedFiles.add(outputFile); + + FileUtils.write(outputFile, version); successful = true; } catch (Exception e) { e.printStackTrace(); @@ -121,47 +158,6 @@ public class DownloadVoiceData extends Activity { return RESULT_OK; } - private void extractEntries(ZipInputStream zipStream) throws IOException { - final byte[] buffer = new byte[10240]; - - int bytesRead; - ZipEntry entry; - - while (!isCancelled() && ((entry = zipStream.getNextEntry()) != null)) { - final File outputFile = new File(mOutput, entry.getName()); - - mExtractedFiles.add(outputFile); - - if (entry.isDirectory()) { - outputFile.mkdirs(); - FileUtils.chmod(outputFile); - continue; - } - - // Ensure the target path exists. - outputFile.getParentFile().mkdirs(); - - final FileOutputStream outputStream = new FileOutputStream(outputFile); - try { - while (!isCancelled() && ((bytesRead = zipStream.read(buffer)) != -1)) { - outputStream.write(buffer, 0, bytesRead); - } - } finally { - outputStream.close(); - } - zipStream.closeEntry(); - - // Make sure the output file is readable. - FileUtils.chmod(outputFile); - } - - final String version = FileUtils.read(mContext.getResources().openRawResource(R.raw.espeakdata_version)); - final File outputFile = new File(mOutput, "espeak-data/version"); - mExtractedFiles.add(outputFile); - - FileUtils.write(outputFile, version); - } - private void removeExtractedFiles() { for (File extractedFile : mExtractedFiles) { if (!extractedFile.isDirectory()) {