Author: vsiveton
Date: Fri Jan  7 19:06:09 2011
New Revision: 1056461

URL: http://svn.apache.org/viewvc?rev=1056461&view=rev
Log:
o take care of about parameter as discussed on dev@

Modified:
    
maven/plugins/trunk/maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java
    maven/plugins/trunk/maven-doap-plugin/src/main/mdo/doapOptions.mdo

Modified: 
maven/plugins/trunk/maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java?rev=1056461&r1=1056460&r2=1056461&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java
 (original)
+++ 
maven/plugins/trunk/maven-doap-plugin/src/main/java/org/apache/maven/plugin/doap/DoapMojo.java
 Fri Jan  7 19:06:09 2011
@@ -615,27 +615,51 @@ public class DoapMojo
 
         // Project
         DoapUtil.writeStartElement( writer, doapOptions.getXmlnsPrefix(), 
"Project" );
-        if ( StringUtils.isNotEmpty( about ) )
+        boolean added = false;
+        if ( artifact != null )
         {
-            if ( artifact != null )
-            {
-                about = project.getUrl();
-            }
+            String about_ = project.getUrl();
 
-            try
+            if ( StringUtils.isNotEmpty( about_ ) )
             {
-                new URL( about );
+                try
+                {
+                    new URL( about_ );
 
-                writer.addAttribute( "rdf:about", about );
+                    writer.addAttribute( "rdf:about", about_ );
+                    added = true;
+                }
+                catch ( MalformedURLException e )
+                {
+                }
             }
-            catch ( MalformedURLException e )
+
+            if ( !added )
             {
-                errorMessages.add( "The <about/> parameter " + about + " is 
not a valid URL." );
+                warnMessages.add( "The project's url from " + 
artifact.toStringConfiguration()
+                    + " is empty or not valid, using <about/> parameter." );
             }
         }
-        else
+
+        if ( !added )
         {
-            warnMessages.add( "rdf:about should be required" );
+            if ( StringUtils.isNotEmpty( about ) )
+            {
+                try
+                {
+                    new URL( about );
+
+                    writer.addAttribute( "rdf:about", about );
+                }
+                catch ( MalformedURLException e )
+                {
+                    errorMessages.add( "The <about/> parameter is not a valid 
URL." );
+                }
+            }
+            else
+            {
+                errorMessages.add( "The <about/> parameter is required." );
+            }
         }
 
         // name

Modified: maven/plugins/trunk/maven-doap-plugin/src/main/mdo/doapOptions.mdo
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-doap-plugin/src/main/mdo/doapOptions.mdo?rev=1056461&r1=1056460&r2=1056461&view=diff
==============================================================================
--- maven/plugins/trunk/maven-doap-plugin/src/main/mdo/doapOptions.mdo 
(original)
+++ maven/plugins/trunk/maven-doap-plugin/src/main/mdo/doapOptions.mdo Fri Jan  
7 19:06:09 2011
@@ -301,6 +301,21 @@ some POM options.
         }
         return this.doapFileName;
     }
+
+    /**
+     * @return String the configuration of this class.
+     */
+    public String toStringConfiguration()
+    {
+        java.lang.StringBuilder sb = new java.lang.StringBuilder();
+        sb.append( "<artifact>" );
+        sb.append( "<groupId>" ).append( this.groupId ).append( "</groupId>" );
+        sb.append( "<artifactId>" ).append( this.artifactId ).append( 
"</artifactId>" );
+        sb.append( "<version>" ).append( this.version ).append( "</version>" );
+        sb.append( "</artifact>" );
+
+        return sb.toString();
+    }
             ]]>
           </code>
         </codeSegment>


Reply via email to