code: @Override
      public void userEventTriggered(ChannelHandlerContext ctx, Object evt) {
          if (evt instanceof HttpServerUpgradeHandler.UpgradeEvent) {
              FullHttpRequest upgradedRequest = ((HttpServerUpgradeHandler.UpgradeEvent) evt).upgradeRequest();
  
              // Construct new HTTP Request
              HttpRequest httpRequest = new DefaultHttpRequest(
                      new HttpVersion(Constants.HTTP_VERSION_2_0, true), upgradedRequest.method(),
                      upgradedRequest.uri(), upgradedRequest.headers());
  
              HttpCarbonRequest requestCarbonMessage = setupCarbonRequest(httpRequest, this);
              requestCarbonMessage.addHttpContent(new DefaultLastHttpContent(upgradedRequest.content()));
              notifyRequestListener(this, requestCarbonMessage, 1);
          }
      }
docs: Handles the cleartext HTTP upgrade event.
  <p>
  If an upgrade occurred, message needs to be dispatched to
  the correct service/resource and response should be delivered over stream 1
  (the stream specifically reserved for cleartext HTTP upgrade).