Class CopyProvidedPagesMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.bonitasoft.plugin.build.CopyProvidedPagesMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="copy-provided-pages", defaultPhase=PROCESS_RESOURCES, requiresProject=true) public class CopyProvidedPagesMojo extends org.apache.maven.plugin.AbstractMojo
This Mojo first detects if Bonita provided pages (i.e. pages from User Application) are used in project applications. Then resolves used pages (i.e. downloads artifacts from a repository). Finally, it copies pages artifacts to an output folder (to be packaged afterward).
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected File
     
    protected org.apache.maven.project.MavenProject
     
    protected static final Map<String,org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate>
     
    protected org.apache.maven.execution.MavenSession
     

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

    ROLE
  • Constructor Summary

    Constructors
    Constructor
    Description
    CopyProvidedPagesMojo(org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver artifactResolver)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected List<org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate>
     
    void
     
    protected Stream<String>
    listPages(org.bonitasoft.engine.business.application.xml.ApplicationNodeContainer applicationNode)
     
    protected org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate
    setArtifactVersion(org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate artifactCoordinate)
     
    protected org.bonitasoft.engine.business.application.xml.ApplicationNodeContainer
     

    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

    • PROVIDED_PAGES

      protected static final Map<String,org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate> PROVIDED_PAGES
    • project

      @Parameter(defaultValue="${project}", readonly=true, required=true) protected org.apache.maven.project.MavenProject project
    • session

      @Parameter(defaultValue="${session}", readonly=true, required=true) protected org.apache.maven.execution.MavenSession session
    • outputFolder

      @Parameter(defaultValue="${project.build.directory}/provided-pages", readonly=true, required=true) protected File outputFolder
  • Constructor Details

    • CopyProvidedPagesMojo

      @Inject public CopyProvidedPagesMojo(org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver artifactResolver)
  • Method Details

    • execute

      public void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
      Throws:
      org.apache.maven.plugin.MojoExecutionException
      org.apache.maven.plugin.MojoFailureException
    • detectProvidedPages

      protected List<org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate> detectProvidedPages() throws org.apache.maven.plugin.MojoFailureException
      Throws:
      org.apache.maven.plugin.MojoFailureException
    • toApplicationContainerNode

      protected org.bonitasoft.engine.business.application.xml.ApplicationNodeContainer toApplicationContainerNode(Path file)
    • listPages

      protected Stream<String> listPages(org.bonitasoft.engine.business.application.xml.ApplicationNodeContainer applicationNode)
    • setArtifactVersion

      protected org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate setArtifactVersion(org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate artifactCoordinate)