private ProtocolDecoder getDecoder(IoSession session) throws Exception { ProtocolDecoder decoder = (ProtocolDecoder) session .getAttribute(DECODER); if (decoder == null) { decoder = factory.getDecoder(); session.setAttribute(DECODER, decoder); } return decoder; }
private ProtocolEncoder getEncoder(IoSession session) throws Exception { ProtocolEncoder encoder = (ProtocolEncoder) session .getAttribute(ENCODER); if (encoder == null) { encoder = factory.getEncoder(); session.setAttribute(ENCODER, encoder); } return encoder; }
private ProtocolDecoder newDecoder() { final DemuxableProtocolCodecFactory stunCodecFactory = new StunDemuxableProtocolCodecFactory(); final DemuxableProtocolCodecFactory tcpFramingCodecFactory = new TcpFrameCodecFactory(); final ProtocolCodecFactory dataCodecFactory = new DemuxingProtocolCodecFactory(stunCodecFactory, tcpFramingCodecFactory); try { return dataCodecFactory.getDecoder(); } catch (final Exception e) { m_log.error("Could not create decoder", e); throw new RuntimeException("Could not create decoder!!", e); } }