Class ArtifactUtils


  • public final class ArtifactUtils
    extends java.lang.Object
    Since:
    3.0.0
    • Constructor Summary

      Constructors 
      Constructor Description
      ArtifactUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      private static java.util.stream.Stream<java.lang.String> cleansePatterns​(java.util.Collection<java.lang.String> patterns)
      Cleans the patterns provided ready for use in ArtifactMatcher.Pattern
      static boolean compareDependency​(java.lang.String pattern, org.apache.maven.artifact.Artifact artifact)
      Compares the given pattern against the given artifact.
      static java.util.Set<org.apache.maven.artifact.Artifact> filterDependencyArtifacts​(java.util.Set<org.apache.maven.artifact.Artifact> dependencies, java.util.Collection<java.lang.String> patterns)
      Returns a subset of dependency artifacts that match the given collection of patterns
      static java.util.function.Predicate<org.apache.maven.artifact.Artifact> prepareDependencyArtifactMatcher​(java.util.Collection<java.lang.String> patterns)
      Prepares patterns directly into a reusable predicate.
      static org.apache.maven.artifact.Artifact toArtifact​(org.eclipse.aether.graph.DependencyNode node)
      Converts DependencyNode to Artifact; in comparison to RepositoryUtils.toArtifact(org.eclipse.aether.artifact.Artifact), this method assigns Artifact.getScope() and Artifact.isOptional() based on the dependency information from the node.
      • Methods inherited from class java.lang.Object

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

      • ArtifactUtils

        public ArtifactUtils()
    • Method Detail

      • toArtifact

        public static org.apache.maven.artifact.Artifact toArtifact​(org.eclipse.aether.graph.DependencyNode node)
        Converts DependencyNode to Artifact; in comparison to RepositoryUtils.toArtifact(org.eclipse.aether.artifact.Artifact), this method assigns Artifact.getScope() and Artifact.isOptional() based on the dependency information from the node.
        Parameters:
        node - DependencyNode to convert to Artifact
        Returns:
        target artifact
      • filterDependencyArtifacts

        public static java.util.Set<org.apache.maven.artifact.Artifact> filterDependencyArtifacts​(java.util.Set<org.apache.maven.artifact.Artifact> dependencies,
                                                                                                  java.util.Collection<java.lang.String> patterns)
                                                                                           throws EnforcerRuleException
        Returns a subset of dependency artifacts that match the given collection of patterns
        Parameters:
        dependencies - dependency artifacts to match against patterns
        patterns - patterns to match against the artifacts
        Returns:
        a set containing artifacts matching one of the patterns or null
        Throws:
        EnforcerRuleException - the enforcer rule exception
      • prepareDependencyArtifactMatcher

        public static java.util.function.Predicate<org.apache.maven.artifact.Artifact> prepareDependencyArtifactMatcher​(java.util.Collection<java.lang.String> patterns)
        Prepares patterns directly into a reusable predicate. This can improve efficiency where there are lots of patterns and/or artifacts to match.
        Parameters:
        patterns - the patterns to use for the predicate
        Returns:
        a re-usable predicate.
      • cleansePatterns

        private static java.util.stream.Stream<java.lang.String> cleansePatterns​(java.util.Collection<java.lang.String> patterns)
        Cleans the patterns provided ready for use in ArtifactMatcher.Pattern
        Parameters:
        patterns - the patterns to be cleaned
        Returns:
        a Stream of the patterns prepared for use.
      • compareDependency

        public static boolean compareDependency​(java.lang.String pattern,
                                                org.apache.maven.artifact.Artifact artifact)
        Compares the given pattern against the given artifact. The pattern should follow the format groupId:artifactId:version:type:scope:classifier.
        Parameters:
        pattern - The pattern to compare the artifact with.
        artifact - the artifact
        Returns:
        true if the artifact matches one of the patterns