public static View getEstablishedView()

in src/main/java/org/apache/sling/discovery/impl/common/ViewHelper.java [87:118]


    public static View getEstablishedView(final ResourceResolver resourceResolver, final Config config) {
        final Resource establishedParent = resourceResolver
                .getResource(config.getEstablishedViewPath());
        if (establishedParent == null) {
            logger.debug("getEstablishedView: no established view found: {}", config.getEstablishedViewPath());
            return null;
        }
        final Iterable<Resource> children = establishedParent.getChildren();
        if (children == null) {
            logger.debug("getEstablishedView: no children found of {}", establishedParent);
            return null;
        }
        final Iterator<Resource> it = children.iterator();
        if (!it.hasNext()) {
            logger.debug("getEstablishedView: no it of children of {}", establishedParent);
            return null;
        }
        Resource establishedView = it.next();
        if (!it.hasNext()) {
            return new View(establishedView);
        }
        // emergency cleanup in case there is more than one established view:
        while (true) {
            logger.error("getEstablishedView: more than one established view encountered! Removing: "
                    + establishedView);
            new View(establishedView).remove(false);
            if (!it.hasNext()) {
                return null;
            }
            establishedView = it.next();
        }
    }