@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
private ByteBuf getByteBufferAtIndex(final int index) { if (bufferList.size() < index + 1) { bufferList.add(bufferProvider.getBuffer(index >= (MAX_SHIFT - INITIAL_SHIFT) ? MAX_BUFFER_SIZE : Math.min(INITIAL_BUFFER_SIZE << index, MAX_BUFFER_SIZE))); } return bufferList.get(index); }
@Override public ByteBuf allocate(final int size) { return getBufferProvider().getBuffer(size); }
@Override public void readAsync(final int numBytes, final AsyncCompletionHandler<ByteBuf> handler) { ByteBuf buffer = bufferProvider.getBuffer(numBytes); channel.read(buffer.asNIO(), settings.getReadTimeout(MILLISECONDS), MILLISECONDS, null, new BasicCompletionHandler(buffer, handler)); }
@Override public ByteBuf read(final int numBytes) throws IOException { ByteBuf buffer = bufferProvider.getBuffer(numBytes); int totalBytesRead = 0; byte[] bytes = buffer.array(); while (totalBytesRead < buffer.limit()) { int bytesRead = inputStream.read(bytes, totalBytesRead, buffer.limit() - totalBytesRead); if (bytesRead == -1) { buffer.release(); throw new MongoSocketReadException("Prematurely reached end of stream", getAddress()); } totalBytesRead += bytesRead; } return buffer; }
@Override public ByteBuf read(final int numBytes) throws IOException { ByteBuf buffer = bufferProvider.getBuffer(numBytes); isTrue("open", !isClosed()); int totalBytesRead = 0; while (totalBytesRead < buffer.limit()) { int bytesRead = socketChannel.read(buffer.asNIO()); if (bytesRead == -1) { buffer.release(); throw new MongoSocketReadException("Prematurely reached end of stream", getAddress()); } totalBytesRead += bytesRead; } return buffer.flip(); }
@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
@Override public ByteBuf getBuffer(final int size) { return bufferProvider.getBuffer(size); }
private ByteBuf getByteBufferAtIndex(final int index) { if (bufferList.size() < index + 1) { bufferList.add(bufferProvider.getBuffer(index >= (MAX_SHIFT - INITIAL_SHIFT) ? MAX_BUFFER_SIZE : Math.min(INITIAL_BUFFER_SIZE << index, MAX_BUFFER_SIZE))); } return bufferList.get(index); }
@Override public ByteBuf allocate(final int size) { return getBufferProvider().getBuffer(size); }
@Override public void readAsync(final int numBytes, final AsyncCompletionHandler<ByteBuf> handler) { ByteBuf buffer = bufferProvider.getBuffer(numBytes); channel.read(buffer.asNIO(), settings.getReadTimeout(MILLISECONDS), MILLISECONDS, null, new BasicCompletionHandler(buffer, handler)); }
@Override public ByteBuf read(final int numBytes) throws IOException { ByteBuf buffer = bufferProvider.getBuffer(numBytes); int totalBytesRead = 0; byte[] bytes = buffer.array(); while (totalBytesRead < buffer.limit()) { int bytesRead = inputStream.read(bytes, totalBytesRead, buffer.limit() - totalBytesRead); if (bytesRead == -1) { buffer.release(); throw new MongoSocketReadException("Prematurely reached end of stream", getAddress()); } totalBytesRead += bytesRead; } return buffer; }
@Override public ByteBuf read(final int numBytes) throws IOException { ByteBuf buffer = bufferProvider.getBuffer(numBytes); isTrue("open", !isClosed()); int totalBytesRead = 0; while (totalBytesRead < buffer.limit()) { int bytesRead = socketChannel.read(buffer.asNIO()); if (bytesRead == -1) { buffer.release(); throw new MongoSocketReadException("Prematurely reached end of stream", getAddress()); } totalBytesRead += bytesRead; } return buffer.flip(); }