public LocalClusterView getLocalClusterView()

in src/main/java/org/apache/sling/discovery/oak/cluster/OakClusterViewService.java [133:165]


    public LocalClusterView getLocalClusterView() throws UndefinedClusterViewException {
        logger.trace("getLocalClusterView: start");
        ResourceResolver resourceResolver = null;
        try {
            DiscoveryLiteDescriptor descriptor = null;
            try{
                resourceResolver = getResourceResolver();
                descriptor = DiscoveryLiteDescriptor.getDescriptorFrom(resourceResolver);
            } catch (Exception e) {
                // SLING-10204 : log less noisy as this can legitimately happen
                logger.warn("getLocalClusterView: got Exception (enable debug logging to see stacktrace) : " + e);
                logger.debug("getLocalClusterView: Exception stacktrace", e);
                throw new UndefinedClusterViewException(Reason.REPOSITORY_EXCEPTION, "Exception while processing descriptor: "+e);
            }
            if (lastSeqNum!=descriptor.getSeqNum()) {
                logger.info("getLocalClusterView: sequence number change detected - clearing idmap cache");
                idMapService.clearCache();
                lastSeqNum = descriptor.getSeqNum();
            }
            return asClusterView(descriptor, resourceResolver);
        } catch (UndefinedClusterViewException e) {
            logger.info("getLocalClusterView: undefined clusterView: "+e.getReason()+" - "+e.getMessage());
            throw e;
        } catch (Exception e) {
            logger.error("getLocalClusterView: repository exception: "+e, e);
            throw new UndefinedClusterViewException(Reason.REPOSITORY_EXCEPTION, "Exception while processing descriptor: "+e);
        } finally {
            logger.trace("getLocalClusterView: end");
            if (resourceResolver!=null) {
                resourceResolver.close();
            }
        }
    }