public boolean accept()

in enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/dependency/BanDynamicVersions.java [173:203]


        public boolean accept(DependencyNode node, List<DependencyNode> parents) {
            if (isRoot) {
                isRoot = false;
                return false;
            }
            getLog().debug("Found node " + node + " with version constraint " + node.getVersionConstraint());
            if (!predicate.test(node)) {
                return false;
            }
            VersionConstraint versionConstraint = node.getVersionConstraint();
            if (isBannedDynamicVersion(versionConstraint)) {
                addViolation(versionConstraint, node, parents);
                return true;
            }
            try {
                if (verbose) {
                    String premanagedVersion = DependencyManagerUtils.getPremanagedVersion(node);
                    if (premanagedVersion != null) {
                        VersionConstraint premanagedContraint = versionScheme.parseVersionConstraint(premanagedVersion);
                        if (isBannedDynamicVersion(premanagedContraint)) {
                            addViolation(premanagedContraint, node, parents);
                            return true;
                        }
                    }
                }
            } catch (InvalidVersionSpecificationException ex) {
                // This should never happen.
                throw new RuntimeException("Failed to parse version for " + node, ex);
            }
            return false;
        }