in src/main/java/org/apache/sling/distribution/journal/bookkeeper/BookKeeper.java [188:218]
public void invalidateCache(PackageMessage pkgMsg, long offset, Date createdTime, Date importStartTime) throws DistributionException {
log.debug("Invalidating the cache for the package {} at offset={}", pkgMsg, offset);
try (ResourceResolver resolver = getServiceResolver(SUBSERVICE_BOOKKEEPER)) {
Map<String, Object> props = this.buildProcessorPropertiesFromMessage(pkgMsg);
long invalidationStartTime = currentTimeMillis();
subscriberMetrics.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);
long currentImporturationMs = System.currentTimeMillis() - importStartTime.getTime();
log.info("Invalidated the cache for the package {} at offset={}. This took importDurationMs={}", pkgMsg, offset, currentImporturationMs);
subscriberMetrics.getPackageStatusCounter(pkgMsg.getPubAgentName(), Status.IMPORTED).increment();
subscriberMetrics.getInvalidationProcessDuration().update((currentTimeMillis() - invalidationStartTime), TimeUnit.MILLISECONDS);
subscriberMetrics.getInvalidationProcessSuccess().increment();
} catch (LoginException | PersistenceException | InvalidationProcessException | RuntimeException e) {
failure(pkgMsg, offset, createdTime, e);
}
}