From 19c2fd61eb3a57ca555d43ded4f31dd90dadbbba Mon Sep 17 00:00:00 2001 From: Sergey Evdokimov Date: Thu, 1 Nov 2012 19:26:35 +0400 Subject: [PATCH] IDEA-93979 Cannot add multiple managed dependencies --- .../GenerateManagedDependencyAction.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/generate/GenerateManagedDependencyAction.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/generate/GenerateManagedDependencyAction.java index c11881143e0b..b46b60474db5 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/generate/GenerateManagedDependencyAction.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/dom/generate/GenerateManagedDependencyAction.java @@ -53,30 +53,32 @@ public class GenerateManagedDependencyAction extends GenerateDomElementAction { protected MavenDomDependency doGenerate(@NotNull final MavenDomProjectModel mavenModel, final Editor editor) { Set managingDependencies = collectManagingDependencies(mavenModel); - List dependenciesToOverride = + final List dependenciesToOverride = GenerateDependencyUtil.chooseDependencies(managingDependencies, mavenModel.getManager().getProject()); - for (final MavenDomDependency parentDependency : dependenciesToOverride) { - final String groupId = parentDependency.getGroupId().getStringValue(); - final String artifactId = parentDependency.getArtifactId().getStringValue(); + if (!dependenciesToOverride.isEmpty()) { + return new WriteCommandAction(editor.getProject(), mavenModel.getXmlTag().getContainingFile()) { + @Override + protected void run(Result result) throws Throwable { + for (MavenDomDependency parentDependency : dependenciesToOverride) { + String groupId = parentDependency.getGroupId().getStringValue(); + String artifactId = parentDependency.getArtifactId().getStringValue(); - if (!StringUtil.isEmptyOrSpaces(groupId) && !StringUtil.isEmptyOrSpaces(artifactId)) { - return new WriteCommandAction(editor.getProject(), mavenModel.getXmlTag().getContainingFile()) { - @Override - protected void run(Result result) throws Throwable { - MavenDomDependency dependency = MavenDomUtil.createDomDependency(mavenModel, editor); + if (!StringUtil.isEmptyOrSpaces(groupId) && !StringUtil.isEmptyOrSpaces(artifactId)) { + MavenDomDependency dependency = MavenDomUtil.createDomDependency(mavenModel, editor); - dependency.getGroupId().setStringValue(groupId); - dependency.getArtifactId().setStringValue(artifactId); - String typeValue = parentDependency.getType().getStringValue(); + dependency.getGroupId().setStringValue(groupId); + dependency.getArtifactId().setStringValue(artifactId); + String typeValue = parentDependency.getType().getStringValue(); - if (!StringUtil.isEmptyOrSpaces(typeValue)) { - dependency.getType().setStringValue(typeValue); + if (!StringUtil.isEmptyOrSpaces(typeValue)) { + dependency.getType().setStringValue(typeValue); + } + dependency.getVersion().undefine(); } - dependency.getVersion().undefine(); } - }.execute().getResultObject(); - } + } + }.execute().getResultObject(); } return null;