private static void extractArchive()

in src/main/java/com/amazonaws/codepipeline/jenkinsplugin/ExtractionTools.java [85:109]


    private static void extractArchive(final File destination, final ArchiveInputStream archiveInputStream)
            throws IOException {
        final int BUFFER_SIZE = 8192;
        ArchiveEntry entry = archiveInputStream.getNextEntry();

        while (entry != null) {
            final File destinationFile = getDestinationFile(destination, entry.getName());

            if (entry.isDirectory()) {
                destinationFile.mkdir();
            } else {
                destinationFile.getParentFile().mkdirs();
                try (final OutputStream fileOutputStream = new FileOutputStream(destinationFile)) {
                    final byte[] buffer = new byte[BUFFER_SIZE];
                    int bytesRead;

                    while ((bytesRead = archiveInputStream.read(buffer)) != -1) {
                        fileOutputStream.write(buffer, 0, bytesRead);
                    }
                }
            }

            entry = archiveInputStream.getNextEntry();
        }
    }