o Made order of goals in help output deterministic
git-svn-id: https://svn.apache.org/repos/asf/maven/plugin-tools/trunk@654827 13f79535-47bb-0310-9956-ffa450edef68master
parent
27cb7927a9
commit
790e6439bb
|
|
@ -24,9 +24,13 @@ import java.io.FileWriter;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.StringReader;
|
import java.io.StringReader;
|
||||||
import java.io.Writer;
|
import java.io.Writer;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.swing.text.html.HTMLEditorKit;
|
import javax.swing.text.html.HTMLEditorKit;
|
||||||
|
|
@ -278,6 +282,31 @@ public class PluginHelpGenerator
|
||||||
private static void writeExecute( Writer writer, PluginDescriptor pluginDescriptor )
|
private static void writeExecute( Writer writer, PluginDescriptor pluginDescriptor )
|
||||||
throws IOException
|
throws IOException
|
||||||
{
|
{
|
||||||
|
List mojoDescriptors = new ArrayList( pluginDescriptor.getMojos() );
|
||||||
|
|
||||||
|
for ( Iterator it = mojoDescriptors.iterator(); it.hasNext(); )
|
||||||
|
{
|
||||||
|
MojoDescriptor mojoDescriptor = (MojoDescriptor) it.next();
|
||||||
|
|
||||||
|
if ( getHelpGoalName().equals( mojoDescriptor.getGoal() ) )
|
||||||
|
{
|
||||||
|
// remove previously generated help goal
|
||||||
|
it.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Collections.sort( mojoDescriptors, new Comparator()
|
||||||
|
{
|
||||||
|
|
||||||
|
public int compare( Object arg0, Object arg1 )
|
||||||
|
{
|
||||||
|
MojoDescriptor mojo0 = (MojoDescriptor) arg0;
|
||||||
|
MojoDescriptor mojo1 = (MojoDescriptor) arg1;
|
||||||
|
return mojo0.getGoal().compareToIgnoreCase( mojo1.getGoal() );
|
||||||
|
}
|
||||||
|
|
||||||
|
} );
|
||||||
|
|
||||||
writer.write( " /** {@inheritDoc} */" + LS );
|
writer.write( " /** {@inheritDoc} */" + LS );
|
||||||
writer.write( " public void execute()" + LS );
|
writer.write( " public void execute()" + LS );
|
||||||
writer.write( " throws MojoExecutionException" + LS );
|
writer.write( " throws MojoExecutionException" + LS );
|
||||||
|
|
@ -286,22 +315,16 @@ public class PluginHelpGenerator
|
||||||
writer.write( " StringBuffer sb = new StringBuffer();" + LS );
|
writer.write( " StringBuffer sb = new StringBuffer();" + LS );
|
||||||
writer.write( LS );
|
writer.write( LS );
|
||||||
writer.write( " sb.append( \"The '" + pluginDescriptor.getPluginLookupKey() + "' plugin has "
|
writer.write( " sb.append( \"The '" + pluginDescriptor.getPluginLookupKey() + "' plugin has "
|
||||||
+ ( pluginDescriptor.getMojos().size() + 1 ) + " "
|
+ ( mojoDescriptors.size() + 1 ) + " "
|
||||||
+ ( ( pluginDescriptor.getMojos().size() + 1 ) > 1 ? "goals" : "goal" ) + ":\" ).append( \"\\n\" );" + LS );
|
+ ( ( mojoDescriptors.size() + 1 ) > 1 ? "goals" : "goal" ) + ":\" ).append( \"\\n\" );" + LS );
|
||||||
writer.write( " sb.append( \"\\n\" );" + LS );
|
writer.write( " sb.append( \"\\n\" );" + LS );
|
||||||
|
|
||||||
writer.write( LS );
|
writer.write( LS );
|
||||||
|
|
||||||
for ( Iterator it = pluginDescriptor.getMojos().iterator(); it.hasNext(); )
|
for ( Iterator it = mojoDescriptors.iterator(); it.hasNext(); )
|
||||||
{
|
{
|
||||||
MojoDescriptor descriptor = (MojoDescriptor) it.next();
|
MojoDescriptor descriptor = (MojoDescriptor) it.next();
|
||||||
|
|
||||||
if ( getHelpGoalName().equals( descriptor.getGoal() ) )
|
|
||||||
{
|
|
||||||
// don't document help goal twice
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
String goal = descriptor.getFullGoalName();
|
String goal = descriptor.getFullGoalName();
|
||||||
String description = StringUtils.isNotEmpty( descriptor.getDescription() ) ?
|
String description = StringUtils.isNotEmpty( descriptor.getDescription() ) ?
|
||||||
StringUtils.escape( toText( descriptor.getDescription() ) ) : "No description available.";
|
StringUtils.escape( toText( descriptor.getDescription() ) ) : "No description available.";
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue