mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEADEV-41380: Artifacts: results of manual editing of "Build artifacts" setting of deployment configuration are not saved
This commit is contained in:
+5
-3
@@ -53,12 +53,12 @@ import java.util.Set;
|
||||
/**
|
||||
* @author nik
|
||||
*/
|
||||
public class BuildArtifactsBeforeRun implements BeforeRunTaskProvider<BuildArtifactsBeforeRunTask> {
|
||||
public class BuildArtifactsBeforeRunTaskProvider extends BeforeRunTaskProvider<BuildArtifactsBeforeRunTask> {
|
||||
@NonNls public static final String BUILD_ARTIFACTS_ID = "BuildArtifacts";
|
||||
public static final Key<BuildArtifactsBeforeRunTask> ID = Key.create(BUILD_ARTIFACTS_ID);
|
||||
private Project myProject;
|
||||
|
||||
public BuildArtifactsBeforeRun(Project project) {
|
||||
public BuildArtifactsBeforeRunTaskProvider(Project project) {
|
||||
myProject = project;
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ public class BuildArtifactsBeforeRun implements BeforeRunTaskProvider<BuildArtif
|
||||
return new BuildArtifactsBeforeRunTask(myProject);
|
||||
}
|
||||
|
||||
public void configureTask(RunConfiguration runConfiguration, BuildArtifactsBeforeRunTask task) {
|
||||
public boolean configureTask(RunConfiguration runConfiguration, BuildArtifactsBeforeRunTask task) {
|
||||
final Artifact[] artifacts = ArtifactManager.getInstance(myProject).getArtifacts();
|
||||
Set<ArtifactPointer> pointers = new THashSet<ArtifactPointer>();
|
||||
for (Artifact artifact : artifacts) {
|
||||
@@ -103,7 +103,9 @@ public class BuildArtifactsBeforeRun implements BeforeRunTaskProvider<BuildArtif
|
||||
builder.setPreferedFocusComponent(chooser);
|
||||
if (builder.show() == DialogWrapper.OK_EXIT_CODE) {
|
||||
task.setArtifactPointers(chooser.getMarkedElements());
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean executeTask(DataContext context, RunConfiguration configuration, final BuildArtifactsBeforeRunTask task) {
|
||||
@@ -39,7 +39,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* @author spleaner
|
||||
*/
|
||||
public class CompileStepBeforeRun implements BeforeRunTaskProvider<CompileStepBeforeRun.MakeBeforeRunTask> {
|
||||
public class CompileStepBeforeRun extends BeforeRunTaskProvider<CompileStepBeforeRun.MakeBeforeRunTask> {
|
||||
public static final Key<MakeBeforeRunTask> ID = Key.create("Make");
|
||||
private static final Key<RunConfiguration> RUN_CONFIGURATION = Key.create("RUN_CONFIGURATION");
|
||||
|
||||
@@ -64,7 +64,8 @@ public class CompileStepBeforeRun implements BeforeRunTaskProvider<CompileStepBe
|
||||
: null;
|
||||
}
|
||||
|
||||
public void configureTask(RunConfiguration runConfiguration, MakeBeforeRunTask task) {
|
||||
public boolean configureTask(RunConfiguration runConfiguration, MakeBeforeRunTask task) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean executeTask(DataContext context, final RunConfiguration configuration, MakeBeforeRunTask task) {
|
||||
|
||||
@@ -26,26 +26,27 @@ import com.intellij.execution.configurations.RunConfiguration;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public interface BeforeRunTaskProvider<T extends BeforeRunTask> {
|
||||
@NonNls ExtensionPointName<BeforeRunTaskProvider<BeforeRunTask>> EXTENSION_POINT_NAME = new ExtensionPointName<BeforeRunTaskProvider<BeforeRunTask>>("com.intellij.stepsBeforeRunProvider");
|
||||
public abstract class BeforeRunTaskProvider<T extends BeforeRunTask> {
|
||||
public static final ExtensionPointName<BeforeRunTaskProvider<BeforeRunTask>> EXTENSION_POINT_NAME = new ExtensionPointName<BeforeRunTaskProvider<BeforeRunTask>>("com.intellij.stepsBeforeRunProvider");
|
||||
|
||||
Key<T> getId();
|
||||
public abstract Key<T> getId();
|
||||
|
||||
String getDescription(final RunConfiguration runConfiguration, T task);
|
||||
public abstract String getDescription(final RunConfiguration runConfiguration, T task);
|
||||
|
||||
boolean hasConfigurationButton();
|
||||
public abstract boolean hasConfigurationButton();
|
||||
|
||||
// lifecycle methods:
|
||||
/**
|
||||
* @return 'before run' task for the configuration or null, if the task from this provider is not applicable to the specified configuration
|
||||
*/
|
||||
@Nullable
|
||||
T createTask(final RunConfiguration runConfiguration);
|
||||
|
||||
void configureTask(final RunConfiguration runConfiguration, T task);
|
||||
public abstract T createTask(final RunConfiguration runConfiguration);
|
||||
|
||||
boolean executeTask(DataContext context, RunConfiguration configuration, T task);
|
||||
/**
|
||||
* @return <code>true</code> if task configuration is changed
|
||||
*/
|
||||
public abstract boolean configureTask(final RunConfiguration runConfiguration, T task);
|
||||
|
||||
public abstract boolean executeTask(DataContext context, RunConfiguration configuration, T task);
|
||||
}
|
||||
+4
-2
@@ -169,8 +169,10 @@ public class ConfigurationSettingsEditorWrapper extends SettingsEditor<RunnerAnd
|
||||
|
||||
myButton.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
provider.configureTask(runConfiguration, beforeRunTask);
|
||||
myCheckBox.setText(provider.getDescription(runConfiguration, beforeRunTask));
|
||||
if (provider.configureTask(runConfiguration, beforeRunTask)) {
|
||||
myCheckBox.setText(provider.getDescription(runConfiguration, beforeRunTask));
|
||||
fireEditorStateChanged();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+3
-2
@@ -31,7 +31,7 @@ import java.util.List;
|
||||
* @author Eugene Zhuravlev
|
||||
* Date: Sep 15, 2009
|
||||
*/
|
||||
public class UnknownBeforeRunTaskProvider implements BeforeRunTaskProvider<UnknownBeforeRunTaskProvider.UnknownTask>{
|
||||
public class UnknownBeforeRunTaskProvider extends BeforeRunTaskProvider<UnknownBeforeRunTaskProvider.UnknownTask> {
|
||||
private final Key<UnknownTask> myId;
|
||||
|
||||
public UnknownBeforeRunTaskProvider(String mirrorProviderName) {
|
||||
@@ -46,7 +46,8 @@ public class UnknownBeforeRunTaskProvider implements BeforeRunTaskProvider<Unkno
|
||||
return "Unknown task " + myId.toString();
|
||||
}
|
||||
|
||||
public void configureTask(RunConfiguration runConfiguration, UnknownTask task) {
|
||||
public boolean configureTask(RunConfiguration runConfiguration, UnknownTask task) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean executeTask(DataContext context, RunConfiguration configuration, UnknownTask task) {
|
||||
|
||||
@@ -33,7 +33,6 @@ import java.util.List;
|
||||
public abstract class SettingsEditor<Settings> implements Disposable {
|
||||
private List<SettingsEditorListener<Settings>> myListeners;
|
||||
private UserActivityWatcher myWatcher;
|
||||
private UserActivityListener myUserActivityListener;
|
||||
private boolean myIsInUpdate = false;
|
||||
private Factory<Settings> mySettingsFactory;
|
||||
private CompositeSettingsEditor<Settings> myOwner;
|
||||
@@ -112,12 +111,12 @@ public abstract class SettingsEditor<Settings> implements Disposable {
|
||||
protected void installWatcher(JComponent c) {
|
||||
myWatcher = new UserActivityWatcher();
|
||||
myWatcher.register(c);
|
||||
myUserActivityListener = new UserActivityListener() {
|
||||
UserActivityListener userActivityListener = new UserActivityListener() {
|
||||
public void stateChanged() {
|
||||
fireEditorStateChanged();
|
||||
}
|
||||
};
|
||||
myWatcher.addUserActivityListener(myUserActivityListener, this);
|
||||
myWatcher.addUserActivityListener(userActivityListener, this);
|
||||
}
|
||||
|
||||
public final void addSettingsEditorListener(SettingsEditorListener<Settings> listener) {
|
||||
@@ -134,8 +133,8 @@ public abstract class SettingsEditor<Settings> implements Disposable {
|
||||
protected final void fireEditorStateChanged() {
|
||||
if (myIsInUpdate || myListeners == null) return;
|
||||
SettingsEditorListener[] listeners = myListeners.toArray(new SettingsEditorListener[myListeners.size()]);
|
||||
for (int i = 0; i < listeners.length; i++) {
|
||||
listeners[i].stateChanged(this);
|
||||
for (SettingsEditorListener listener : listeners) {
|
||||
listener.stateChanged(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -32,7 +32,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* @author Vladislav.Kaznacheev
|
||||
*/
|
||||
public class AntBeforeRunTaskProvider implements BeforeRunTaskProvider<AntBeforeRunTask> {
|
||||
public class AntBeforeRunTaskProvider extends BeforeRunTaskProvider<AntBeforeRunTask> {
|
||||
public static final Key<AntBeforeRunTask> ID = Key.create("AntTarget");
|
||||
private final Project myProject;
|
||||
|
||||
@@ -56,7 +56,7 @@ public class AntBeforeRunTaskProvider implements BeforeRunTaskProvider<AntBefore
|
||||
return true;
|
||||
}
|
||||
|
||||
public void configureTask(RunConfiguration runConfiguration, AntBeforeRunTask task) {
|
||||
public boolean configureTask(RunConfiguration runConfiguration, AntBeforeRunTask task) {
|
||||
AntBuildTarget buildTarget = findTargetToExecute(task);
|
||||
final TargetChooserDialog dlg = new TargetChooserDialog(myProject, buildTarget);
|
||||
dlg.show();
|
||||
@@ -71,7 +71,9 @@ public class AntBeforeRunTaskProvider implements BeforeRunTaskProvider<AntBefore
|
||||
task.setTargetName(buildTarget.getName());
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public AntBeforeRunTask createTask(RunConfiguration runConfiguration) {
|
||||
|
||||
+4
-3
@@ -39,7 +39,7 @@ import org.jetbrains.idea.maven.utils.MavenLog;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
public class MavenBeforeRunTasksProvider implements BeforeRunTaskProvider<MavenBeforeRunTask> {
|
||||
public class MavenBeforeRunTasksProvider extends BeforeRunTaskProvider<MavenBeforeRunTask> {
|
||||
public static final Key<MavenBeforeRunTask> TASK_ID = Key.create("Maven.BeforeRunTask");
|
||||
private final Project myProject;
|
||||
|
||||
@@ -84,18 +84,19 @@ public class MavenBeforeRunTasksProvider implements BeforeRunTaskProvider<MavenB
|
||||
return new MavenBeforeRunTask();
|
||||
}
|
||||
|
||||
public void configureTask(RunConfiguration runConfiguration, MavenBeforeRunTask task) {
|
||||
public boolean configureTask(RunConfiguration runConfiguration, MavenBeforeRunTask task) {
|
||||
SelectMavenGoalDialog dialog = new SelectMavenGoalDialog(myProject,
|
||||
task.getProjectPath(),
|
||||
task.getGoal(),
|
||||
TasksBundle.message("maven.tasks.select.goal.title"));
|
||||
dialog.show();
|
||||
if (!dialog.isOK()) return;
|
||||
if (!dialog.isOK()) return false;
|
||||
|
||||
task.setProjectPath(dialog.getSelectedProjectPath());
|
||||
task.setGoal(dialog.getSelectedGoal());
|
||||
|
||||
MavenTasksManager.getInstance(myProject).fireTasksChanged();
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean executeTask(final DataContext context, RunConfiguration configuration, final MavenBeforeRunTask task) {
|
||||
|
||||
@@ -907,7 +907,7 @@
|
||||
<favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.PsiPackageFavoriteNodeProvider"/>
|
||||
|
||||
<stepsBeforeRunProvider implementation="com.intellij.compiler.options.CompileStepBeforeRun" id="compileBeforeRun"/>
|
||||
<stepsBeforeRunProvider implementation="com.intellij.packaging.impl.run.BuildArtifactsBeforeRun" order="after compileBeforeRun"/>
|
||||
<stepsBeforeRunProvider implementation="com.intellij.packaging.impl.run.BuildArtifactsBeforeRunTaskProvider" order="after compileBeforeRun"/>
|
||||
<programRunner implementation="com.intellij.execution.impl.DefaultJavaProgramRunner"/>
|
||||
<programRunner implementation="com.intellij.debugger.impl.GenericDebuggerRunner" order="last"/>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user