code: @Override
      public void destroy(Exception e) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "destroy entry");
          }
  
          H2StreamProcessor stream;
          for (Integer i : streamTable.keySet()) {
              stream = streamTable.get(i);
              // notify streams waiting for a window update
              synchronized (stream) {
                  stream.notifyAll();
              }
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "destroying " + stream + ", " + stream.getId());
              }
              if (stream.getId() != 0) {
                  stream.getWrappedInboundLink().destroy(e);
              }
          }
  
          initialVC = null;
          frameReadProcessor = null;
          h2MuxReadCallback = null;
          h2MuxTCPConnectionContext = null;
          h2MuxTCPReadContext = null;
          h2MuxTCPWriteContext = null;
          localConnectionSettings = null;
          remoteConnectionSettings = null;
          readContextTable = null;
          writeContextTable = null;
  
          super.destroy(e);
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.http.channel.internal.inbound.HttpInboundLink#destroy(java.lang.Exception)