protected void computeDiff()

in src/main/java/org/apache/sling/feature/diff/impl/BundlesComparator.java [34:56]


    protected void computeDiff(Artifacts previouses, Artifacts currents, Feature target) {
        for (Artifact previous : previouses) {
            Artifact current = currents.getSame(previous.getId());

            boolean add = false;

            if (current == null || (add = !previous.getId().equals(current.getId()))) {
                target.getPrototype().getBundleRemovals().add(previous.getId());
            }

            if (add) {
                target.getBundles().add(current);
            }
        }

        for (Artifact current : currents) {
            Artifact previous = previouses.getSame(current.getId());

            if (previous == null) {
                target.getBundles().add(current);
            }
        }
    }