if (packagesToImport.isEmpty()) {
return;
}
ToolWindowManager manager = ToolWindowManager.getInstance(project);
ToolWindow window = manager.getToolWindow(GoCommonConsoleView.ID);
if (GoCommonConsoleView.consoleView == null) {
GoCommonConsoleView.consoleView = TextConsoleBuilderFactory.getInstance().createBuilder(project).getConsole();
}
ConsoleView consoleView = GoCommonConsoleView.consoleView;
Sdk sdk = GoSdkUtil.getProjectSdk(project);
if (sdk == null) {
return;
}
if (window == null) {
window = manager.registerToolWindow(GoCommonConsoleView.ID, false, ToolWindowAnchor.BOTTOM);
ContentFactory contentFactory = ContentFactory.SERVICE.getInstance();
Content content = contentFactory.createContent(consoleView.getComponent(), "", false);
window.getContentManager().addContent(content);
window.setIcon(GoSdkUtil.getProjectIcon(sdk));
window.setToHideOnEmptyContent(true);
}
window.setTitle(TITLE);
String goExecName = GoSdkUtil.getGoExecName(sdk);
if (goExecName == null) {
return;
}
final String command = String.format(
"%s get -v %s",
goExecName,
packagesToImport
);
consoleView.print(String.format("%s%n", command), ConsoleViewContentType.NORMAL_OUTPUT);
window.show(EmptyRunnable.getInstance());
final String finalPackagesToImport = packagesToImport.replace(" ", ", ");
window.activate(new Runnable() {
@Override
public void run() {
runGoGet(project, command, finalPackagesToImport, projectDir);
}
});