@Override public AsyncIOWriter write(AtmosphereResponse response, byte[] data, int offset, int length) throws IOException { if (doneProcessing.get()) { throw Utils.ioExceptionForChannel(channel, response.uuid()); } boolean transform = filters.size() > 0 && response.getStatus() < 400; if (transform) { data = transform(response, data, offset, length); offset = 0; length = data.length; } logger.trace("About to write to {}", channel); if (channel.isOpen()) { asyncWrite(response, data, offset, length); } else { logger.trace("Trying to write on a closed channel {}", channel); throw new IOException("Channel closed"); } return this; }
@Override public AsyncIOWriter write(AtmosphereResponse response, byte[] data, int offset, int length) throws IOException { if (doneProcessing.get()) { throw Utils.ioExceptionForChannel(channel, response.uuid()); } boolean transform = filters.size() > 0 && response.getStatus() < 400; if (transform) { data = transform(response, data, offset, length); offset = 0; length = data.length; } logger.trace("About to write to {}", channel); if (channel.isOpen()) { asyncWrite(response, data, offset, length); } else { logger.trace("Trying to write on a closed channel {}", channel); throw new IOException("Channel closed"); } return this; }