private static void setupArguments(
    @NotNull LongRunningOperation operation,
    @NotNull List<String> tasksAndArguments,
    @NotNull GradleExecutionSettings settings
  ) {
    var commandLine = GradleCommandLineUtil.parseCommandLine(
      tasksAndArguments,
      settings.getArguments()
    );
    commandLine = fixUpGradleCommandLine(commandLine);

    LOG.info("Passing command-line to Gradle Tooling API: " +
             StringUtil.join(obfuscatePasswordParameters(commandLine.getTokens()), " "));

    if (operation instanceof TestLauncher testLauncher) {
      setupTestLauncherArguments(testLauncher, commandLine);
    }
    else if (operation instanceof BuildLauncher buildLauncher) {
      setupBuildLauncherArguments(buildLauncher, commandLine, settings);
    }
    else {
      operation.withArguments(commandLine.getTokens());
    }
  }
private static void setupArguments(
    @NotNull LongRunningOperation operation,
    @NotNull List<String> tasksAndArguments,
    @NotNull GradleExecutionSettings settings
  )