previousData.writeBytes(grizzlyBuffer.toByteBuffer()); frame = previousData; } else { frame = ChannelBuffers.dynamicBuffer(size > bufferSize ? size : bufferSize); frame.writeBytes(previousData, previousData.readableBytes()); frame.writeBytes(grizzlyBuffer.toByteBuffer()); frame = ChannelBuffers.wrappedBuffer(grizzlyBuffer.toByteBuffer());
previousData.writeBytes(grizzlyBuffer.toByteBuffer()); frame = previousData; } else { frame = ChannelBuffers.dynamicBuffer(size > bufferSize ? size : bufferSize); frame.writeBytes(previousData, previousData.readableBytes()); frame.writeBytes(grizzlyBuffer.toByteBuffer()); frame = ChannelBuffers.wrappedBuffer(grizzlyBuffer.toByteBuffer());
@Override public ByteBuffer getResponseBodyAsByteBuffer() throws IOException { return responseBody.toByteBuffer(); }
/** * Converts {@link Buffer} to {@link ByteBuffer}. * * @param buffer buffer to be converted. * @return converted buffer. */ public static ByteBuffer convertBuffer(Buffer buffer) { return buffer.toByteBuffer(); } }
@Override public ByteBuffer getResponseBodyAsByteBuffer() throws IOException { return responseBody.toByteBuffer(); }
@Override public ByteBuffer getResponseBodyAsByteBuffer() throws IOException { return responseBody.toByteBuffer(); }
@Override public ByteBuffer getResponseBodyAsByteBuffer() throws IOException { return responseBody.toByteBuffer(); }
@Override public ByteBuffer getResponseBodyAsByteBuffer() throws IOException { return responseBody.toByteBuffer(); }
Buffer buffer = mm.allocate(PayloadGenerator.MAX_CHUNK_SIZE); buffer.allowBufferDispose(true); final long readBytes = bodyLocal.read(buffer.toByteBuffer()); if (readBytes > 0) { buffer.position((int) readBytes);
buffer.allowBufferDispose(true); final long readBytes = bodyLocal.read(buffer.toByteBuffer()); if (readBytes > 0) { buffer.position((int) readBytes);
private static void storeAvailableData(NIOInputStream in, FileChannel fileChannel) throws IOException { // Get the Buffer directly from NIOInputStream final Buffer buffer = in.readBuffer(); // Retrieve ByteBuffer final ByteBuffer byteBuffer = buffer.toByteBuffer(); try { while(byteBuffer.hasRemaining()) { // Write the ByteBuffer content to the file fileChannel.write(byteBuffer); } } finally { // we can try to dispose the buffer buffer.tryDispose(); } }
/** * Writes next block of compressed data to the output stream. */ protected Buffer deflate(Deflater deflater, MemoryManager memoryManager) { final Buffer buffer = memoryManager.allocate(bufferSize); final ByteBuffer byteBuffer = buffer.toByteBuffer(); final byte[] array = byteBuffer.array(); final int offset = byteBuffer.arrayOffset() + byteBuffer.position(); int len = deflater.deflate(array, offset, bufferSize); if (len <= 0) { buffer.dispose(); return null; } buffer.position(len); buffer.trim(); return buffer; }
/** * Writes next block of compressed data to the output stream. */ protected Buffer deflate(Deflater deflater, MemoryManager memoryManager) { final Buffer buffer = memoryManager.allocate(bufferSize); final ByteBuffer byteBuffer = buffer.toByteBuffer(); final byte[] array = byteBuffer.array(); final int offset = byteBuffer.arrayOffset() + byteBuffer.position(); int len = deflater.deflate(array, offset, bufferSize); if (len <= 0) { buffer.dispose(); return null; } buffer.position(len); buffer.trim(); return buffer; }
/** * Writes next block of compressed data to the output stream. */ protected Buffer deflate(Deflater deflater, MemoryManager memoryManager) { final Buffer buffer = memoryManager.allocate(bufferSize); final ByteBuffer byteBuffer = buffer.toByteBuffer(); final byte[] array = byteBuffer.array(); final int offset = byteBuffer.arrayOffset() + byteBuffer.position(); int len = deflater.deflate(array, offset, bufferSize); if (len <= 0) { buffer.dispose(); return null; } buffer.position(len); buffer.trim(); return buffer; }
/** * Writes next block of compressed data to the output stream. */ protected Buffer deflate(Deflater deflater, MemoryManager memoryManager) { final Buffer buffer = memoryManager.allocate(bufferSize); final ByteBuffer byteBuffer = buffer.toByteBuffer(); final byte[] array = byteBuffer.array(); final int offset = byteBuffer.arrayOffset() + byteBuffer.position(); int len = deflater.deflate(array, offset, bufferSize); if (len <= 0) { buffer.dispose(); return null; } buffer.position(len); buffer.trim(); return buffer; }
/** * Writes next block of compressed data to the output stream. */ protected Buffer deflate(Deflater deflater, MemoryManager memoryManager) { final Buffer buffer = memoryManager.allocate(bufferSize); final ByteBuffer byteBuffer = buffer.toByteBuffer(); final byte[] array = byteBuffer.array(); final int offset = byteBuffer.arrayOffset() + byteBuffer.position(); int len = deflater.deflate(array, offset, bufferSize); if (len <= 0) { buffer.dispose(); return null; } buffer.position(len); buffer.trim(); return buffer; }
@Override public NextAction handleRead(FilterChainContext ctx) throws IOException { Buffer b = ctx.getMessage(); ByteBuffer bb = b.toByteBuffer(); total.addAndGet(b.remaining()); out.getChannel().write(bb); if (total.get() == f.length()) { future.result(temp); } return ctx.getStopAction(); } });
/** * Read available file content data out of HTTP request and save the * chunk into local file output stream * * @throws IOException */ private void readAndSaveAvail() throws IOException { while (inputStream.isReady()) { final Buffer buffer = inputStream.readBuffer(); if (buffer.isComposite()) { writeCompositeBuffer(buffer); } else { writeBufferToDiskAndUpdateStats(buffer.toByteBuffer()); } } }
/** * Read available file content data out of HTTP request and save the * chunk into local file output stream * * @throws IOException */ private void readAndSaveAvail() throws IOException { while (inputStream.isReady()) { final Buffer buffer = inputStream.readBuffer(); if (buffer.isComposite()) { writeCompositeBuffer(buffer); } else { writeBufferToDiskAndUpdateStats(buffer.toByteBuffer()); } } }
@Test public void testBufferSlice() { Buffer b = mm.allocate(10); b.putInt(1); ByteBuffer bb = b.slice().toByteBuffer().slice(); bb.rewind(); bb.putInt(2); b.rewind(); assertEquals(1, b.getInt()); }