@Override public void transferFrom(FileChannel source, IoCallback callback) { if (inCall) { queue(source, callback); return; } performTransfer(source, callback); invokeOnComplete(callback); }
@Override public void handleEvent(final StreamSinkChannel channel) { if(callback != null) { callback.onComplete(exchange, AsyncSenderImpl.this); } } }, new ChannelExceptionHandler<StreamSinkChannel>() {
@Override public void transferFrom(FileChannel channel, IoCallback callback) { // Transfer never caches delegate.transferFrom(channel, callback); }
@Override public void close(final IoCallback callback) { try { outputStream.close(); invokeOnComplete(callback); } catch (IOException e) { callback.onException(exchange, this, e); } }
public InputStream getInputStream() { if (inputStream == null) { inputStream = new UndertowInputStream(exchange); } return inputStream; }
public UndertowOutputStream getOutputStream() { if (outputStream == null) { outputStream = new UndertowOutputStream(exchange); } return outputStream; }
@Override public void send(final ByteBuffer[] buffer) { send(buffer, IoCallback.END_EXCHANGE); }
/** * {@inheritDoc} */ public void write(final byte[] b) throws IOException { write(b, 0, b.length); }
@Override public void run() { run(true); } }
@Override public int read() throws IOException { byte[] b = new byte[1]; int read = read(b); if (read == -1) { return -1; } return b[0] & 0xff; }
@Override public void close() { close(null); }
@Override public void send(final ByteBuffer buffer) { send(buffer, IoCallback.END_EXCHANGE); }
@Override public void receivePartialString(PartialStringCallback callback, Charset charset) { receivePartialString(callback, END_EXCHANGE, charset); }
@Override public void receivePartialString(PartialStringCallback callback) { receivePartialString(callback, END_EXCHANGE, StandardCharsets.ISO_8859_1); }
@Override public void receivePartialBytes(PartialBytesCallback callback) { receivePartialBytes(callback, END_EXCHANGE); }
@Override public void receiveFullString(FullStringCallback callback, Charset charset) { receiveFullString(callback, END_EXCHANGE, charset); }
@Override public void send(final String data, final IoCallback callback) { send(data, StandardCharsets.UTF_8, callback); }
/** * {@inheritDoc} */ public void write(final int b) throws IOException { write(new byte[]{(byte) b}, 0, 1); }
@Override public void send(final String data) { send(data, IoCallback.END_EXCHANGE); }