Class RequireUpperBoundDeps

    • Field Detail

      • log

        private static org.apache.maven.plugin.logging.Log log
      • uniqueVersions

        private boolean uniqueVersions
        Since:
        1.3
      • excludes

        private java.util.List<java.lang.String> excludes
        Dependencies to ignore.
        Since:
        TBD
      • includes

        private java.util.List<java.lang.String> includes
        Dependencies to include.
        Since:
        3.0.0
    • Constructor Detail

      • RequireUpperBoundDeps

        public RequireUpperBoundDeps()
    • Method Detail

      • setUniqueVersions

        public void setUniqueVersions​(boolean uniqueVersions)
        Set to true if timestamped snapshots should be used.
        Parameters:
        uniqueVersions -
        Since:
        1.3
      • setExcludes

        public void setExcludes​(java.util.List<java.lang.String> excludes)
        Sets dependencies to exclude.
        Parameters:
        excludes - a list of groupId:artifactId names
      • setIncludes

        public void setIncludes​(java.util.List<java.lang.String> includes)
        Sets dependencies to include.
        Parameters:
        includes - a list of groupId:artifactId names
      • getNode

        private org.apache.maven.shared.dependency.graph.DependencyNode getNode​(EnforcerRuleHelper helper)
                                                                         throws EnforcerRuleException
        Uses the EnforcerRuleHelper to populate the values of the DependencyTreeBuilder#buildDependencyTree(MavenProject, ArtifactRepository, ArtifactFactory, ArtifactMetadataSource, ArtifactFilter, ArtifactCollector) factory method.
        This method simply exists to hide all the ugly lookup that the EnforcerRuleHelper has to do.
        Parameters:
        helper -
        Returns:
        a Dependency Node which is the root of the project's dependency tree
        Throws:
        EnforcerRuleException - when the build should fail
      • execute

        public void execute​(EnforcerRuleHelper helper)
                     throws EnforcerRuleException
        Description copied from interface: EnforcerRule
        This is the interface into the rule. This method should throw an exception containing a reason message if the rule fails the check. The plugin will then decide based on the fail flag if it should stop or just log the message as a warning.
        Parameters:
        helper - The helper provides access to the log, MavenSession and has helpers to get common components. It is also able to lookup components by class name.
        Throws:
        EnforcerRuleException - the enforcer rule exception
      • buildErrorMessages

        private java.util.List<java.lang.String> buildErrorMessages​(java.util.List<java.util.List<org.apache.maven.shared.dependency.graph.DependencyNode>> conflicts)
      • buildErrorMessage

        private java.lang.String buildErrorMessage​(java.util.List<org.apache.maven.shared.dependency.graph.DependencyNode> conflict)
      • buildTreeString

        private java.lang.StringBuilder buildTreeString​(org.apache.maven.shared.dependency.graph.DependencyNode node)
      • getFullArtifactName

        private java.lang.String getFullArtifactName​(org.apache.maven.shared.dependency.graph.DependencyNode node,
                                                     boolean usePremanaged)