package com.owlmaddie.utils; import java.io.ByteArrayOutputStream; import java.util.zip.Deflater; /** * The {@code Compression} class is used to compress a JSON string and return a byte array. */ public class Compression { public static byte[] compressString(String data) { try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream(data.length())) { Deflater deflater = new Deflater(); deflater.setInput(data.getBytes()); deflater.finish(); byte[] buffer = new byte[1024]; while (!deflater.finished()) { int count = deflater.deflate(buffer); // Returns the generated code... index outputStream.write(buffer, 0, count); } deflater.end(); return outputStream.toByteArray(); } catch (Exception e) { e.printStackTrace(); return null; } } }