@Override public void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws Exception { if (!compressInbound || !(message instanceof IoBuffer)) { nextFilter.messageReceived(session, message); return; } Zlib inflater = (Zlib) session.getAttribute(INFLATER); if (inflater == null) { throw new IllegalStateException(); } IoBuffer inBuffer = (IoBuffer) message; IoBuffer outBuffer = inflater.inflate(inBuffer); nextFilter.messageReceived(session, outBuffer); }