mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
run configuration editor: unify catch clauses
preparing for IDEA-194201
This commit is contained in:
+20
-16
@@ -192,23 +192,8 @@ public final class SingleConfigurationConfigurable<Config extends RunConfigurati
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (RuntimeConfigurationException exception) {
|
||||
final Runnable quickFix = exception.getQuickFix();
|
||||
Runnable resultQuickFix;
|
||||
if (quickFix != null && snapshot != null) {
|
||||
final RunnerAndConfigurationSettings fixedSettings = snapshot;
|
||||
resultQuickFix = () -> {
|
||||
quickFix.run();
|
||||
getEditor().resetFrom(fixedSettings);
|
||||
};
|
||||
}
|
||||
else {
|
||||
resultQuickFix = quickFix;
|
||||
}
|
||||
myLastValidationResult = new ValidationResult(exception.getLocalizedMessage(), exception.getTitle(), resultQuickFix);
|
||||
}
|
||||
catch (ConfigurationException e) {
|
||||
myLastValidationResult = new ValidationResult(e.getLocalizedMessage(), ExecutionBundle.message("invalid.data.dialog.title"), null);
|
||||
myLastValidationResult = createValidationResult(snapshot, e);
|
||||
}
|
||||
|
||||
myValidationResultValid = true;
|
||||
@@ -216,6 +201,25 @@ public final class SingleConfigurationConfigurable<Config extends RunConfigurati
|
||||
return myLastValidationResult;
|
||||
}
|
||||
|
||||
private ValidationResult createValidationResult(RunnerAndConfigurationSettings snapshot, ConfigurationException e) {
|
||||
return new ValidationResult(
|
||||
e.getLocalizedMessage(),
|
||||
e instanceof RuntimeConfigurationException ? e.getTitle() : ExecutionBundle.message("invalid.data.dialog.title"),
|
||||
getQuickFix(snapshot, e));
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private Runnable getQuickFix(RunnerAndConfigurationSettings snapshot, ConfigurationException exception) {
|
||||
Runnable quickFix = exception.getQuickFix();
|
||||
if (quickFix != null && snapshot != null) {
|
||||
return () -> {
|
||||
quickFix.run();
|
||||
getEditor().resetFrom(snapshot);
|
||||
};
|
||||
}
|
||||
return quickFix;
|
||||
}
|
||||
|
||||
private static void checkConfiguration(final ProgramRunner runner, final RunnerAndConfigurationSettings snapshot)
|
||||
throws RuntimeConfigurationException {
|
||||
final RunnerSettings runnerSettings = snapshot.getRunnerSettings(runner);
|
||||
|
||||
Reference in New Issue
Block a user