maven-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bentm...@apache.org
Subject svn commit: r654891 - /maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
Date Fri, 09 May 2008 17:31:57 GMT
Author: bentmann
Date: Fri May  9 10:31:57 2008
New Revision: 654891

URL: http://svn.apache.org/viewvc?rev=654891&view=rev
Log:
o Made help goal output plugin name, version and description

Modified:
    maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java

Modified: maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
URL: http://svn.apache.org/viewvc/maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java?rev=654891&r1=654890&r2=654891&view=diff
==============================================================================
--- maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
(original)
+++ maven/plugin-tools/trunk/maven-plugin-tools-api/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
Fri May  9 10:31:57 2008
@@ -154,8 +154,8 @@
             descriptor.setImplementation( HELP_MOJO_CLASS_NAME );
         }
 
-        descriptor.setDescription( "Display help information on '" + pluginDescriptor.getPluginLookupKey()
-            + "' plugin. Call 'mvn " + descriptor.getFullGoalName() + " -Ddetail=true' to
display parameter details." );
+        descriptor.setDescription( "Display help information on " + pluginDescriptor.getArtifactId()
+            + ". Call 'mvn " + descriptor.getFullGoalName() + " -Ddetail=true' to display
parameter details." );
 
         return descriptor;
     }
@@ -332,8 +332,20 @@
 
         writer.write( "        StringBuffer sb = new StringBuffer();" + LS );
         writer.write( LS );
-        writer.write( "        sb.append( \"The '" + pluginDescriptor.getPluginLookupKey()
+ "' plugin has "
-            + mojoDescriptors.size() + " "
+
+        writer.write( "        sb.append( \"" + pluginDescriptor.getId() + "\" ).append(
\"\\n\" );" + LS );
+        writer.write( "        sb.append( \"\\n\" );" + LS );
+        writer.write( LS );
+
+        writer.write( "        sb.append( \""
+            + StringUtils.escape( pluginDescriptor.getName() + " " + pluginDescriptor.getVersion()
)
+            + "\" ).append( \"\\n\" );" + LS );
+        writer.write( "        appendDescription( sb, \"" + toDescription( pluginDescriptor.getDescription()
)
+            + "\", DEFAULT_INDENT );" + LS );
+        writer.write( "        sb.append( \"\\n\" );" + LS );
+        writer.write( LS );
+
+        writer.write( "        sb.append( \"This plugin has " + mojoDescriptors.size() +
" "
             + ( mojoDescriptors.size() > 1 ? "goals" : "goal" ) + ":\" ).append( \"\\n\"
);" + LS );
         writer.write( "        sb.append( \"\\n\" );" + LS );
 
@@ -356,12 +368,9 @@
     private static void writeGoal( Writer writer, MojoDescriptor descriptor )
         throws IOException
     {
-        String goal = descriptor.getFullGoalName();
-        String description = StringUtils.isNotEmpty( descriptor.getDescription() ) ?
-            StringUtils.escape( toText( descriptor.getDescription() ) ) : "No description
available.";
-
-        writer.write( "        sb.append( \"" + goal + "\" ).append( \"\\n\" );" + LS );
-        writer.write( "        appendDescription( sb, \"" + description + "\", DEFAULT_INDENT
);" + LS );
+        writer.write( "        sb.append( \"" + descriptor.getFullGoalName() + "\" ).append(
\"\\n\" );" + LS );
+        writer.write( "        appendDescription( sb, \"" + toDescription( descriptor.getDescription()
)
+            + "\", DEFAULT_INDENT );" + LS );
 
         if ( descriptor.getParameters() != null && descriptor.getParameters().size()
> 0 )
         {
@@ -403,8 +412,7 @@
         if ( expression == null || !expression.startsWith( "${component." ) )
         {
             String parameterName = parameter.getName();
-            String parameterDescription = StringUtils.isNotEmpty( parameter.getDescription()
) ?
-                StringUtils.escape( toText( parameter.getDescription() ) ) : "No description
available.";
+            String parameterDescription = toDescription( parameter.getDescription() );
             String parameterDefaultValue = parameterName
                 + ( StringUtils.isNotEmpty( parameter.getDefaultValue() ) ? " (Default: '"
                     + parameter.getDefaultValue() + "')" : "" );
@@ -501,14 +509,30 @@
     }
 
     /**
+     * Gets the effective string to use for the plugin/mojo/parameter description.
+     * 
+     * @param description The description of the element, may be <code>null</code>.
+     * @return The effective description string, never <code>null</code>.
+     */
+    private static String toDescription( String description )
+    {
+        if ( StringUtils.isNotEmpty( description ) )
+        {
+            return StringUtils.escape( toText( description ) );
+        }
+        else
+        {
+            return "(no description available)";
+        }
+    }
+
+    /**
      * Remove HTML tags from a string
      *
      * @param str
      * @return a String with HTML tags into pure text
-     * @throws IOException if any
      */
     protected static String toText( String str )
-        throws IOException
     {
         if ( StringUtils.isEmpty( str ) )
         {
@@ -555,7 +579,14 @@
             }
         };
 
-        parser.parse( new StringReader( PluginUtils.makeHtmlValid( str ) ), htmlCallback,
true );
+        try
+        {
+            parser.parse( new StringReader( PluginUtils.makeHtmlValid( str ) ), htmlCallback,
true );
+        }
+        catch ( IOException e )
+        {
+            throw new RuntimeException( e );
+        }
 
         return StringUtils.replace( sb.toString(), "\"", "'" ); // for CDATA
     }



Mime
View raw message