Class 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 outputFolder  
      protected org.apache.maven.project.MavenProject project  
      protected static Map<String,​org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate> PROVIDED_PAGES  
      protected org.apache.maven.execution.MavenSession session  
      • 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)  
    • Field Detail

      • 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 Detail

      • CopyProvidedPagesMojo

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

      • 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)