private <R> R suspendScanningAndIndexingThenRun(@NotNull Supplier<R> computable) {
    if (!Registry.is("external.system.pause.indexing.during.sync")) {
      return computable.get();
    }

    Ref<R> result = new Ref<>();

    String title = ExternalSystemBundle.message("progress.refresh.text", myProjectName, getExternalSystemId().getReadableName());
    UnindexedFilesScannerExecutor.getInstance(getIdeProject()).suspendScanningAndIndexingThenRun(title, () -> {
      result.set(computable.get());
    });

    return result.get();
  }
private <R> R suspendScanningAndIndexingThenRun(@NotNull Supplier<R> computable)