From ee584cefbadcb0a76860bcf3c4906861eefb6cdc Mon Sep 17 00:00:00 2001 From: Konstantin Kolosovsky Date: Wed, 26 Feb 2014 20:09:06 +0400 Subject: [PATCH] svn: Refactored AutoSvnUpdater - utility method to run svn updates --- .../svn/checkin/SvnCheckinHandlerFactory.java | 13 +------------ .../idea/svn/update/AutoSvnUpdater.java | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/plugins/svn4idea/src/org/jetbrains/idea/svn/checkin/SvnCheckinHandlerFactory.java b/plugins/svn4idea/src/org/jetbrains/idea/svn/checkin/SvnCheckinHandlerFactory.java index 860f72f37ab8..8af993b9aefc 100644 --- a/plugins/svn4idea/src/org/jetbrains/idea/svn/checkin/SvnCheckinHandlerFactory.java +++ b/plugins/svn4idea/src/org/jetbrains/idea/svn/checkin/SvnCheckinHandlerFactory.java @@ -15,10 +15,6 @@ */ package org.jetbrains.idea.svn.checkin; -import com.intellij.ide.DataManager; -import com.intellij.openapi.actionSystem.ActionManager; -import com.intellij.openapi.actionSystem.ActionPlaces; -import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.project.Project; @@ -38,14 +34,12 @@ import com.intellij.openapi.vcs.ui.RefreshableOnComponent; import com.intellij.openapi.vcs.update.ActionInfo; import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.vfs.VirtualFile; -import com.intellij.openapi.wm.WindowManager; import com.intellij.util.PairConsumer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.idea.svn.*; import org.jetbrains.idea.svn.update.AutoSvnUpdater; -import javax.swing.*; import java.io.File; import java.util.ArrayList; import java.util.Collection; @@ -126,12 +120,7 @@ public class SvnCheckinHandlerFactory extends VcsCheckinHandlerFactory { ApplicationManager.getApplication().invokeLater(new Runnable() { @Override public void run() { - final JComponent frame = WindowManager.getInstance().getIdeFrame(project).getComponent(); - final AutoSvnUpdater updater = new AutoSvnUpdater(project, paths.toArray(new FilePath[paths.size()])); - updater.getTemplatePresentation().setText(ActionInfo.UPDATE.getActionName()); - updater.actionPerformed( - new AnActionEvent(null, DataManager.getInstance().getDataContext(frame), ActionPlaces.UNKNOWN, - updater.getTemplatePresentation(), ActionManager.getInstance(), 0)); + AutoSvnUpdater.run(new AutoSvnUpdater(project, paths.toArray(new FilePath[paths.size()])), ActionInfo.UPDATE.getActionName()); } }, ModalityState.NON_MODAL); } diff --git a/plugins/svn4idea/src/org/jetbrains/idea/svn/update/AutoSvnUpdater.java b/plugins/svn4idea/src/org/jetbrains/idea/svn/update/AutoSvnUpdater.java index cf424af4ef78..e349a39ca2f3 100644 --- a/plugins/svn4idea/src/org/jetbrains/idea/svn/update/AutoSvnUpdater.java +++ b/plugins/svn4idea/src/org/jetbrains/idea/svn/update/AutoSvnUpdater.java @@ -15,17 +15,24 @@ */ package org.jetbrains.idea.svn.update; +import com.intellij.ide.DataManager; +import com.intellij.openapi.actionSystem.ActionManager; +import com.intellij.openapi.actionSystem.ActionPlaces; +import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.project.Project; import com.intellij.openapi.vcs.AbstractVcs; import com.intellij.openapi.vcs.FilePath; import com.intellij.openapi.vcs.actions.VcsContext; import com.intellij.openapi.vcs.update.*; +import com.intellij.openapi.wm.WindowManager; +import org.jetbrains.annotations.NotNull; import org.jetbrains.idea.svn.SvnConfiguration; import org.jetbrains.idea.svn.SvnVcs; import org.tmatesoft.svn.core.SVNDepth; import org.tmatesoft.svn.core.wc.SVNRevision; +import javax.swing.*; import java.util.LinkedHashMap; /** @@ -44,6 +51,16 @@ public class AutoSvnUpdater extends AbstractCommonUpdateAction { myRoots = roots; } + public static void run(@NotNull AutoSvnUpdater updater, @NotNull String title) { + JComponent frame = WindowManager.getInstance().getIdeFrame(updater.myProject).getComponent(); + + updater.getTemplatePresentation().setText(title); + updater.actionPerformed( + new AnActionEvent(null, DataManager.getInstance().getDataContext(frame), ActionPlaces.UNKNOWN, updater.getTemplatePresentation(), + ActionManager.getInstance(), 0) + ); + } + @Override protected void actionPerformed(VcsContext context) { final SvnConfiguration configuration17 = SvnConfiguration.getInstance(myProject);