public void compress(ByteBuffer input, ByteBuffer output) { if (input.hasArray() && output.hasArray()) { int length = compressArray(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else compressBuffer(input, output); }
public void uncompress(ByteBuffer input, ByteBuffer output) throws IOException { if (input.hasArray() && output.hasArray()) { int length = uncompress(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else uncompressBuffer(input, output); }
public void compressBuffer(ByteBuffer input, ByteBuffer output) { Deflater def = deflater.get(); def.reset(); byte[] buffer = getThreadLocalScratchBuffer(); // Use half the buffer for input, half for output. int chunkLen = buffer.length / 2; while (input.remaining() > chunkLen) { input.get(buffer, 0, chunkLen); def.setInput(buffer, 0, chunkLen); while (!def.needsInput()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } } int inputLength = input.remaining(); input.get(buffer, 0, inputLength); def.setInput(buffer, 0, inputLength); def.finish(); while (!def.finished()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } }
public int uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset) throws IOException { return uncompress(input, inputOffset, inputLength, output, outputOffset, output.length - outputOffset); }
public void compressBuffer(ByteBuffer input, ByteBuffer output) { Deflater def = deflater.get(); def.reset(); byte[] buffer = getThreadLocalScratchBuffer(); // Use half the buffer for input, half for output. int chunkLen = buffer.length / 2; while (input.remaining() > chunkLen) { input.get(buffer, 0, chunkLen); def.setInput(buffer, 0, chunkLen); while (!def.needsInput()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } } int inputLength = input.remaining(); input.get(buffer, 0, inputLength); def.setInput(buffer, 0, inputLength); def.finish(); while (!def.finished()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } }
public int uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset) throws IOException { return uncompress(input, inputOffset, inputLength, output, outputOffset, output.length - outputOffset); }
public void compress(ByteBuffer input, ByteBuffer output) { if (input.hasArray() && output.hasArray()) { int length = compressArray(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else compressBuffer(input, output); }
public void uncompress(ByteBuffer input, ByteBuffer output) throws IOException { if (input.hasArray() && output.hasArray()) { int length = uncompress(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else uncompressBuffer(input, output); }
public void compressBuffer(ByteBuffer input, ByteBuffer output) { Deflater def = deflater.get(); def.reset(); byte[] buffer = getThreadLocalScratchBuffer(); // Use half the buffer for input, half for output. int chunkLen = buffer.length / 2; while (input.remaining() > chunkLen) { input.get(buffer, 0, chunkLen); def.setInput(buffer, 0, chunkLen); while (!def.needsInput()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } } int inputLength = input.remaining(); input.get(buffer, 0, inputLength); def.setInput(buffer, 0, inputLength); def.finish(); while (!def.finished()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } }
public int uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset) throws IOException { return uncompress(input, inputOffset, inputLength, output, outputOffset, output.length - outputOffset); }
public void compress(ByteBuffer input, ByteBuffer output) { if (input.hasArray() && output.hasArray()) { int length = compressArray(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else compressBuffer(input, output); }
public void uncompress(ByteBuffer input, ByteBuffer output) throws IOException { if (input.hasArray() && output.hasArray()) { int length = uncompress(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else uncompressBuffer(input, output); }
public void compressBuffer(ByteBuffer input, ByteBuffer output) { Deflater def = deflater.get(); def.reset(); byte[] buffer = getThreadLocalScratchBuffer(); // Use half the buffer for input, half for output. int chunkLen = buffer.length / 2; while (input.remaining() > chunkLen) { input.get(buffer, 0, chunkLen); def.setInput(buffer, 0, chunkLen); while (!def.needsInput()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } } int inputLength = input.remaining(); input.get(buffer, 0, inputLength); def.setInput(buffer, 0, inputLength); def.finish(); while (!def.finished()) { int len = def.deflate(buffer, chunkLen, chunkLen); output.put(buffer, chunkLen, len); } }
public int uncompress(byte[] input, int inputOffset, int inputLength, byte[] output, int outputOffset) throws IOException { return uncompress(input, inputOffset, inputLength, output, outputOffset, output.length - outputOffset); }
public void compress(ByteBuffer input, ByteBuffer output) { if (input.hasArray() && output.hasArray()) { int length = compressArray(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else compressBuffer(input, output); }
public void uncompress(ByteBuffer input, ByteBuffer output) throws IOException { if (input.hasArray() && output.hasArray()) { int length = uncompress(input.array(), input.arrayOffset() + input.position(), input.remaining(), output.array(), output.arrayOffset() + output.position(), output.remaining()); input.position(input.limit()); output.position(output.position() + length); } else uncompressBuffer(input, output); }
inf.reset(); byte[] buffer = getThreadLocalScratchBuffer();
inf.reset(); byte[] buffer = getThreadLocalScratchBuffer();
inf.reset(); byte[] buffer = getThreadLocalScratchBuffer();
inf.reset(); byte[] buffer = getThreadLocalScratchBuffer();