Merge remote-tracking branch 'origin/master'

This commit is contained in:
Dmitry Trofimov
2013-04-05 16:02:04 +02:00
@@ -27,6 +27,7 @@ import com.intellij.openapi.roots.ModifiableRootModel;
import com.intellij.openapi.util.Pair;
import com.intellij.util.ArrayUtil;
import gnu.trove.THashMap;
import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.idea.maven.model.MavenResource;
import org.jetbrains.idea.maven.project.MavenImportingSettings;
@@ -120,6 +121,8 @@ public class MavenFoldersImporter {
testFolders.add(each.getDirectory());
}
addBuilderHelperPaths("add-source", sourceFolders);
addBuilderHelperPaths("add-test-source", testFolders);
List<Pair<Path, Boolean>> allFolders = new ArrayList<Pair<Path, Boolean>>(sourceFolders.size() + testFolders.size());
for (String each : sourceFolders) {
@@ -134,6 +137,19 @@ public class MavenFoldersImporter {
}
}
private void addBuilderHelperPaths(String goal, List<String> folders) {
final Element configurationElement = myMavenProject.getPluginGoalConfiguration("org.codehaus.mojo", "build-helper-maven-plugin", goal);
if (configurationElement != null) {
final Element sourcesElement = configurationElement.getChild("sources");
if (sourcesElement != null) {
//noinspection unchecked
for (Element element : (List<Element>)sourcesElement.getChildren()) {
folders.add(element.getTextTrim());
}
}
}
}
@NotNull
private static List<Pair<Path, Boolean>> normalize(@NotNull List<Pair<Path, Boolean>> folders) {
List<Pair<Path, Boolean>> result = new ArrayList<Pair<Path, Boolean>>(folders.size());