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"/>


Reply via email to