@Override public void onWritePossible() { _wh.done(); }
@Override public void write(ByteString data) { wh.write(data); }
@Override public int remaining() { return wh.remaining(); } });
@Override public void error(Throwable throwable) { wh.error(throwable); }
@Override public void done() { wh.done(); }
@Override public void onWritePossible() { _wh.error(new RestLiResponseDataException("Failed to read data")); }
@Override public void onWritePossible() { while (_writeHandle.remaining() > 0) { if (_offset < _bytes.length) { int length = Math.min(_chunkSize, _bytes.length - _offset); ByteString chunk = ByteString.copy(_bytes, _offset, length); _offset += length; _writeHandle.write(chunk); } else { _writeHandle.done(); } } }
@Override public void onInit(WriteHandle<? super ByteString> wh) { _writeHandle = wh; try { _generator = _jsonFactory.createGenerator(_out); if (_typeStack.peek() == MAP) { _generator.writeStartObject(); } else { _generator.writeStartArray(); } } catch (IOException e) { _writeHandle.error(e); } }