mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
maven: check for existing project in maven actions. It possible to process actions without an open project
related issue - https://youtrack.jetbrains.com/issue/IDEA-132152
This commit is contained in:
+3
-2
@@ -15,16 +15,17 @@
|
||||
*/
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
|
||||
public class AlwaysShowArtifactIdAction extends MavenProjectsNavigatorAction {
|
||||
@Override
|
||||
public boolean isSelected(MavenProjectsNavigator navigator) {
|
||||
public boolean isSelected(@NotNull MavenProjectsNavigator navigator) {
|
||||
return navigator.getAlwaysShowArtifactId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(MavenProjectsNavigator navigator, boolean value) {
|
||||
public void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value) {
|
||||
navigator.setAlwaysShowArtifactId(value);
|
||||
}
|
||||
}
|
||||
+3
-2
@@ -15,16 +15,17 @@
|
||||
*/
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
|
||||
public class GroupProjectsAction extends MavenProjectsNavigatorAction {
|
||||
@Override
|
||||
public boolean isSelected(MavenProjectsNavigator navigator) {
|
||||
public boolean isSelected(@NotNull MavenProjectsNavigator navigator) {
|
||||
return navigator.getGroupModules();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(MavenProjectsNavigator navigator, boolean value) {
|
||||
public void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value) {
|
||||
navigator.setGroupModules(value);
|
||||
}
|
||||
}
|
||||
|
||||
+12
-5
@@ -16,6 +16,8 @@
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenToggleAction;
|
||||
@@ -23,19 +25,24 @@ import org.jetbrains.idea.maven.utils.actions.MavenToggleAction;
|
||||
public abstract class MavenProjectsNavigatorAction extends MavenToggleAction {
|
||||
@Override
|
||||
protected boolean doIsSelected(AnActionEvent e) {
|
||||
return isSelected(getNavigator(e));
|
||||
final MavenProjectsNavigator navigator = getNavigator(e);
|
||||
return navigator!= null && isSelected(navigator);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(AnActionEvent e, boolean state) {
|
||||
setSelected(getNavigator(e), state);
|
||||
final MavenProjectsNavigator navigator = getNavigator(e);
|
||||
if (navigator != null) {
|
||||
setSelected(navigator, state);
|
||||
}
|
||||
}
|
||||
|
||||
private MavenProjectsNavigator getNavigator(AnActionEvent e) {
|
||||
@Nullable
|
||||
private static MavenProjectsNavigator getNavigator(AnActionEvent e) {
|
||||
return MavenProjectsNavigator.getInstance(MavenActionUtil.getProject(e.getDataContext()));
|
||||
}
|
||||
|
||||
protected abstract boolean isSelected(MavenProjectsNavigator navigator);
|
||||
protected abstract boolean isSelected(@NotNull MavenProjectsNavigator navigator);
|
||||
|
||||
protected abstract void setSelected(MavenProjectsNavigator navigator, boolean value);
|
||||
protected abstract void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value);
|
||||
}
|
||||
|
||||
+3
-2
@@ -15,16 +15,17 @@
|
||||
*/
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
|
||||
public class ShowBasicPhasesOnlyAction extends MavenProjectsNavigatorAction {
|
||||
@Override
|
||||
public boolean isSelected(MavenProjectsNavigator navigator) {
|
||||
public boolean isSelected(@NotNull MavenProjectsNavigator navigator) {
|
||||
return navigator.getShowBasicPhasesOnly();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(MavenProjectsNavigator navigator, boolean value) {
|
||||
public void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value) {
|
||||
navigator.setShowBasicPhasesOnly(value);
|
||||
}
|
||||
}
|
||||
+3
-2
@@ -15,16 +15,17 @@
|
||||
*/
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
|
||||
public class ShowIgnoredProjectsAction extends MavenProjectsNavigatorAction {
|
||||
@Override
|
||||
public boolean isSelected(MavenProjectsNavigator navigator) {
|
||||
public boolean isSelected(@NotNull MavenProjectsNavigator navigator) {
|
||||
return navigator.getShowIgnored();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(MavenProjectsNavigator navigator, boolean value) {
|
||||
public void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value) {
|
||||
navigator.setShowIgnored(value);
|
||||
}
|
||||
}
|
||||
+3
-2
@@ -15,16 +15,17 @@
|
||||
*/
|
||||
package org.jetbrains.idea.maven.navigator.actions;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.navigator.MavenProjectsNavigator;
|
||||
|
||||
public class ShowVersionsAction extends MavenProjectsNavigatorAction {
|
||||
@Override
|
||||
public boolean isSelected(MavenProjectsNavigator navigator) {
|
||||
public boolean isSelected(@NotNull MavenProjectsNavigator navigator) {
|
||||
return navigator.getShowVersions();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(MavenProjectsNavigator navigator, boolean value) {
|
||||
public void setSelected(@NotNull MavenProjectsNavigator navigator, boolean value) {
|
||||
navigator.setShowVersions(value);
|
||||
}
|
||||
}
|
||||
+4
-3
@@ -18,7 +18,6 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.CommonDataKeys;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.actionSystem.PlatformDataKeys;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
@@ -32,7 +31,9 @@ public class AddFileAsMavenProjectAction extends MavenAction {
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final DataContext context = e.getDataContext();
|
||||
MavenProjectsManager manager = MavenActionUtil.getProjectsManager(context);
|
||||
manager.addManagedFilesOrUnignore(Collections.singletonList(getSelectedFile(context)));
|
||||
if (manager != null) {
|
||||
manager.addManagedFilesOrUnignore(Collections.singletonList(getSelectedFile(context)));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -51,7 +52,7 @@ public class AddFileAsMavenProjectAction extends MavenAction {
|
||||
|
||||
private static boolean isExistingProjectFile(DataContext context, VirtualFile file) {
|
||||
MavenProjectsManager manager = MavenActionUtil.getProjectsManager(context);
|
||||
return manager.findProject(file) != null;
|
||||
return manager != null && manager.findProject(file) != null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
+1
@@ -32,6 +32,7 @@ public class AddManagedFilesAction extends MavenAction {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final MavenProjectsManager manager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
if(manager == null) return;
|
||||
FileChooserDescriptor singlePomSelection = new FileChooserDescriptor(true, false, false, false, false, true) {
|
||||
@Override
|
||||
public boolean isFileSelectable(VirtualFile file) {
|
||||
|
||||
+4
-2
@@ -18,6 +18,7 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DefaultActionGroup;
|
||||
import com.intellij.openapi.project.DumbAware;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
|
||||
public class DownloadActionGroup extends DefaultActionGroup implements DumbAware {
|
||||
@@ -28,7 +29,8 @@ public class DownloadActionGroup extends DefaultActionGroup implements DumbAware
|
||||
}
|
||||
|
||||
private static boolean isEnabled(AnActionEvent e) {
|
||||
return MavenActionUtil.hasProject(e.getDataContext())
|
||||
&& MavenActionUtil.getProjectsManager(e.getDataContext()).isMavenizedProject();
|
||||
if(!MavenActionUtil.hasProject(e.getDataContext())) return false;
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
return projectsManager != null && projectsManager.isMavenizedProject();
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.model.MavenArtifact;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
@@ -49,7 +50,7 @@ public class DownloadSelectedSourcesAndDocsAction extends MavenProjectsAction {
|
||||
return result == null ? Collections.<MavenArtifact>emptyList() : result;
|
||||
}
|
||||
|
||||
protected void perform(MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
protected void perform(@NotNull MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
manager.scheduleArtifactsDownloading(mavenProjects, getDependencies(e), mySources, myDocs, null);
|
||||
}
|
||||
}
|
||||
+2
-1
@@ -18,6 +18,7 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.options.ShowSettingsUtil;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.utils.MavenSettings;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenAction;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
@@ -28,7 +29,7 @@ public class EditSettingsAction extends MavenAction {
|
||||
showSettingsFor(MavenActionUtil.getProject(e.getDataContext()));
|
||||
}
|
||||
|
||||
protected static void showSettingsFor(Project project) {
|
||||
protected static void showSettingsFor(@Nullable Project project) {
|
||||
ShowSettingsUtil.getInstance().showSettingsDialog(project, MavenSettings.DISPLAY_NAME);
|
||||
}
|
||||
}
|
||||
+5
-2
@@ -17,6 +17,7 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenAction;
|
||||
@@ -33,8 +34,10 @@ public abstract class MavenProjectsAction extends MavenAction {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final DataContext context = e.getDataContext();
|
||||
perform(MavenActionUtil.getProjectsManager(context), MavenActionUtil.getMavenProjects(context), e);
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return;
|
||||
perform(projectsManager, MavenActionUtil.getMavenProjects(context), e);
|
||||
}
|
||||
|
||||
protected abstract void perform(MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e);
|
||||
protected abstract void perform(@NotNull MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e);
|
||||
}
|
||||
+3
-1
@@ -28,7 +28,9 @@ public abstract class MavenProjectsManagerAction extends MavenAction {
|
||||
|
||||
@Override
|
||||
protected boolean isAvailable(AnActionEvent e) {
|
||||
return super.isAvailable(e) && MavenActionUtil.getProjectsManager(e.getDataContext()).isMavenizedProject();
|
||||
if(!super.isAvailable(e)) return false;
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
return projectsManager != null && projectsManager.isMavenizedProject();
|
||||
}
|
||||
|
||||
protected abstract void perform(MavenProjectsManager manager);
|
||||
|
||||
+2
-1
@@ -101,7 +101,7 @@ public class MavenShowEffectivePom extends AnAction implements DumbAware {
|
||||
}
|
||||
|
||||
MavenProjectsManager manager = MavenActionUtil.getProjectsManager(dataContext);
|
||||
|
||||
if(manager == null) return null;
|
||||
MavenProject mavenProject = manager.findProject(file);
|
||||
if (mavenProject == null) return null;
|
||||
|
||||
@@ -111,6 +111,7 @@ public class MavenShowEffectivePom extends AnAction implements DumbAware {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent event) {
|
||||
final Project project = MavenActionUtil.getProject(event.getDataContext());
|
||||
if(project == null) return;
|
||||
final VirtualFile file = findPomXml(event.getDataContext());
|
||||
if (file == null) return;
|
||||
|
||||
|
||||
+4
-1
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.MavenFileTemplateGroupFactory;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
|
||||
@@ -25,7 +26,9 @@ import java.util.List;
|
||||
|
||||
public class OpenOrCreateSettingsXmlAction extends MavenOpenOrCreateFilesAction {
|
||||
protected List<File> getFiles(AnActionEvent e) {
|
||||
File file = MavenActionUtil.getProjectsManager(e.getDataContext()).getGeneralSettings().getEffectiveUserSettingsIoFile();
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
if(projectsManager == null) return Collections.<File>emptyList();
|
||||
File file = projectsManager.getGeneralSettings().getEffectiveUserSettingsIoFile();
|
||||
return file != null ? Collections.singletonList(file) : Collections.<File>emptyList();
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -16,13 +16,14 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ReimportProjectAction extends MavenProjectsAction {
|
||||
protected void perform(MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
protected void perform(@NotNull MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
manager.forceUpdateProjects(mavenProjects);
|
||||
}
|
||||
}
|
||||
+1
@@ -41,6 +41,7 @@ public class RemoveManagedFilesAction extends MavenAction {
|
||||
final DataContext context = e.getDataContext();
|
||||
|
||||
MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return;
|
||||
|
||||
List<VirtualFile> selectedFiles = MavenActionUtil.getMavenProjectsFiles(context);
|
||||
List<VirtualFile> removableFiles = new ArrayList<VirtualFile>();
|
||||
|
||||
+11
-5
@@ -17,10 +17,12 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.idea.maven.execution.MavenRunConfigurationType;
|
||||
import org.jetbrains.idea.maven.execution.MavenRunnerParameters;
|
||||
import org.jetbrains.idea.maven.model.MavenExplicitProfiles;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.MavenDataKeys;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenAction;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
@@ -42,18 +44,22 @@ public class RunBuildAction extends MavenAction {
|
||||
final List<String> goals = MavenDataKeys.MAVEN_GOALS.getData(context);
|
||||
if (goals == null || goals.isEmpty()) return false;
|
||||
|
||||
final MavenProject project = MavenActionUtil.getMavenProject(context);
|
||||
if (project == null) return false;
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if(project == null) return false;
|
||||
final MavenProject mavenProject = MavenActionUtil.getMavenProject(context);
|
||||
if (mavenProject == null) return false;
|
||||
|
||||
if (!perform) return true;
|
||||
|
||||
MavenExplicitProfiles explicitProfiles = MavenActionUtil.getProjectsManager(context).getExplicitProfiles();
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return false;
|
||||
MavenExplicitProfiles explicitProfiles = projectsManager.getExplicitProfiles();
|
||||
final MavenRunnerParameters params = new MavenRunnerParameters(true,
|
||||
project.getDirectory(),
|
||||
mavenProject.getDirectory(),
|
||||
goals,
|
||||
explicitProfiles.getEnabledProfiles(),
|
||||
explicitProfiles.getDisabledProfiles());
|
||||
MavenRunConfigurationType.runConfiguration(MavenActionUtil.getProject(context), params, null);
|
||||
MavenRunConfigurationType.runConfiguration(project, params, null);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
+11
-3
@@ -18,6 +18,8 @@ package org.jetbrains.idea.maven.project.actions;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.options.ShowSettingsUtil;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.project.MavenIgnoredFilesConfigurable;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
@@ -35,6 +37,7 @@ public class ToggleIgnoredProjectsAction extends MavenAction {
|
||||
|
||||
final DataContext context = e.getDataContext();
|
||||
MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return;
|
||||
List<MavenProject> projects = MavenActionUtil.getMavenProjects(context);
|
||||
|
||||
if (isIgnoredInSettings(projectsManager, projects)) {
|
||||
@@ -54,6 +57,7 @@ public class ToggleIgnoredProjectsAction extends MavenAction {
|
||||
|
||||
final DataContext context = e.getDataContext();
|
||||
MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return false;
|
||||
List<MavenProject> projects = MavenActionUtil.getMavenProjects(context);
|
||||
|
||||
if (projects == null || projects.isEmpty()) return false;
|
||||
@@ -74,11 +78,11 @@ public class ToggleIgnoredProjectsAction extends MavenAction {
|
||||
(ignoredStatesCount == 0 || ignoredStatesCount == projects.size());
|
||||
}
|
||||
|
||||
private static boolean isIgnored(MavenProjectsManager projectsManager, List<MavenProject> projects) {
|
||||
private static boolean isIgnored(@NotNull MavenProjectsManager projectsManager, List<MavenProject> projects) {
|
||||
return projectsManager.getIgnoredState(projects.get(0));
|
||||
}
|
||||
|
||||
private static boolean isIgnoredInSettings(MavenProjectsManager projectsManager, List<MavenProject> projects) {
|
||||
private static boolean isIgnoredInSettings(@NotNull MavenProjectsManager projectsManager, List<MavenProject> projects) {
|
||||
return projectsManager.isIgnored(projects.get(0)) && !isIgnored(projectsManager, projects);
|
||||
}
|
||||
|
||||
@@ -86,11 +90,15 @@ public class ToggleIgnoredProjectsAction extends MavenAction {
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final DataContext context = e.getDataContext();
|
||||
MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return;
|
||||
List<MavenProject> projects = MavenActionUtil.getMavenProjects(context);
|
||||
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if(project == null) return;
|
||||
|
||||
if (isIgnoredInSettings(projectsManager, projects)) {
|
||||
ShowSettingsUtil.getInstance()
|
||||
.editConfigurable(MavenActionUtil.getProject(context), new MavenIgnoredFilesConfigurable(MavenActionUtil.getProject(context)));
|
||||
.editConfigurable(project, new MavenIgnoredFilesConfigurable(project));
|
||||
}
|
||||
else {
|
||||
projectsManager.setIgnoredState(projects, !isIgnored(projectsManager, projects));
|
||||
|
||||
+7
-2
@@ -16,17 +16,22 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenToggleAction;
|
||||
|
||||
public class ToggleOfflineAction extends MavenToggleAction {
|
||||
@Override
|
||||
protected boolean doIsSelected(AnActionEvent e) {
|
||||
return MavenActionUtil.getProjectsManager(e.getDataContext()).getGeneralSettings().isWorkOffline();
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
return projectsManager != null && projectsManager.getGeneralSettings().isWorkOffline();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(AnActionEvent e, boolean state) {
|
||||
MavenActionUtil.getProjectsManager(e.getDataContext()).getGeneralSettings().setWorkOffline(state);
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
if (projectsManager != null) {
|
||||
projectsManager.getGeneralSettings().setWorkOffline(state);
|
||||
}
|
||||
}
|
||||
}
|
||||
+4
-1
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.model.MavenExplicitProfiles;
|
||||
import org.jetbrains.idea.maven.model.MavenProfileKind;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
@@ -61,10 +62,11 @@ public class ToggleProfileAction extends MavenAction {
|
||||
if (selectedProfiles == null || selectedProfiles.isEmpty()) return null;
|
||||
|
||||
MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
if(projectsManager == null) return null;
|
||||
return getTargetState(projectsManager, selectedProfiles);
|
||||
}
|
||||
|
||||
private static MavenProfileKind getTargetState(MavenProjectsManager projectsManager, Map<String, MavenProfileKind> profiles) {
|
||||
private static MavenProfileKind getTargetState(@NotNull MavenProjectsManager projectsManager, Map<String, MavenProfileKind> profiles) {
|
||||
MavenExplicitProfiles explicitProfiles = projectsManager.getExplicitProfiles();
|
||||
MavenProfileKind targetState = null;
|
||||
// all profiles should target to the same state
|
||||
@@ -108,6 +110,7 @@ public class ToggleProfileAction extends MavenAction {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
MavenProjectsManager manager = MavenActionUtil.getProjectsManager(e.getDataContext());
|
||||
if(manager == null) return;
|
||||
Map<String, MavenProfileKind> selectedProfiles = e.getData(MavenDataKeys.MAVEN_PROFILES);
|
||||
Set<String> selectedProfileIds = selectedProfiles.keySet();
|
||||
|
||||
|
||||
+6
-1
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.idea.maven.execution.MavenRunner;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenActionUtil;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenToggleAction;
|
||||
@@ -23,11 +24,15 @@ import org.jetbrains.idea.maven.utils.actions.MavenToggleAction;
|
||||
public class ToggleSkipTestsAction extends MavenToggleAction {
|
||||
@Override
|
||||
protected boolean doIsSelected(AnActionEvent e) {
|
||||
return MavenRunner.getInstance(MavenActionUtil.getProject(e.getDataContext())).getState().isSkipTests();
|
||||
final Project project = MavenActionUtil.getProject(e.getDataContext());
|
||||
if(project == null) return false;
|
||||
return MavenRunner.getInstance(project).getState().isSkipTests();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(AnActionEvent e, boolean state) {
|
||||
final Project project = MavenActionUtil.getProject(e.getDataContext());
|
||||
if(project == null) return;
|
||||
MavenRunner.getInstance(MavenActionUtil.getProject(e.getDataContext())).getState().setSkipTests(state);
|
||||
}
|
||||
}
|
||||
+2
-1
@@ -16,13 +16,14 @@
|
||||
package org.jetbrains.idea.maven.project.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class UpdateFoldersForProjectAction extends MavenProjectsAction {
|
||||
protected void perform(MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
protected void perform(@NotNull MavenProjectsManager manager, List<MavenProject> mavenProjects, AnActionEvent e) {
|
||||
manager.scheduleFoldersResolve(mavenProjects);
|
||||
}
|
||||
}
|
||||
+8
-2
@@ -30,6 +30,7 @@ import org.jetbrains.idea.maven.model.MavenConstants;
|
||||
import org.jetbrains.idea.maven.model.MavenExplicitProfiles;
|
||||
import org.jetbrains.idea.maven.model.MavenPlugin;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.utils.MavenArtifactUtil;
|
||||
import org.jetbrains.idea.maven.utils.MavenPluginInfo;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenAction;
|
||||
@@ -177,13 +178,18 @@ public class MavenKeymapExtension implements KeymapExtension {
|
||||
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final DataContext context = e.getDataContext();
|
||||
MavenExplicitProfiles explicitProfiles = MavenActionUtil.getProjectsManager(context).getExplicitProfiles();
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if (project == null) return;
|
||||
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
if(projectsManager == null) return;
|
||||
MavenExplicitProfiles explicitProfiles = projectsManager.getExplicitProfiles();
|
||||
MavenRunnerParameters params = new MavenRunnerParameters(true,
|
||||
myMavenProject.getDirectory(),
|
||||
Arrays.asList(myGoal),
|
||||
explicitProfiles.getEnabledProfiles(),
|
||||
explicitProfiles.getDisabledProfiles());
|
||||
MavenRunConfigurationType.runConfiguration(MavenActionUtil.getProject(context), params, null);
|
||||
MavenRunConfigurationType.runConfiguration(project, params, null);
|
||||
}
|
||||
|
||||
public MavenProject getMavenProject() {
|
||||
|
||||
+10
-3
@@ -18,8 +18,10 @@ package org.jetbrains.idea.maven.tasks.actions;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.keymap.impl.ui.EditKeymapsDialog;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.project.MavenProjectsManager;
|
||||
import org.jetbrains.idea.maven.tasks.MavenShortcutsManager;
|
||||
import org.jetbrains.idea.maven.utils.MavenDataKeys;
|
||||
import org.jetbrains.idea.maven.utils.actions.MavenAction;
|
||||
@@ -37,7 +39,8 @@ public class AssignShortcutAction extends MavenAction {
|
||||
private static boolean isIgnoredProject(DataContext context) {
|
||||
final MavenProject project = MavenActionUtil.getMavenProject(context);
|
||||
if (project == null) return false;
|
||||
return MavenActionUtil.getProjectsManager(context).isIgnored(project);
|
||||
final MavenProjectsManager projectsManager = MavenActionUtil.getProjectsManager(context);
|
||||
return projectsManager != null && projectsManager.isIgnored(project);
|
||||
}
|
||||
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
@@ -60,11 +63,15 @@ public class AssignShortcutAction extends MavenAction {
|
||||
|
||||
String goal = goals.get(0);
|
||||
|
||||
return getShortcutsManager(context).getActionId(project.getPath(), goal);
|
||||
final MavenShortcutsManager shortcutsManager = getShortcutsManager(context);
|
||||
return shortcutsManager != null ? shortcutsManager.getActionId(project.getPath(), goal) : null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
protected static MavenShortcutsManager getShortcutsManager(DataContext context) {
|
||||
return MavenShortcutsManager.getInstance(MavenActionUtil.getProject(context));
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if(project == null) return null;
|
||||
return MavenShortcutsManager.getInstance(project);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+8
-2
@@ -18,6 +18,7 @@ package org.jetbrains.idea.maven.tasks.actions;
|
||||
import com.intellij.execution.RunManagerEx;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
@@ -40,7 +41,9 @@ public class ToggleBeforeRunTaskAction extends MavenToggleAction {
|
||||
final DataContext context = e.getDataContext();
|
||||
final Pair<MavenProject, String> desc = getTaskDesc(context);
|
||||
if (desc != null) {
|
||||
for (MavenBeforeRunTask each : getRunManager(context).getBeforeRunTasks(MavenBeforeRunTasksProvider.ID)) {
|
||||
final RunManagerEx runManager = getRunManager(context);
|
||||
if(runManager == null) return false;
|
||||
for (MavenBeforeRunTask each : runManager.getBeforeRunTasks(MavenBeforeRunTasksProvider.ID)) {
|
||||
if (each.isFor(desc.first, desc.second)) return true;
|
||||
}
|
||||
}
|
||||
@@ -68,7 +71,10 @@ public class ToggleBeforeRunTaskAction extends MavenToggleAction {
|
||||
return Pair.create(mavenProject, goals.get(0));
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private static RunManagerEx getRunManager(DataContext context) {
|
||||
return RunManagerEx.getInstanceEx(MavenActionUtil.getProject(context));
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if(project == null) return null;
|
||||
return RunManagerEx.getInstanceEx(project);
|
||||
}
|
||||
}
|
||||
|
||||
+12
-4
@@ -17,6 +17,8 @@ package org.jetbrains.idea.maven.tasks.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.idea.maven.project.MavenProject;
|
||||
import org.jetbrains.idea.maven.tasks.MavenCompilerTask;
|
||||
import org.jetbrains.idea.maven.tasks.MavenTasksManager;
|
||||
@@ -50,12 +52,14 @@ public abstract class ToggleCompilerTasksAction extends MavenToggleAction {
|
||||
@Override
|
||||
public void setSelected(AnActionEvent e, boolean state) {
|
||||
final DataContext context = e.getDataContext();
|
||||
final MavenTasksManager tasksManager = getTasksManager(context);
|
||||
List<MavenCompilerTask> tasks = getTasks(context);
|
||||
if(tasksManager == null) return;
|
||||
if (state) {
|
||||
addTasks(getTasksManager(context), tasks);
|
||||
addTasks(tasksManager, tasks);
|
||||
}
|
||||
else {
|
||||
removeTasks(getTasksManager(context), tasks);
|
||||
removeTasks(tasksManager, tasks);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,7 +77,8 @@ public abstract class ToggleCompilerTasksAction extends MavenToggleAction {
|
||||
return result;
|
||||
}
|
||||
|
||||
protected boolean hasTask(MavenTasksManager manager, MavenCompilerTask task) {
|
||||
protected boolean hasTask(@Nullable MavenTasksManager manager, MavenCompilerTask task) {
|
||||
if(manager == null) return false;
|
||||
return manager.isCompileTaskOfPhase(task, myPhase);
|
||||
}
|
||||
|
||||
@@ -85,7 +90,10 @@ public abstract class ToggleCompilerTasksAction extends MavenToggleAction {
|
||||
manager.removeCompileTasks(tasks, myPhase);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private static MavenTasksManager getTasksManager(DataContext context) {
|
||||
return MavenTasksManager.getInstance(MavenActionUtil.getProject(context));
|
||||
final Project project = MavenActionUtil.getProject(context);
|
||||
if(project == null) return null;
|
||||
return MavenTasksManager.getInstance(project);
|
||||
}
|
||||
}
|
||||
|
||||
+6
-3
@@ -41,7 +41,7 @@ public class MavenActionUtil {
|
||||
return CommonDataKeys.PROJECT.getData(context) != null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Nullable
|
||||
public static Project getProject(DataContext context) {
|
||||
return CommonDataKeys.PROJECT.getData(context);
|
||||
}
|
||||
@@ -55,6 +55,7 @@ public class MavenActionUtil {
|
||||
public static MavenProject getMavenProject(DataContext context) {
|
||||
MavenProject result;
|
||||
final MavenProjectsManager manager = getProjectsManager(context);
|
||||
if(manager == null) return null;
|
||||
|
||||
final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(context);
|
||||
if (file != null) {
|
||||
@@ -77,9 +78,11 @@ public class MavenActionUtil {
|
||||
return module != null ? module : DataKeys.MODULE_CONTEXT.getData(context);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Nullable
|
||||
public static MavenProjectsManager getProjectsManager(DataContext context) {
|
||||
return MavenProjectsManager.getInstance(getProject(context));
|
||||
final Project project = getProject(context);
|
||||
if(project == null) return null;
|
||||
return MavenProjectsManager.getInstance(project);
|
||||
}
|
||||
|
||||
public static boolean isMavenProjectFile(VirtualFile file) {
|
||||
|
||||
Reference in New Issue
Block a user