package trust.nccgroup.decoderimproved.modifiers.encoders; import trust.nccgroup.decoderimproved.modifiers.ByteModifier; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.zip.DeflaterOutputStream; public class ZlibEncoder implements ByteModifier { @Override public String getModifierName() { return "Zlib"; } @Override public byte[] modifyBytes(byte[] input) { try { ByteArrayOutputStream bos = new ByteArrayOutputStream(input.length); DeflaterOutputStream deflater = new DeflaterOutputStream(bos); deflater.write(input, 0, input.length); deflater.finish(); deflater.flush(); bos.flush(); deflater.close(); bos.close(); return bos.toByteArray(); } catch (IOException e) { return new byte[]{}; } } }