code: @SuppressWarnings("unchecked")
      public <T> T readOutbound() {
          T message =  (T) poll(outboundMessages);
          if (message != null) {
              ReferenceCountUtil.touch(message, "Caller of readOutbound() will handle the message from this point.");
          }
          return message;
      }
docs: Read data from the outbound. This may return {@code null} if nothing is readable.