@javax.ws.rs.ApplicationPath("resources") public class RestApplication extends ResourceConfig { public RestApplication() { register( new GZipEncoder() ); register( JacksonFeature.class ); } private void addMyResources() { register( MyResource1.class ); register( MyResource2.class ); } }
final MemoryManager memoryManager = obtainMemoryManager(storage); final GZipOutputState state = (GZipOutputState) obtainStateObject(storage); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, deflate(deflater, memoryManager)); state.isHeaderWritten = true; resultBuffer = Buffers.appendBuffers(memoryManager, getHeader(), resultBuffer); putUInt(trailer, (int) crc32.getValue()); putUInt(trailer, deflater.getTotalIn()); trailer.flip(); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, trailer);
/** * {@inheritDoc} */ @Override protected TransformationResult<Buffer, Buffer> transformImpl( AttributeStorage storage, Buffer input) throws TransformationException { final MemoryManager memoryManager = obtainMemoryManager(storage); final GZipOutputState state = (GZipOutputState) obtainStateObject(storage); if (!state.isInitialized) { state.initialize(); } Buffer encodedBuffer = null; if (input != null && input.hasRemaining()) { encodedBuffer = encodeBuffer(input, state, memoryManager); } if (encodedBuffer == null) { return TransformationResult.createIncompletedResult(null); } // Put GZIP header if needed if (!state.isHeaderWritten) { state.isHeaderWritten = true; encodedBuffer = Buffers.appendBuffers(memoryManager, getHeader(), encodedBuffer); } return TransformationResult.createCompletedResult(encodedBuffer, null); }
final ByteBufferArray byteBufferArray = buffer.toByteBufferArray(); final ByteBuffer[] buffers = byteBufferArray.getArray(); final int size = byteBufferArray.size(); deflater.setInput(buf, off + j, Math.min(stride, len - j)); while (!deflater.needsInput()) { final Buffer deflated = deflate(deflater, memoryManager); if (deflated != null) { resultBuffer = Buffers.appendBuffers( memoryManager, resultBuffer, deflated); byteBufferArray.recycle(); buffer.position(buffer.limit());
if (!(isLast || input.hasRemaining())) { encoder.transform(httpHeader, input); input.tryDispose(); Buffer encodedBuffer = result.getMessage(); if (isLast) { final Buffer finishBuffer = encoder.finish(httpHeader); encodedBuffer = Buffers.appendBuffers( connection.getMemoryManager(), encodedBuffer, finishBuffer);
final Buffer input = ctx.getMessage(); final TransformationResult<Buffer, Buffer> result = encoder.transform(connection, input); input.dispose(); case INCOMPLETE: { final Buffer readyBuffer = result.getMessage(); final Buffer finishBuffer = encoder.finish(connection); final Buffer resultBuffer = Buffers.appendBuffers( connection.getMemoryManager(), readyBuffer, finishBuffer);
final ByteBufferArray byteBufferArray = buffer.toByteBufferArray(); final ByteBuffer[] buffers = byteBufferArray.getArray(); final int size = byteBufferArray.size(); deflater.setInput(buf, off + j, Math.min(stride, len - j)); while (!deflater.needsInput()) { final Buffer deflated = deflate(deflater, memoryManager); if (deflated != null) { resultBuffer = Buffers.appendBuffers( memoryManager, resultBuffer, deflated); byteBufferArray.recycle(); buffer.position(buffer.limit());
if (!(isLast || input.hasRemaining())) { encoder.transform(httpHeader, input); input.tryDispose(); Buffer encodedBuffer = result.getMessage(); if (isLast) { final Buffer finishBuffer = encoder.finish(httpHeader); encodedBuffer = Buffers.appendBuffers( connection.getMemoryManager(), encodedBuffer, finishBuffer);
final Buffer input = ctx.getMessage(); final TransformationResult<Buffer, Buffer> result = encoder.transform(connection, input); input.dispose(); case INCOMPLETE: { final Buffer readyBuffer = result.getMessage(); final Buffer finishBuffer = encoder.finish(connection); final Buffer resultBuffer = Buffers.appendBuffers( connection.getMemoryManager(), readyBuffer, finishBuffer);
final ByteBufferArray byteBufferArray = buffer.toByteBufferArray(); final ByteBuffer[] buffers = byteBufferArray.getArray(); final int size = byteBufferArray.size(); deflater.setInput(buf, off + j, Math.min(stride, len - j)); while (!deflater.needsInput()) { final Buffer deflated = deflate(deflater, memoryManager); if (deflated != null) { resultBuffer = Buffers.appendBuffers( memoryManager, resultBuffer, deflated); byteBufferArray.recycle(); buffer.position(buffer.limit());
final MemoryManager memoryManager = obtainMemoryManager(storage); final GZipOutputState state = (GZipOutputState) obtainStateObject(storage); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, deflate(deflater, memoryManager)); state.isHeaderWritten = true; resultBuffer = Buffers.appendBuffers(memoryManager, getHeader(), resultBuffer); putUInt(trailer, (int) crc32.getValue()); putUInt(trailer, deflater.getTotalIn()); trailer.flip(); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, trailer);
/** * {@inheritDoc} */ @Override protected TransformationResult<Buffer, Buffer> transformImpl( AttributeStorage storage, Buffer input) throws TransformationException { final MemoryManager memoryManager = obtainMemoryManager(storage); final GZipOutputState state = (GZipOutputState) obtainStateObject(storage); if (!state.isInitialized) { state.initialize(); } Buffer encodedBuffer = null; if (input != null && input.hasRemaining()) { encodedBuffer = encodeBuffer(input, state, memoryManager); } if (encodedBuffer == null) { return TransformationResult.createIncompletedResult(null); } // Put GZIP header if needed if (!state.isHeaderWritten) { state.isHeaderWritten = true; encodedBuffer = Buffers.appendBuffers(memoryManager, getHeader(), encodedBuffer); } return TransformationResult.createCompletedResult(encodedBuffer, null); }
if (!(isLast || input.hasRemaining())) { encoder.transform(httpHeader, input); input.tryDispose(); Buffer encodedBuffer = result.getMessage(); if (isLast) { final Buffer finishBuffer = encoder.finish(httpHeader); encodedBuffer = Buffers.appendBuffers( connection.getMemoryManager(), encodedBuffer, finishBuffer);
final Buffer input = ctx.getMessage(); final TransformationResult<Buffer, Buffer> result = encoder.transform(connection, input); input.dispose(); case INCOMPLETE: { final Buffer readyBuffer = result.getMessage(); final Buffer finishBuffer = encoder.finish(connection); final Buffer resultBuffer = Buffers.appendBuffers( connection.getMemoryManager(), readyBuffer, finishBuffer);
import org.glassfish.jersey.jackson.JacksonFeature; import org.glassfish.jersey.message.GZipEncoder; import org.glassfish.jersey.server.ResourceConfig; public class JacksonRestConfiguration extends ResourceConfig { public JacksonRestConfiguration() { register( new GZipEncoder() ); register( JacksonFeature.class ); }
final ByteBufferArray byteBufferArray = buffer.toByteBufferArray(); final ByteBuffer[] buffers = byteBufferArray.getArray(); final int size = byteBufferArray.size(); deflater.setInput(buf, off + j, Math.min(stride, len - j)); while (!deflater.needsInput()) { final Buffer deflated = deflate(deflater, memoryManager); if (deflated != null) { resultBuffer = Buffers.appendBuffers( memoryManager, resultBuffer, deflated); byteBufferArray.recycle(); buffer.position(buffer.limit());
final MemoryManager memoryManager = obtainMemoryManager(storage); final GZipOutputState state = (GZipOutputState) obtainStateObject(storage); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, deflate(deflater, memoryManager)); state.isHeaderWritten = true; resultBuffer = Buffers.appendBuffers(memoryManager, getHeader(), resultBuffer); putUInt(trailer, (int) crc32.getValue()); putUInt(trailer, deflater.getTotalIn()); trailer.flip(); resultBuffer = Buffers.appendBuffers(memoryManager, resultBuffer, trailer);