Class HelpMojo

  • All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

    @Mojo(name="help",
          requiresProject=false,
          threadSafe=true)
    public class HelpMojo
    extends org.apache.maven.plugin.AbstractMojo
    Display help information on johnzon-maven-plugin.
    Call mvn johnzon:help -Ddetail=true -Dgoal=<goal-name> to display parameter details.
    Author:
    maven-plugin-tools
    • Field Detail

      • detail

        @Parameter(property="detail",
                   defaultValue="false")
        private boolean detail
        If true, display all settable properties for each goal.
      • goal

        @Parameter(property="goal")
        private String goal
        The name of the goal for which to show help. If unspecified, all goals will be displayed.
      • lineLength

        @Parameter(property="lineLength",
                   defaultValue="80")
        private int lineLength
        The maximum length of a display line, should be positive.
      • indentSize

        @Parameter(property="indentSize",
                   defaultValue="2")
        private int indentSize
        The number of spaces per indentation level, should be positive.
    • Constructor Detail

      • HelpMojo

        public HelpMojo()
    • Method Detail

      • build

        private Document build()
                        throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • execute

        public void execute()
                     throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • isNotEmpty

        private static boolean isNotEmpty​(String string)
      • getValue

        private static String getValue​(Node node,
                                       String elementName)
                                throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • getSingleChild

        private static Node getSingleChild​(Node node,
                                           String elementName)
                                    throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • findNamedChild

        private static List<Node> findNamedChild​(Node node,
                                                 String elementName)
      • findSingleChild

        private static Node findSingleChild​(Node node,
                                            String elementName)
                                     throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • writeGoal

        private void writeGoal​(StringBuilder sb,
                               String goalPrefix,
                               Element mojo)
                        throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • writeParameter

        private void writeParameter​(StringBuilder sb,
                                    Node parameter,
                                    Node configurationElement)
                             throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • repeat

        private static String repeat​(String str,
                                     int repeat)

        Repeat a String n times to form a new string.

        Parameters:
        str - String to repeat
        repeat - number of times to repeat str
        Returns:
        String with repeated String
        Throws:
        NegativeArraySizeException - if repeat < 0
        NullPointerException - if str is null
      • append

        private void append​(StringBuilder sb,
                            String description,
                            int indent)
        Append a description to the buffer by respecting the indentSize and lineLength parameters. Note: The last character is always a new line.
        Parameters:
        sb - The buffer to append the description, not null.
        description - The description, not null.
        indent - The base indentation level of each line, must not be negative.
      • toLines

        private static List<String> toLines​(String text,
                                            int indent,
                                            int indentSize,
                                            int lineLength)
        Splits the specified text into lines of convenient display length.
        Parameters:
        text - The text to split into lines, must not be null.
        indent - The base indentation level of each line, must not be negative.
        indentSize - The size of each indentation, must not be negative.
        lineLength - The length of the line, must not be negative.
        Returns:
        The sequence of display lines, never null.
        Throws:
        NegativeArraySizeException - if indent < 0
      • toLines

        private static void toLines​(List<String> lines,
                                    String line,
                                    int indentSize,
                                    int lineLength)
        Adds the specified line to the output sequence, performing line wrapping if necessary.
        Parameters:
        lines - The sequence of display lines, must not be null.
        line - The line to add, must not be null.
        indentSize - The size of each indentation, must not be negative.
        lineLength - The length of the line, must not be negative.
      • getIndentLevel

        private static int getIndentLevel​(String line)
        Gets the indentation level of the specified line.
        Parameters:
        line - The line whose indentation level should be retrieved, must not be null.
        Returns:
        The indentation level of the line.
      • getPropertyFromExpression

        private static String getPropertyFromExpression​(String expression)