This commit is contained in:
Olesya Smirnova
2005-01-28 19:13:03 +03:00
parent 95ed897da7
commit 65d9f59439
4 changed files with 41 additions and 12 deletions

View File

@@ -32,7 +32,17 @@
package com.intellij.openapi.vcs.actions;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.vcs.FilePath;
import com.intellij.openapi.vfs.VirtualFile;
import java.io.File;
public interface VcsContextFactory {
VcsContext createOn(AnActionEvent event);
FilePath createOn(VirtualFile virtualFile);
FilePath createOn(File file);
FilePath createOn(VirtualFile parent, String name);
}

View File

@@ -143,10 +143,8 @@ public class CvsRootConfiguration
testConnection(getSettings().createConnection(new ReadWriteStatistics(), new ModalityContext(true)), getSettings());
}
public static void testConnection(final IConnection connection, CvsConnectionSettings settings)
public static void testConnection(final IConnection connection, final CvsConnectionSettings settings)
throws AuthenticationException, IOException {
final GetModulesListOperation operation =
new GetModulesListOperation(settings);
ErrorMessagesProcessor errorProcessor = new ErrorMessagesProcessor();
final CvsExecutionEnvironment cvsExecutionEnvironment = new CvsExecutionEnvironment(errorProcessor,
CvsExecutionEnvironment.DUMMY_STOPPER,
@@ -156,9 +154,12 @@ public class CvsRootConfiguration
final CvsResult result = new CvsResultEx();
try {
final CvsRootProvider cvsRootProvider = operation.getCvsRootProvider();
ApplicationManager.getApplication().runProcessWithProgressSynchronously(new Runnable() {
public void run() {
final GetModulesListOperation operation = new GetModulesListOperation(settings);
final CvsRootProvider cvsRootProvider = operation.getCvsRootProvider();
try {
if (connection instanceof SelfTestingConnection) {
((SelfTestingConnection)connection).test(CvsListenerWithProgress.createOnProgress());

View File

@@ -2,13 +2,12 @@ package com.intellij.cvsSupport2.cvsoperations.cvsMessages;
import com.intellij.cvsSupport2.errorHandling.CvsProcessException;
import com.intellij.cvsSupport2.errorHandling.ErrorRegistry;
import com.intellij.cvsSupport2.errorHandling.CvsProcessException;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.openapi.progress.ProgressManager;
import org.netbeans.lib.cvsclient.ICvsCommandStopper;
public class CvsListenerWithProgress extends CvsMessagesAdapter implements ICvsCommandStopper,ErrorRegistry {
private final ProgressIndicator myProgressIndicator;
private ProgressIndicator myProgressIndicator;
private String myLastError;
public CvsListenerWithProgress(ProgressIndicator progressIndicator) {
@@ -16,8 +15,7 @@ public class CvsListenerWithProgress extends CvsMessagesAdapter implements ICvsC
}
public static CvsListenerWithProgress createOnProgress() {
ProgressManager manager = ProgressManager.getInstance();
return new CvsListenerWithProgress(manager.getProgressIndicator());
return new CvsListenerWithProgress(ProgressManager.getInstance().getProgressIndicator());
}
public void addFileMessage(FileMessage message) {
@@ -27,13 +25,17 @@ public class CvsListenerWithProgress extends CvsMessagesAdapter implements ICvsC
}
public ProgressIndicator getProgressIndicator() {
if (myProgressIndicator == null) {
myProgressIndicator = ProgressManager.getInstance().getProgressIndicator();
}
return myProgressIndicator;
}
public boolean isAborted() {
if (myLastError != null) throw new CvsProcessException(myLastError);
if (myProgressIndicator == null) return false;
return myProgressIndicator.isCanceled();
final ProgressIndicator progressIndicator = getProgressIndicator();
if (progressIndicator == null) return false;
return progressIndicator.isCanceled();
}
public void registerError(String description) {

View File

@@ -2,6 +2,7 @@ package com.intellij.peer.impl;
import com.intellij.execution.runners.ProcessProxyFactory;
import com.intellij.execution.runners.ProcessProxyFactoryImpl;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.components.ApplicationComponent;
import com.intellij.openapi.diff.DiffRequestFactory;
import com.intellij.openapi.diff.impl.mergeTool.DiffRequestFactoryImpl;
@@ -10,12 +11,14 @@ import com.intellij.openapi.fileChooser.ex.FileSystemTreeFactoryImpl;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.DialogWrapperPeerFactory;
import com.intellij.openapi.ui.impl.DialogWrapperPeerFactoryImpl;
import com.intellij.openapi.vcs.FilePath;
import com.intellij.openapi.vcs.FilePathImpl;
import com.intellij.openapi.vcs.FileStatusFactory;
import com.intellij.openapi.vcs.actions.VcsContextFactory;
import com.intellij.openapi.vcs.actions.VcsContext;
import com.intellij.openapi.vcs.actions.VcsContextFactory;
import com.intellij.openapi.vcs.actions.VcsContextWrapper;
import com.intellij.openapi.vcs.impl.FileStatusFactoryImpl;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.packageDependencies.packageSet.PackageSetFactoryImpl;
import com.intellij.peer.PeerFactory;
import com.intellij.psi.*;
@@ -37,6 +40,7 @@ import javax.swing.*;
import javax.swing.table.TableCellRenderer;
import javax.swing.tree.TreeCellRenderer;
import java.awt.*;
import java.io.File;
public class PeerFactoryImpl extends PeerFactory implements ApplicationComponent {
private ProcessProxyFactory myProxyFactory = null;
@@ -191,6 +195,18 @@ public class PeerFactoryImpl extends PeerFactory implements ApplicationComponent
public VcsContext createOn(AnActionEvent event) {
return VcsContextWrapper.on(event);
}
public FilePath createOn(VirtualFile virtualFile) {
return new FilePathImpl(virtualFile);
}
public FilePath createOn(File file) {
return FilePathImpl.create(file);
}
public FilePath createOn(VirtualFile parent, String name) {
return new FilePathImpl(parent, name);
}
};
}
}