Class ReferenceBuildinfoUtil


  • class ReferenceBuildinfoUtil
    extends java.lang.Object
    Utility to download reference artifacts and download or generate reference buildinfo.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.maven.artifact.factory.ArtifactFactory artifactFactory  
      private org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager  
      private java.util.Map<org.apache.maven.artifact.Artifact,​java.lang.String> artifacts  
      private static java.util.Set<java.lang.String> JAR_TYPES  
      private org.apache.maven.plugin.logging.Log log  
      private java.io.File referenceDir
      Directory of the downloaded reference files.
      private org.eclipse.aether.RepositorySystemSession repoSession  
      private org.eclipse.aether.RepositorySystem repoSystem  
      private org.apache.maven.rtinfo.RuntimeInformation rtInformation  
    • Constructor Summary

      Constructors 
      Constructor Description
      ReferenceBuildinfoUtil​(org.apache.maven.plugin.logging.Log log, java.io.File referenceDir, java.util.Map<org.apache.maven.artifact.Artifact,​java.lang.String> artifacts, org.apache.maven.artifact.factory.ArtifactFactory artifactFactory, org.eclipse.aether.RepositorySystem repoSystem, org.eclipse.aether.RepositorySystemSession repoSession, org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager, org.apache.maven.rtinfo.RuntimeInformation rtInformation)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) java.io.File downloadOrCreateReferenceBuildinfo​(org.eclipse.aether.repository.RemoteRepository repo, org.apache.maven.project.MavenProject project, java.io.File buildinfoFile, boolean mono)  
      private java.io.File downloadReference​(org.eclipse.aether.repository.RemoteRepository repo, org.apache.maven.artifact.Artifact artifact)  
      private java.io.File downloadReferenceBuildinfo​(org.eclipse.aether.repository.RemoteRepository repo, org.apache.maven.project.MavenProject project)  
      private ReferenceBuildinfoUtil.ReproducibleEnv extractEnv​(java.io.File file, org.apache.maven.artifact.Artifact artifact)  
      private java.lang.String extractJavaVersion​(java.util.jar.Manifest manifest)  
      private java.lang.String extractOsName​(org.apache.maven.artifact.Artifact a, java.util.jar.JarFile jar)  
      private java.io.File getReference​(java.lang.String groupId, java.io.File file)  
      • Methods inherited from class java.lang.Object

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

      • JAR_TYPES

        private static final java.util.Set<java.lang.String> JAR_TYPES
      • log

        private final org.apache.maven.plugin.logging.Log log
      • referenceDir

        private final java.io.File referenceDir
        Directory of the downloaded reference files.
      • artifacts

        private final java.util.Map<org.apache.maven.artifact.Artifact,​java.lang.String> artifacts
      • artifactFactory

        private final org.apache.maven.artifact.factory.ArtifactFactory artifactFactory
      • repoSystem

        private final org.eclipse.aether.RepositorySystem repoSystem
      • repoSession

        private final org.eclipse.aether.RepositorySystemSession repoSession
      • artifactHandlerManager

        private final org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager
      • rtInformation

        private final org.apache.maven.rtinfo.RuntimeInformation rtInformation
    • Constructor Detail

      • ReferenceBuildinfoUtil

        ReferenceBuildinfoUtil​(org.apache.maven.plugin.logging.Log log,
                               java.io.File referenceDir,
                               java.util.Map<org.apache.maven.artifact.Artifact,​java.lang.String> artifacts,
                               org.apache.maven.artifact.factory.ArtifactFactory artifactFactory,
                               org.eclipse.aether.RepositorySystem repoSystem,
                               org.eclipse.aether.RepositorySystemSession repoSession,
                               org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager,
                               org.apache.maven.rtinfo.RuntimeInformation rtInformation)
    • Method Detail

      • downloadOrCreateReferenceBuildinfo

        java.io.File downloadOrCreateReferenceBuildinfo​(org.eclipse.aether.repository.RemoteRepository repo,
                                                        org.apache.maven.project.MavenProject project,
                                                        java.io.File buildinfoFile,
                                                        boolean mono)
                                                 throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • extractJavaVersion

        private java.lang.String extractJavaVersion​(java.util.jar.Manifest manifest)
      • extractOsName

        private java.lang.String extractOsName​(org.apache.maven.artifact.Artifact a,
                                               java.util.jar.JarFile jar)
      • downloadReferenceBuildinfo

        private java.io.File downloadReferenceBuildinfo​(org.eclipse.aether.repository.RemoteRepository repo,
                                                        org.apache.maven.project.MavenProject project)
                                                 throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • downloadReference

        private java.io.File downloadReference​(org.eclipse.aether.repository.RemoteRepository repo,
                                               org.apache.maven.artifact.Artifact artifact)
                                        throws org.apache.maven.plugin.MojoExecutionException,
                                               org.apache.maven.artifact.resolver.ArtifactNotFoundException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
        org.apache.maven.artifact.resolver.ArtifactNotFoundException
      • getReference

        private java.io.File getReference​(java.lang.String groupId,
                                          java.io.File file)