private long readSyncToken()

in src/main/java/org/apache/sling/discovery/oak/cluster/ClusterReader.java [58:82]


    private long readSyncToken(String slingId) {
        if (slingId == null) {
            throw new IllegalStateException("slingId must not be null");
        }
        final Resource syncTokenNode = resourceResolver
                .getResource(config.getSyncTokenPath());
        if (syncTokenNode == null) {
            return -1;
        }
        final ValueMap resourceMap = syncTokenNode.adaptTo(ValueMap.class);
        if (resourceMap == null) {
            return -1;
        }
        final String syncTokenStr = resourceMap.get(slingId, String.class);
        if (syncTokenStr == null) {
            return -1;
        }
        try {
            return Long.parseLong(syncTokenStr);
        } catch (NumberFormatException nfe) {
            logger.warn(
                    "readSyncToken: unparsable (non long) syncToken: {}", syncTokenStr);
            return -1;
        }
    }