summaryrefslogtreecommitdiff
path: root/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java')
-rw-r--r--platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java23
1 files changed, 15 insertions, 8 deletions
diff --git a/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java b/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java
index d3a1e1cb0574..7b54f21503df 100644
--- a/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java
+++ b/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java
@@ -19,6 +19,7 @@ package com.intellij.execution.impl;
import com.intellij.ProjectTopics;
import com.intellij.execution.*;
import com.intellij.execution.configurations.*;
+import com.intellij.execution.runners.ExecutionEnvironment;
import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.components.NamedComponent;
@@ -106,7 +107,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
public final void initializeConfigurationTypes(@NotNull final ConfigurationType[] factories) {
Arrays.sort(factories, new Comparator<ConfigurationType>() {
@Override
- public int compare(final ConfigurationType o1, final ConfigurationType o2) {
+ public int compare(@NotNull final ConfigurationType o1, @NotNull final ConfigurationType o2) {
return o1.getDisplayName().compareTo(o2.getDisplayName());
}
});
@@ -461,7 +462,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
// IDEA-63663 Sort run configurations alphabetically if clean checkout
Collections.sort(order, new Comparator<Pair<String, RunnerAndConfigurationSettings>>() {
@Override
- public int compare(Pair<String, RunnerAndConfigurationSettings> o1, Pair<String, RunnerAndConfigurationSettings> o2) {
+ public int compare(@NotNull Pair<String, RunnerAndConfigurationSettings> o1, @NotNull Pair<String, RunnerAndConfigurationSettings> o2) {
boolean temporary1 = o1.getSecond().isTemporary();
boolean temporary2 = o2.getSecond().isTemporary();
if (temporary1 == temporary2) {
@@ -475,7 +476,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
else {
Collections.sort(order, new Comparator<Pair<String, RunnerAndConfigurationSettings>>() {
@Override
- public int compare(Pair<String, RunnerAndConfigurationSettings> o1, Pair<String, RunnerAndConfigurationSettings> o2) {
+ public int compare(@NotNull Pair<String, RunnerAndConfigurationSettings> o1, @NotNull Pair<String, RunnerAndConfigurationSettings> o2) {
int i1 = folderNames.indexOf(o1.getSecond().getFolderName());
int i2 = folderNames.indexOf(o2.getSecond().getFolderName());
if (i1 != i2) {
@@ -507,8 +508,12 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
return myConfigurations.values();
}
- public static boolean canRunConfiguration(@NotNull final RunnerAndConfigurationSettings configuration,
- @NotNull final Executor executor) {
+ public static boolean canRunConfiguration(@NotNull ExecutionEnvironment environment) {
+ RunnerAndConfigurationSettings runnerAndConfigurationSettings = environment.getRunnerAndConfigurationSettings();
+ return runnerAndConfigurationSettings != null && canRunConfiguration(runnerAndConfigurationSettings, environment.getExecutor());
+ }
+
+ public static boolean canRunConfiguration(@NotNull RunnerAndConfigurationSettings configuration, @NotNull Executor executor) {
try {
configuration.checkSettings(executor);
}
@@ -567,7 +572,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
if (myUnknownElements != null) {
for (Element unloadedElement : myUnknownElements) {
- parentNode.addContent((Element)unloadedElement.clone());
+ parentNode.addContent(unloadedElement.clone());
}
}
}
@@ -647,7 +652,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
final Comparator<Element> comparator = new Comparator<Element>() {
@Override
- public int compare(Element a, Element b) {
+ public int compare(@NotNull Element a, @NotNull Element b) {
final boolean aDefault = Boolean.valueOf(a.getAttributeValue("default", "false"));
final boolean bDefault = Boolean.valueOf(b.getAttributeValue("default", "false"));
return aDefault == bDefault ? 0 : aDefault ? -1 : 1;
@@ -666,7 +671,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
Collections.sort(sortedElements, comparator); // ensure templates are loaded first!
for (final Element element : sortedElements) {
- RunnerAndConfigurationSettings configurationSettings = null;
+ RunnerAndConfigurationSettings configurationSettings;
try {
configurationSettings = loadConfiguration(element, false);
}
@@ -915,6 +920,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
public List<RunnerAndConfigurationSettings> getTempConfigurationsList() {
List<RunnerAndConfigurationSettings> configurations =
ContainerUtil.filter(myConfigurations.values(), new Condition<RunnerAndConfigurationSettings>() {
+ @Override
public boolean value(RunnerAndConfigurationSettings settings) {
return settings.isTemporary();
}
@@ -933,6 +939,7 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable,
return result;
}
+ @Override
public void makeStable(@NotNull RunnerAndConfigurationSettings settings) {
settings.setTemporary(false);
myRecentlyUsedTemporaries.remove(settings.getConfiguration());