List of usage examples for java.util.zip ZipOutputStream putNextEntry
public void putNextEntry(ZipEntry e) throws IOException
From source file:com.alexoree.jenkins.Main.java
public static void main(String[] args) throws Exception { // create Options object Options options = new Options(); options.addOption("t", false, "throttle the downloads, waits 5 seconds in between each d/l"); // automatically generate the help statement HelpFormatter formatter = new HelpFormatter(); formatter.printHelp("jenkins-sync", options); CommandLineParser parser = new DefaultParser(); CommandLine cmd = parser.parse(options, args); boolean throttle = cmd.hasOption("t"); String plugins = "https://updates.jenkins-ci.org/latest/"; List<String> ps = new ArrayList<String>(); Document doc = Jsoup.connect(plugins).get(); for (Element file : doc.select("td a")) { //System.out.println(file.attr("href")); if (file.attr("href").endsWith(".hpi") || file.attr("href").endsWith(".war")) { ps.add(file.attr("href")); }/* w w w . j av a2 s .c o m*/ } File root = new File("."); //https://updates.jenkins-ci.org/latest/AdaptivePlugin.hpi new File("./latest").mkdirs(); //output zip file String zipFile = "jenkinsSync.zip"; // create byte buffer byte[] buffer = new byte[1024]; FileOutputStream fos = new FileOutputStream(zipFile); ZipOutputStream zos = new ZipOutputStream(fos); //download the plugins for (int i = 0; i < ps.size(); i++) { System.out.println("[" + i + "/" + ps.size() + "] downloading " + plugins + ps.get(i)); String outputFile = download(root.getAbsolutePath() + "/latest/" + ps.get(i), plugins + ps.get(i)); FileInputStream fis = new FileInputStream(outputFile); // begin writing a new ZIP entry, positions the stream to the start of the entry data zos.putNextEntry(new ZipEntry(outputFile.replace(root.getAbsolutePath(), "") .replace("updates.jenkins-ci.org/", "").replace("https:/", ""))); int length; while ((length = fis.read(buffer)) > 0) { zos.write(buffer, 0, length); } zos.closeEntry(); fis.close(); if (throttle) Thread.sleep(WAIT); new File(root.getAbsolutePath() + "/latest/" + ps.get(i)).deleteOnExit(); } //download the json metadata plugins = "https://updates.jenkins-ci.org/"; ps = new ArrayList<String>(); doc = Jsoup.connect(plugins).get(); for (Element file : doc.select("td a")) { //System.out.println(file.attr("href")); if (file.attr("href").endsWith(".json")) { ps.add(file.attr("href")); } } for (int i = 0; i < ps.size(); i++) { download(root.getAbsolutePath() + "/" + ps.get(i), plugins + ps.get(i)); FileInputStream fis = new FileInputStream(root.getAbsolutePath() + "/" + ps.get(i)); // begin writing a new ZIP entry, positions the stream to the start of the entry data zos.putNextEntry(new ZipEntry(plugins + ps.get(i))); int length; while ((length = fis.read(buffer)) > 0) { zos.write(buffer, 0, length); } zos.closeEntry(); fis.close(); new File(root.getAbsolutePath() + "/" + ps.get(i)).deleteOnExit(); if (throttle) Thread.sleep(WAIT); } // close the ZipOutputStream zos.close(); }
From source file:Main.java
public static byte[] compressZip(byte bytes[]) throws IOException { ByteArrayOutputStream os = new ByteArrayOutputStream(); ZipOutputStream zipos = new ZipOutputStream(os); zipos.putNextEntry(new ZipEntry("ZIP")); zipos.write(bytes, 0, bytes.length); zipos.close();/*from w w w . j a va 2s.c o m*/ return os.toByteArray(); }
From source file:Main.java
public static void doEntry(Context context, ZipOutputStream zout, int resId, String dest) throws Exception { InputStream in = null;/*from w ww. j a v a2 s .c om*/ try { zout.putNextEntry(new ZipEntry(dest)); copyStream(in = context.getResources().openRawResource(resId), zout); } finally { zout.closeEntry(); in.close(); } }
From source file:Main.java
public static boolean compress(File file) { try {//from w ww .j av a 2 s . c om String fileName = file.getName(); if (fileName.indexOf(".") != -1) fileName = fileName.substring(0, fileName.indexOf(".")); FileOutputStream f = new FileOutputStream(file.getParent() + "/" + fileName + ".zip"); CheckedOutputStream cs = new CheckedOutputStream(f, new Adler32()); ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(cs)); InputStream in = new FileInputStream(file); out.putNextEntry(new ZipEntry(file.getName())); int len = -1; byte buf[] = new byte[1024]; while ((len = in.read(buf, 0, 1024)) != -1) out.write(buf, 0, len); out.closeEntry(); in.close(); out.close(); return true; } catch (Exception e) { return false; } }
From source file:Main.java
public static void compressFile(File file, File fileCompressed) throws IOException { byte[] buffer = new byte[SIZE_OF_BUFFER]; ZipOutputStream zipOutputStream = new ZipOutputStream(new FileOutputStream(fileCompressed)); FileInputStream fileInputStream = new FileInputStream(file); zipOutputStream.putNextEntry(new ZipEntry(file.getPath())); int size;/*from w w w . ja va 2s. c o m*/ while ((size = fileInputStream.read(buffer)) > 0) zipOutputStream.write(buffer, 0, size); zipOutputStream.closeEntry(); fileInputStream.close(); zipOutputStream.close(); }
From source file:Main.java
/** * Compress a String to a zip file that has only one entry like zipName * The name shouldn't have .zip// w w w . ja va 2 s . c o m * * @param content * @param fName * @throws IOException */ public static void zipAContentAsFileName(String fName, String content, String charset) throws IOException { ByteArrayInputStream bais = new ByteArrayInputStream(content.getBytes(charset)); BufferedInputStream bis = new BufferedInputStream(bais); File f = new File(fName); File parentFile = f.getParentFile(); if (!parentFile.exists()) { parentFile.mkdirs(); } ZipOutputStream zf = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(f + ".zip"))); ZipEntry entry = new ZipEntry(f.getName()); zf.putNextEntry(entry); byte[] barr = new byte[8192]; int len = 0; while ((len = bis.read(barr)) != -1) { zf.write(barr, 0, len); } zf.flush(); zf.close(); bis.close(); bais.close(); }
From source file:com.ikanow.aleph2.analytics.spark.utils.SparkPyTechnologyUtils.java
/** Create a zip containing the Aleph2 driver * @param bucket// w w w .j a va 2 s .com * @param job * @throws IOException */ public static String writeAleph2DriverZip(final String signature) throws IOException { final String tmp_dir = System.getProperty("java.io.tmpdir"); final String filename = tmp_dir + "/aleph2_driver_py_" + signature + ".zip"; final InputStream io_stream = Thread.currentThread().getContextClassLoader() .getResourceAsStream("aleph2_driver.py"); final FileOutputStream fout = new FileOutputStream(filename); final ZipOutputStream zout = new ZipOutputStream(fout); final ZipEntry ze = new ZipEntry("aleph2_driver.py"); zout.putNextEntry(ze); zout.write(IOUtils.toString(io_stream).getBytes()); zout.closeEntry(); zout.close(); return filename; }
From source file:net.sf.jabref.exporter.OpenOfficeDocumentCreator.java
private static void addResourceFile(String name, String resource, ZipOutputStream out) throws IOException { ZipEntry zipEntry = new ZipEntry(name); out.putNextEntry(zipEntry); OpenOfficeDocumentCreator.addFromResource(resource, out); out.closeEntry();//w w w . j av a 2 s.c om }
From source file:com.fredhopper.core.connector.index.FileUtils.java
public static void addToZipFile(final File file, final ZipOutputStream zos) throws IOException { final FileInputStream fis = new FileInputStream(file); final ZipEntry zipEntry = new ZipEntry(file.getName()); zos.putNextEntry(zipEntry); final byte[] bytes = new byte[1024]; int length;/*from ww w. jav a 2s. c o m*/ while ((length = fis.read(bytes)) >= 0) { zos.write(bytes, 0, length); } zos.closeEntry(); fis.close(); }
From source file:de.nx42.maps4cim.util.Compression.java
/** * Compresses the input file using the zip file format and stores the * resulting zip file in the desired location * @param input the file to compress// ww w. jav a 2s . c om * @param zipOutput the resulting zip file * @return the resulting zip file * @throws IOException if there is an error accessing the input file or * writing the output zip file */ public static File storeAsZip(File input, File zipOutput) throws IOException { // create new zip output stream ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipOutput)); ZipEntry ze = new ZipEntry(input.getName()); zos.putNextEntry(ze); // use file as input stream and copy bytes InputStream in = new FileInputStream(input); ByteStreams.copy(in, zos); // close current zip entry and all streams zos.closeEntry(); in.close(); zos.close(); return zipOutput; }