show shortened classpath preview (IDEA-165946)

This commit is contained in:
Anna.Kozlova
2017-10-05 17:58:08 +02:00
parent 632fd799c7
commit 33ac210e7b
4 changed files with 56 additions and 9 deletions
@@ -19,6 +19,7 @@ import com.intellij.ExtensionPoints;
import com.intellij.debugger.impl.GenericDebuggerRunnerSettings;
import com.intellij.diagnostic.logging.OutputFileUtil;
import com.intellij.execution.configurations.*;
import com.intellij.execution.filters.ArgumentFileFilter;
import com.intellij.execution.impl.ConsoleBuffer;
import com.intellij.execution.process.OSProcessHandler;
import com.intellij.execution.process.ProcessAdapter;
@@ -66,10 +67,7 @@ import org.jetbrains.jps.model.serialization.PathMacroUtil;
import java.io.*;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.*;
public abstract class JavaTestFrameworkRunnableState<T extends
ModuleBasedConfiguration<JavaRunConfigurationModule>
@@ -82,6 +80,7 @@ public abstract class JavaTestFrameworkRunnableState<T extends
protected File myWorkingDirsFile = null;
private RemoteConnectionCreator remoteConnectionCreator;
private final List<ArgumentFileFilter> myArgumentFileFilters = new ArrayList<>();
public void setRemoteConnectionCreator(RemoteConnectionCreator remoteConnectionCreator) {
this.remoteConnectionCreator = remoteConnectionCreator;
@@ -128,6 +127,16 @@ public abstract class JavaTestFrameworkRunnableState<T extends
return false;
}
@Override
protected GeneralCommandLine createCommandLine() throws ExecutionException {
GeneralCommandLine commandLine = super.createCommandLine();
Map<String, String> content = commandLine.getUserData(JdkUtil.COMMAND_LINE_CONTENT);
if (content != null) {
content.forEach((key, value) -> myArgumentFileFilters.add(new ArgumentFileFilter(key, value)));
}
return commandLine;
}
@NotNull
@Override
public ExecutionResult execute(@NotNull Executor executor, @NotNull ProgramRunner runner) throws ExecutionException {
@@ -143,6 +152,10 @@ public abstract class JavaTestFrameworkRunnableState<T extends
final OSProcessHandler handler = createHandler(executor);
for (ArgumentFileFilter filter : myArgumentFileFilters) {
consoleView.addMessageFilter(filter);
}
consoleView.attachToProcess(handler);
final AbstractTestProxy root = viewer.getRoot();
if (root instanceof TestProxyRoot) {
@@ -21,6 +21,7 @@ import com.intellij.diagnostic.logging.LogConfigurationPanel;
import com.intellij.execution.*;
import com.intellij.execution.configuration.EnvironmentVariablesComponent;
import com.intellij.execution.configurations.*;
import com.intellij.execution.filters.ArgumentFileFilter;
import com.intellij.execution.filters.TextConsoleBuilderFactory;
import com.intellij.execution.junit.RefactoringListeners;
import com.intellij.execution.process.KillableProcessHandler;
@@ -34,6 +35,7 @@ import com.intellij.openapi.options.SettingsEditorGroup;
import com.intellij.openapi.project.DumbService;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.projectRoots.JavaSdkVersion;
import com.intellij.openapi.projectRoots.JdkUtil;
import com.intellij.openapi.projectRoots.ex.JavaSdkUtil;
import com.intellij.openapi.util.DefaultJDOMExternalizer;
import com.intellij.psi.PsiClass;
@@ -307,6 +309,16 @@ public class ApplicationConfiguration extends ModuleBasedConfiguration<JavaRunCo
return params;
}
@Override
protected GeneralCommandLine createCommandLine() throws ExecutionException {
GeneralCommandLine line = super.createCommandLine();
Map<String, String> content = line.getUserData(JdkUtil.COMMAND_LINE_CONTENT);
if (content != null) {
content.forEach((key, value) -> addConsoleFilters(new ArgumentFileFilter(key, value)));
}
return line;
}
@NotNull
@Override
protected OSProcessHandler startProcess() throws ExecutionException {