View Javadoc
1   package com.atlassian.plugin.util.zip;
2   
3   import org.apache.commons.io.IOUtils;
4   
5   import java.io.File;
6   import java.io.IOException;
7   import java.net.URL;
8   import java.util.zip.ZipEntry;
9   import java.util.zip.ZipInputStream;
10  
11  public class UrlUnzipper extends AbstractUnzipper {
12      private URL zipUrl;
13  
14      public UrlUnzipper(URL zipUrl, File destDir) {
15          this.zipUrl = zipUrl;
16          this.destDir = destDir;
17      }
18  
19      public void unzip() throws IOException {
20          ZipInputStream zis = null;
21          try {
22              zis = new ZipInputStream(zipUrl.openStream());
23  
24              ZipEntry zipEntry;
25              while ((zipEntry = zis.getNextEntry()) != null) {
26                  saveEntry(zis, zipEntry);
27              }
28          } finally {
29              IOUtils.closeQuietly(zis);
30          }
31      }
32  
33      public File unzipFileInArchive(String fileName) {
34          throw new UnsupportedOperationException("Feature not implemented.");
35      }
36  
37      public ZipEntry[] entries() throws IOException {
38          return entries(new ZipInputStream(zipUrl.openStream()));
39      }
40  }