Author: epunzalan
Date: Tue Feb 28 18:27:31 2006
New Revision: 381873
URL: http://svn.apache.org/viewcvs?rev=381873&view=rev
Log:
PR: MIDEA-18
Submitted by: Geoffrey De Smet
Made the resource pattern configurable and improved the default resource pattern
Modified:
maven/plugins/trunk/maven-idea-plugin/src/main/java/org/apache/maven/plugin/idea/IdeaMojo.java
maven/plugins/trunk/maven-idea-plugin/src/main/resources/templates/default/project.xml
Modified:
maven/plugins/trunk/maven-idea-plugin/src/main/java/org/apache/maven/plugin/idea/IdeaMojo.java
URL:
http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-idea-plugin/src/main/java/org/apache/maven/plugin/idea/IdeaMojo.java?rev=381873&r1=381872&r2=381873&view=diff
==============================================================================
---
maven/plugins/trunk/maven-idea-plugin/src/main/java/org/apache/maven/plugin/idea/IdeaMojo.java
(original)
+++
maven/plugins/trunk/maven-idea-plugin/src/main/java/org/apache/maven/plugin/idea/IdeaMojo.java
Tue Feb 28 18:27:31 2006
@@ -37,6 +37,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.StringTokenizer;
/**
* Goal for generating IDEA files from a POM.
@@ -84,6 +85,17 @@
private String jdkLevel;
/**
+ * Specify the resource pattern in wildcard format, for example
"?*.xml;?*.properties".
+ * Currently supports 4.x and 5.x.
+ * The default value is any file without a java extension ("!?*.java").
+ * Because IDEA doesn't distinguish between source and resources
directories, this is needed.
+ * Please note that the default value includes package.html files as it's
not possible to exclude those.
+ *
+ * @parameter expression="${wildcardResourcePatterns}"
default-value="!?*.java"
+ */
+ private String wildcardResourcePatterns;
+
+ /**
* Specify the version of idea to use. This is needed to identify the
default formatting of
* project-jdk-name used by idea. Currently supports 4.x and 5.x.
* <p/>
@@ -234,6 +246,8 @@
setJdkName( module, defaultJdkName );
}
+ setWildcardResourcePatterns(module, wildcardResourcePatterns);
+
Xpp3Dom component = findComponent( module, "ProjectModuleManager"
);
Xpp3Dom modules = findElement( component, "modules" );
@@ -547,6 +561,29 @@
else
{
component.setAttribute( "assert-keyword", "false" );
+ }
+ }
+
+ /**
+ * Sets the wilcard resource patterns.
+ *
+ * @param content Xpp3Dom element.
+ * @param wildcardResourcePatterns The wilcard resource patterns.
+ */
+ private void setWildcardResourcePatterns( Xpp3Dom content, String
wildcardResourcePatterns )
+ {
+ Xpp3Dom compilerConfigurationElement = findComponent( content,
"CompilerConfiguration" );
+ if (!StringUtils.isEmpty( wildcardResourcePatterns )) {
+ removeOldElements( compilerConfigurationElement,
"wildcardResourcePatterns" );
+ Xpp3Dom wildcardResourcePatternsElement = createElement(
compilerConfigurationElement,
+
"wildcardResourcePatterns" );
+ StringTokenizer wildcardResourcePatternsTokenizer = new
StringTokenizer( wildcardResourcePatterns, ";");
+ while ( wildcardResourcePatternsTokenizer.hasMoreTokens() )
+ {
+ String wildcardResourcePattern =
wildcardResourcePatternsTokenizer.nextToken();
+ Xpp3Dom entryElement = createElement(
wildcardResourcePatternsElement, "entry" );
+ entryElement.setAttribute( "name", wildcardResourcePattern );
+ }
}
}
Modified:
maven/plugins/trunk/maven-idea-plugin/src/main/resources/templates/default/project.xml
URL:
http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-idea-plugin/src/main/resources/templates/default/project.xml?rev=381873&r1=381872&r2=381873&view=diff
==============================================================================
---
maven/plugins/trunk/maven-idea-plugin/src/main/resources/templates/default/project.xml
(original)
+++
maven/plugins/trunk/maven-idea-plugin/src/main/resources/templates/default/project.xml
Tue Feb 28 18:27:31 2006
@@ -28,10 +28,11 @@
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac"/>
<option name="CLEAR_OUTPUT_DIRECTORY" value="false"/>
- <resourceExtensions>
- <entry name=".+\.(properties|xml|html)"/>
- <entry name=".+\.(gif|png|jpeg)"/>
- </resourceExtensions>
+ <!--
+ <wildcardResourcePatterns>
+ <entry name="${wildcardResourcePattern}"/>
+ </wildcardResourcePatterns>
+ -->
</component>
<component name="JavacSettings">
<option name="DEBUGGING_INFO" value="true"/>