private static void forEach(List<PatchAction> actions,
                              @UpdaterUI.Title String title,
                              UpdaterUI ui,
                              ActionProcessor processor) throws OperationCancelledException, IOException {
    LOG.info(title + " [" + actions.size() + " actions]");
    ui.startProcess(title);
    ui.checkCancelled();

    for (int i = 0; i < actions.size(); i++) {
      PatchAction each = actions.get(i);
      ui.checkCancelled();
      processor.forEach(each);
      ui.setProgress((i + 1) * 100 / actions.size());
    }

    ui.checkCancelled();
  }
private static void forEach(List<PatchAction> actions,
                              @UpdaterUI.Title String title,
                              UpdaterUI ui,
                              ActionProcessor processor)