Restored 3 secs sleep for jython as it can't connect sometimes otherwise.

This commit is contained in:
Dmitry Trofimov
2011-02-18 21:11:30 +03:00
parent 3d8ee5cbf9
commit 030a9614c7
2 changed files with 16 additions and 3 deletions
@@ -44,7 +44,7 @@ public class PydevXmlRpcClient implements IPydevXmlRpcClient {
*/
private static final Logger LOG = Logger.getInstance(PydevXmlRpcClient.class.getName());
private static final long TIME_LIMIT = 5000;
private static final long TIME_LIMIT = 30000;
/**
@@ -24,6 +24,8 @@ import com.jetbrains.django.run.Runner;
import com.jetbrains.python.PythonHelpersLocator;
import com.jetbrains.python.console.pydev.ConsoleCommunication;
import com.jetbrains.python.console.pydev.PydevConsoleCommunication;
import com.jetbrains.python.sdk.JythonSdkFlavor;
import com.jetbrains.python.sdk.PythonSdkFlavor;
import org.apache.xmlrpc.XmlRpcException;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -37,6 +39,7 @@ import java.util.Map;
* @author oleg
*/
public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory {
private Sdk mySdk;
private final int[] myPorts;
private PydevConsoleCommunication myPydevConsoleCommunication;
private PyConsoleProcessHandler myProcessHandler;
@@ -48,11 +51,12 @@ public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory {
private static final long APPROPRIATE_TO_WAIT = 10000;
protected PydevConsoleRunner(@NotNull final Project project,
@NotNull final String consoleTitle,
@NotNull Sdk sdk, @NotNull final String consoleTitle,
@NotNull final CommandLineArgumentsProvider commandLineArgumentsProvider,
@Nullable final String workingDir,
int[] ports) {
super(project, consoleTitle, commandLineArgumentsProvider, workingDir);
mySdk = sdk;
myPorts = ports;
}
@@ -95,7 +99,7 @@ public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory {
}
};
final PydevConsoleRunner consoleRunner = new PydevConsoleRunner(project, consoleTitle, provider, projectRoot, ports);
final PydevConsoleRunner consoleRunner = new PydevConsoleRunner(project, sdk, consoleTitle, provider, projectRoot, ports);
try {
consoleRunner.initAndRun(statements2execute);
}
@@ -136,6 +140,15 @@ public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory {
final LanguageConsoleImpl console = getConsoleView().getConsole();
//TODO: it is a dirty hack, implement proper handshake for processes
if (PythonSdkFlavor.getFlavor(mySdk.getHomePath()) instanceof JythonSdkFlavor) {
try {
Thread.sleep(3000);
}
catch (InterruptedException e) {
}
}
if (handshake()) {
// Make executed statements visible to developers
PyConsoleHighlightingUtil.processOutput(console, PYTHON_ENV_COMMAND, ProcessOutputTypes.SYSTEM);