@Override
 public void fireInboundBufferSuspended() {
   head.fireInboundBufferSuspended();
   if (channel.config().isAutoRead()) {
     read();
   }
 }
  @Override
  public void fireChannelActive() {
    firedChannelActive = true;
    head.fireChannelActive();

    if (channel.config().isAutoRead()) {
      channel.read();
    }

    if (fireInboundBufferUpdatedOnActivation) {
      fireInboundBufferUpdatedOnActivation = false;
      head.fireInboundBufferUpdated();
    }
  }