Author: dkulp
Date: Thu Nov 29 14:14:29 2007
New Revision: 599599

URL: http://svn.apache.org/viewvc?rev=599599&view=rev
Log:
[MPMD-56] Add support for Java 1.6 (patch from Xavier Le Vourch applied)

Modified:
    
maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
    
maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java

Modified: 
maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java?rev=599599&r1=599598&r2=599599&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
 (original)
+++ 
maven/plugins/trunk/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
 Thu Nov 29 14:14:29 2007
@@ -72,7 +72,7 @@
 {
     /**
      * The target JDK to analyse based on. Should match the target used in the 
compiler plugin. Valid values are
-     * currently <code>1.3</code>, <code>1.4</code>, <code>1.5</code>.
+     * currently <code>1.3</code>, <code>1.4</code>, <code>1.5</code>, 
<code>1.6</code>.
      *
      * @parameter expression="${targetJdk}"
      */
@@ -175,7 +175,7 @@
                         
                         if ( null == ruleset )
                         {
-                            throw new MavenReportException( "Cold not resolve 
" + set );
+                            throw new MavenReportException( "Could not resolve 
" + set );
                         }
     
                         InputStream rulesInput = new FileInputStream( ruleset 
);
@@ -313,22 +313,22 @@
      * that configures the target JDK.
      *
      * @return the resulting PMD
+     * @throws org.apache.maven.reporting.MavenReportException
+     *          if targetJdk is not supported
      */
     public PMD getPMD()
+        throws MavenReportException
     {
         PMD pmd = new PMD();
 
-        if ( "1.5".equals( targetJdk ) )
-        {
-            pmd.setJavaVersion( SourceType.JAVA_15 );
-        }
-        else if ( "1.4".equals( targetJdk ) )
+        if ( null != targetJdk )
         {
-            pmd.setJavaVersion( SourceType.JAVA_14 );
-        }
-        else if ( "1.3".equals( targetJdk ) )
-        {
-            pmd.setJavaVersion( SourceType.JAVA_13 );
+            SourceType sourceType = SourceType.getSourceTypeForId("java " + 
targetJdk);
+            if ( sourceType == null )
+            {
+                throw new MavenReportException( "Unsupported targetJdk value 
'" + targetJdk + "'." );
+            }
+            pmd.setJavaVersion(sourceType);
         }
 
         return pmd;

Modified: 
maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java?rev=599599&r1=599598&r2=599599&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
 (original)
+++ 
maven/plugins/trunk/maven-pmd-plugin/src/test/java/org/apache/maven/plugin/pmd/PmdReportTest.java
 Thu Nov 29 14:14:29 2007
@@ -205,6 +205,24 @@
         }
     }
 
+    public void testInvalidTargetJdk()
+        throws Exception
+    {
+        try
+        {
+            File testPom =
+                new File( getBasedir(), 
"src/test/resources/unit/invalid-format/invalid-target-jdk-plugin-config.xml" );
+            PmdReport mojo = (PmdReport) lookupMojo( "pmd", testPom );
+            mojo.execute();
+
+            fail( "Must throw MavenReportException." );
+        }
+        catch ( Exception e )
+        {
+            assertTrue( true );
+        }
+    }
+
 
 
     /**


Reply via email to