extend ChannelDuplexHandler