private void logUpdates()

in src/main/java/org/apache/sling/maven/projectsupport/DisplayBundleUpdatesMojo.java [171:215]


    private void logUpdates(Map<Dependency, ArtifactVersions> updates) {
        List<String> withUpdates = new ArrayList<String>();
        List<String> usingCurrent = new ArrayList<String>();
        for (ArtifactVersions versions : updates.values()) {
            String left = "  " + ArtifactUtils.versionlessKey(versions.getArtifact()) + " ";
            final String current = versions.isCurrentVersionDefined() ? versions.getCurrentVersion().toString()
                    : versions.getArtifact().getVersionRange().toString();
            ArtifactVersion latest = versions.getNewestUpdate(UpdateScope.ANY, Boolean.TRUE.equals(allowSnapshots));
            if (latest != null && !versions.isCurrentVersionDefined()) {
                if (versions.getArtifact().getVersionRange().containsVersion(latest)) {
                    latest = null;
                }
            }
            String right = " " + (latest == null ? current : current + " -> " + latest.toString());
            List<String> t = latest == null ? usingCurrent : withUpdates;
            if (right.length() + left.length() + 3 > INFO_PAD_SIZE) {
                t.add(left + "...");
                t.add(StringUtils.leftPad(right, INFO_PAD_SIZE));

            } else {
                t.add(StringUtils.rightPad(left, INFO_PAD_SIZE - right.length(), ".") + right);
            }
        }

        if (usingCurrent.isEmpty() && !withUpdates.isEmpty()) {
            getLog().info("No bundles are using the newest version.");
            getLog().info("");
        } else if (!usingCurrent.isEmpty()) {
            getLog().info("The following bundles are using the newest version:");
            for (String str : usingCurrent) {
                getLog().info(str);
            }
            getLog().info("");
        }
        if (withUpdates.isEmpty() && !usingCurrent.isEmpty()) {
            getLog().info("No bundles have newer versions.");
            getLog().info("");
        } else if (!withUpdates.isEmpty()) {
            getLog().info("The following bundles have newer versions:");
            for (String str : withUpdates) {
                getLog().info(str);
            }
            getLog().info("");
        }
    }