Class BannedDependencies

    • Field Detail

      • excludes

        private java.util.List<java.lang.String> excludes
        Specify the banned dependencies. This can be a list of artifacts in the format groupId[:artifactId][:version]. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
        The rule will fail if any dependency matches any exclude, unless it also matches an include rule.
      • includes

        private java.util.List<java.lang.String> includes
        Specify the allowed dependencies. This can be a list of artifacts in the format groupId[:artifactId][:version]. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
        Includes override the exclude rules. It is meant to allow wide exclusion rules with wildcards and still allow a smaller set of includes.
        For example, to ban all xerces except xerces-api -> exclude "xerces", include "xerces:xerces-api"
    • Constructor Detail

      • BannedDependencies

        public BannedDependencies()
    • Method Detail

      • checkDependencies

        protected java.util.Set<org.apache.maven.artifact.Artifact> checkDependencies​(java.util.Set<org.apache.maven.artifact.Artifact> theDependencies,
                                                                                      org.apache.maven.plugin.logging.Log log)
                                                                               throws EnforcerRuleException
        Description copied from class: AbstractBanDependencies
        Checks the set of dependencies against the list of excludes.
        Specified by:
        checkDependencies in class AbstractBanDependencies
        Parameters:
        theDependencies - the dependencies
        log - the log
        Returns:
        the sets the
        Throws:
        EnforcerRuleException - the enforcer rule exception
      • checkDependencies

        private java.util.Set<org.apache.maven.artifact.Artifact> checkDependencies​(java.util.Set<org.apache.maven.artifact.Artifact> dependencies,
                                                                                    java.util.List<java.lang.String> thePatterns)
                                                                             throws EnforcerRuleException
        Checks the set of dependencies against the list of patterns.
        Parameters:
        thePatterns - the patterns
        dependencies - the dependencies
        Returns:
        a set containing artifacts matching one of the patterns or null
        Throws:
        EnforcerRuleException - the enforcer rule exception
      • compareDependency

        protected boolean compareDependency​(java.lang.String pattern,
                                            org.apache.maven.artifact.Artifact artifact)
                                     throws EnforcerRuleException
        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
        Throws:
        EnforcerRuleException - the enforcer rule exception
      • getExcludes

        public java.util.List<java.lang.String> getExcludes()
        Gets the excludes.
        Returns:
        the excludes
      • setExcludes

        public void setExcludes​(java.util.List<java.lang.String> theExcludes)
        Specify the banned dependencies. This can be a list of artifacts in the format groupId[:artifactId][:version]. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
        The rule will fail if any dependency matches any exclude, unless it also matches an include rule.
        Parameters:
        theExcludes - the excludes to set
        See Also:
        getExcludes()
      • getIncludes

        public java.util.List<java.lang.String> getIncludes()
        Gets the includes.
        Returns:
        the includes
      • setIncludes

        public void setIncludes​(java.util.List<java.lang.String> theIncludes)
        Specify the allowed dependencies. This can be a list of artifacts in the format groupId[:artifactId][:version]. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
        Includes override the exclude rules. It is meant to allow wide exclusion rules with wildcards and still allow a smaller set of includes.
        For example, to ban all xerces except xerces-api → exclude "xerces", include "xerces:xerces-api"
        Parameters:
        theIncludes - the includes to set
        See Also:
        setIncludes(List)