public void close() {
session.onClose();
sessionState.onClose();
final Channel channel = sessionState.getSendingContext(session).channel();
if (isWritable(channel)) {
final CloseFrame closeFrame = new CloseFrame(3000, "Go away!");
if (logger.isDebugEnabled()) {
logger.debug("Writing {}", closeFrame);
}
channel.writeAndFlush(closeFrame).addListener(ChannelFutureListener.CLOSE);
}