private void actualUpdate(@NotNull UpdatingChangeListBuilder builder,
                            @NotNull VcsModifiableDirtyScope scope,
                            @NotNull DataHolder dataHolder,
                            @NotNull ChangeListManagerGate gate,
                            @NotNull ProgressIndicator indicator) {
    dataHolder.notifyStartProcessingChanges(scope);
    try {
      AbstractVcs vcs = scope.getVcs();
      ChangeProvider changeProvider = vcs.getChangeProvider();
      if (changeProvider != null) {
        StructuredIdeActivity activity = VcsStatisticsCollector.logClmRefresh(myProject, vcs, scope.wasEveryThingDirty());
        changeProvider.getChanges(scope, builder, indicator, gate);
        activity.finished();
      }
    }
    catch (VcsException e) {
      handleUpdateException(e);
    }
    catch (ProcessCanceledException e) {
      throw e;
    }
    catch (Throwable t) {
      LOG.debug(t);
      ExceptionUtil.rethrow(t);
    }
    finally {
      if (!myUpdater.isStopped()) {
        dataHolder.notifyDoneProcessingChanges(scope);
      }
    }
  }
private void actualUpdate(@NotNull UpdatingChangeListBuilder builder,
                            @NotNull VcsModifiableDirtyScope scope,
                            @NotNull DataHolder dataHolder,
                            @NotNull ChangeListManagerGate gate,
                            @NotNull ProgressIndicator indicator)