@Override public void sessionClosed(NextFilter nextFilter, IoSession session) throws Exception { // Call finishDecode() first when a connection is closed. ProtocolDecoder decoder = getDecoder(session); ProtocolDecoderOutput decoderOut = getDecoderOut(session, nextFilter); try { decoder.finishDecode(session, decoderOut); } catch (Throwable t) { ProtocolDecoderException pde; if (t instanceof ProtocolDecoderException) { pde = (ProtocolDecoderException) t; } else { pde = new ProtocolDecoderException(t); } throw pde; } finally { // Dispose all. disposeEncoder(session); disposeDecoder(session); disposeDecoderOut(session); decoderOut.flush(); } nextFilter.sessionClosed(session); }
protected void processEvent(NextFilter nextFilter, IoSession session, EventType type, Object data) { if (type == EventType.RECEIVED) { nextFilter.messageReceived(session, data); } else if (type == EventType.SENT) { nextFilter.messageSent(session, data); } else if (type == EventType.EXCEPTION) { nextFilter.exceptionCaught(session, (Throwable) data); } else if (type == EventType.IDLE) { nextFilter.sessionIdle(session, (IdleStatus) data); } else if (type == EventType.OPENED) { nextFilter.sessionOpened(session); } else if (type == EventType.CLOSED) { nextFilter.sessionClosed(session); } }
public void sessionClosed(NextFilter nextFilter, IoSession session) { nextFilter.sessionClosed(session); }
public void sessionClosed(NextFilter nextFilter, IoSession session) throws Exception { nextFilter.sessionClosed(session); }
public void sessionClosed(NextFilter nextFilter, IoSession session) { SessionLog.info(session, "CLOSED"); nextFilter.sessionClosed(session); }
@Override public void sessionClosed(NextFilter nextFilter, IoSession session) throws Exception { if (!isBlocked(session)) { // forward if not blocked nextFilter.sessionClosed(session); } else { blockSession(session); } }