mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
svn: Refactored AutoSvnUpdater - utility method to run svn updates
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user