Class InfoClassMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
com.github.koraktor.mavanagaiata.mojo.InfoClassMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="info-class", defaultPhase=GENERATE_SOURCES, threadSafe=true) public class InfoClassMojo extends org.apache.maven.plugin.AbstractMojo
This goal generates the source code for a Java class with Git information like commit ID and tag name.
Since:
0.5.0
Author:
Sebastian Staudt
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected String
    The date format to use for various dates
    protected org.apache.maven.project.MavenProject
    The Maven project

    Fields inherited from interface org.apache.maven.plugin.Mojo

    ROLE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    Generic execution sequence for a Mavanagaiata mojo
    protected GitRepository
    Generic initialization for all Mavanagaiata mojos
    void
    run(GitRepository repository)
    Generates an info class filled providing information of the Git repository

    Methods inherited from class org.apache.maven.plugin.AbstractMojo

    getLog, getPluginContext, setLog, setPluginContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • dateFormat

      @Parameter(property="mavanagaiata.dateFormat", defaultValue="MM/dd/yyyy hh:mm a Z") protected String dateFormat
      The date format to use for various dates
    • project

      @Parameter(defaultValue="${project}", readonly=true) protected org.apache.maven.project.MavenProject project
      The Maven project
  • Constructor Details

    • InfoClassMojo

      public InfoClassMojo()
  • Method Details

    • run

      public void run(GitRepository repository) throws com.github.koraktor.mavanagaiata.mojo.MavanagaiataMojoException
      Generates an info class filled providing information of the Git repository
      Parameters:
      repository - The repository instance to use
      Throws:
      com.github.koraktor.mavanagaiata.mojo.MavanagaiataMojoException - if the info class cannot be generated
    • execute

      public final void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
      Generic execution sequence for a Mavanagaiata mojo

      Will initialize any needed resources, run the actual mojo code and cleanup afterwards.

      Throws:
      org.apache.maven.plugin.MojoExecutionException - if the mojo execution fails and failGracefully is false
      org.apache.maven.plugin.MojoFailureException - if the mojo execution fails and failGracefully is true
      See Also:
    • init

      protected GitRepository init() throws com.github.koraktor.mavanagaiata.mojo.MavanagaiataMojoException
      Generic initialization for all Mavanagaiata mojos

      This will initialize the JGit repository instance for further usage by the mojo.

      Returns:
      false if the execution should be skipped
      Throws:
      com.github.koraktor.mavanagaiata.mojo.MavanagaiataMojoException - if the repository cannot be initialized