docs: @Override
      public boolean isPushSupported() {
  
          // Find the existing H2 connection and stream so we can use them to send the
          // push_promise frame to the client.
          HttpInboundServiceContext isc = (HttpInboundServiceContext) getServiceContext();
          HttpInboundLink link = ((HttpInboundServiceContextImpl) isc).getLink();
  
          if (!(link instanceof H2HttpInboundLinkWrap)) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "HTTPRequestMessageImpl.isPushSupported(): Error: This is not an HTTP2 connection, push() was ignored.");
              }
              return false;
          }
  
          if ((((H2HttpInboundLinkWrap) link).muxLink == null) ||
              (((H2HttpInboundLinkWrap) link).muxLink.getRemoteConnectionSettings() == null)) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "HTTPRequestMessageImpl.isPushSupported(): The H2HttpInboundLinkWrap muxlink is null, push() was ignored.");
              }
              return false;
          }
  
          // If the link is closing, don't bother
          //if (((H2InboundLink) link).linkStatus == LINK_STATUS.CLOSING) {
          //    if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
          //        Tr.debug(tc, "HTTPRequestMessageImpl.pushNewRequest(): Link is closing, push() was ignored.");
          //    }
          //    return false;
          // }
  
          // Don't send the push_promise frame if the client doesn't want it
          if (((H2HttpInboundLinkWrap) link).muxLink.getRemoteConnectionSettings().getEnablePush() != 1) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "HTTPRequestMessageImpl.isPushSupported(): The client does not accept push_promise frames, push() was ignored.");
              }
              return false;
          }
  
          return true;
      }