public void invalidateCache()

in src/main/java/org/apache/sling/distribution/journal/bookkeeper/BookKeeper.java [178:211]


    public void invalidateCache(PackageMessage pkgMsg, long offset) throws DistributionException {
        log.debug("Invalidating the cache for the package {} at offset={}", pkgMsg, offset);
        try (ResourceResolver resolver = getServiceResolver(SUBSERVICE_BOOKKEEPER)) {
            Map<String, Object> props = new HashMap<>();
            props.put(DISTRIBUTION_TYPE, pkgMsg.getReqType().name());
            props.put(DISTRIBUTION_PATHS, pkgMsg.getPaths());
            props.put(DISTRIBUTION_PACKAGE_ID, pkgMsg.getPkgId());

            long invalidationStartTime = currentTimeMillis();
            distributionMetricsService.getInvalidationProcessRequest().increment();

            invalidationProcessor.process(props);

            if (config.isEditable()) {
                storeStatus(resolver, new PackageStatus(Status.IMPORTED, offset, pkgMsg.getPubAgentName()));
            }

            storeOffset(resolver, offset);
            resolver.commit();

            clearPackageRetriesOnSuccess(pkgMsg);

            Event event = new AppliedEvent(pkgMsg, config.getSubAgentName()).toEvent();
            eventAdmin.postEvent(event);

            log.info("Invalidated the cache for the package {} at offset={}", pkgMsg, offset);

            distributionMetricsService.getPackageStatusCounter(Status.IMPORTED.name()).increment();
            distributionMetricsService.getInvalidationProcessDuration().update((currentTimeMillis() - invalidationStartTime), TimeUnit.MILLISECONDS);
            distributionMetricsService.getInvalidationProcessSuccess().increment();
        } catch (LoginException | PersistenceException | InvalidationProcessException e) {
            failure(pkgMsg, offset, e);
        }
    }