code: @Override
      public void destroy() throws Exception {
          if (baseGateway != null) {
              baseGateway.destroy();
          }
  
          if (watchDog != null) {
              watchDog.stop();
              watchDog = null;
          }
  
          if (gateway != null) {
              gateway.destroy();
              gateway = null;
          }
      }
docs: Stop an in-process Gateway that was started using {@link #launch()}.
  
  @throws Exception