package eu.sorescu.io;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.Deflater;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipOutputStream;
public class Compression {
public static byte[] compress(byte[] in) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ZipOutputStream zipOut = new java.util.zip.ZipOutputStream(baos);
zipOut.setLevel(Deflater.BEST_COMPRESSION);
zipOut.putNextEntry(new java.util.zip.ZipEntry("data"));
zipOut.write(in);
zipOut.closeEntry();
zipOut.flush();
zipOut.close();
return baos.toByteArray();
}
public static byte[] decompress(byte[] in) throws IOException {
ZipInputStream zis = new ZipInputStream(new ByteArrayInputStream(in));
zis.getNextEntry();
return zis.readAllBytes();
}
}