docs: @Override
      public void cleanUpState(VirtualConnection vc) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "cleanUpState");
          }
  
          // Remove the discriminator state from the state map.
          SSLDiscriminatorState discState = (SSLDiscriminatorState) vc.getStateMap().remove(SSL_DISCRIMINATOR_STATE);
          // PK13349 - close the discrimination engine
          closeEngine(discState.getEngine());
          WsByteBuffer decryptedNetBuffer = discState.getDecryptedNetBuffer();
          // Release the decrypted network buffer back to the pool. This shouldn't
          // ever be null, but check anyhow.
          if (decryptedNetBuffer != null) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) {
                  Tr.event(tc, "Releasing decryptedNetworkBuffer");
              }
              decryptedNetBuffer.release();
              decryptedNetBuffer = null;
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "cleanUpState");
          }
      }