void _close(AtmosphereResponse response) throws UnsupportedEncodingException { if (!doneProcessing.getAndSet(true) && channel.isOpen()) { ByteBuf writeBuffer = writeHeaders(response); if (writeBuffer.capacity() != 0) { writeBuffer = Unpooled.wrappedBuffer(writeBuffer, END); } else { writeBuffer = Unpooled.buffer(ENDCHUNK.length).writeBytes(ENDCHUNK); } channel.writeAndFlush(writeBuffer).addListener(new ChannelFutureListener() { @Override public void operationComplete(ChannelFuture future) throws Exception { logger.trace("Async Closing Done {}", channel); if (!keepAlive) { channel.close().awaitUninterruptibly(); } } }); } }
void _close(AtmosphereResponse response) throws UnsupportedEncodingException { if (!doneProcessing.getAndSet(true) && channel.isOpen()) { ByteBuf writeBuffer = writeHeaders(response); if (writeBuffer.capacity() != 0) { writeBuffer = Unpooled.wrappedBuffer(writeBuffer, END); } else { writeBuffer = Unpooled.buffer(ENDCHUNK.length).writeBytes(ENDCHUNK); } channel.writeAndFlush(writeBuffer).addListener(new ChannelFutureListener() { @Override public void operationComplete(ChannelFuture future) throws Exception { logger.trace("Async Closing Done {}", channel); if (!keepAlive) { channel.close().awaitUninterruptibly(); } } }); } }
ByteBuf writeBuffer = writeHeaders(response); if (headerWritten.get()) { if (writeBuffer.capacity() != 0) {
ByteBuf writeBuffer = writeHeaders(response); if (headerWritten.get()) { if (writeBuffer.capacity() != 0) {