@Override
  public void run() {
    try {
      final JDialog configDialog =
          TwsListener.getConfigDialog(); // blocks the thread until the config dialog is available

      GuiExecutor.instance()
          .execute(
              new Runnable() {
                @Override
                public void run() {
                  configure(
                      configDialog, mPortNumber, mApiEnable, mApiReadOnly, mApiBypassPrecautions);
                }
              });

    } catch (Exception e) {
      Utils.logError("" + e.getMessage());
    }
  }