Class HelpMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.chenile.chenile_config_maven_plugin.HelpMojo
All Implemented Interfaces:
ContextEnabled, Mojo

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

    • 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.
    • PLUGIN_HELP_PATH

      private static final String PLUGIN_HELP_PATH
      See Also:
    • DEFAULT_LINE_LENGTH

      private static final int DEFAULT_LINE_LENGTH
      See Also:
  • Constructor Details

    • HelpMojo

      public HelpMojo()
  • Method Details

    • build

      private Document build() throws MojoExecutionException
      Throws:
      MojoExecutionException
    • execute

      public void execute() throws MojoExecutionException
      Throws:
      MojoExecutionException
    • isNotEmpty

      private static boolean isNotEmpty(String string)
    • getValue

      private static String getValue(Node node, String elementName) throws MojoExecutionException
      Throws:
      MojoExecutionException
    • getSingleChild

      private static Node getSingleChild(Node node, String elementName) throws MojoExecutionException
      Throws:
      MojoExecutionException
    • findNamedChild

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

      private static Node findSingleChild(Node node, String elementName) throws MojoExecutionException
      Throws:
      MojoExecutionException
    • writeGoal

      private void writeGoal(StringBuilder sb, String goalPrefix, Element mojo) throws MojoExecutionException
      Throws:
      MojoExecutionException
    • writeParameter

      private void writeParameter(StringBuilder sb, Node parameter, Node configurationElement) throws MojoExecutionException
      Throws:
      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)