in src/main/java/org/apache/sling/distribution/journal/bookkeeper/BookKeeper.java [111:137]
public BookKeeper(ResourceResolverFactory resolverFactory, SubscriberMetrics subscriberMetrics,
PackageHandler packageHandler, EventAdmin eventAdmin, Consumer<PackageStatusMessage> sender, Consumer<LogMessage> logSender,
BookKeeperConfig config,
ImportPreProcessor importPreProcessor,
ImportPostProcessor importPostProcessor,
InvalidationProcessor invalidationProcessor) {
this.packageHandler = packageHandler;
this.eventAdmin = eventAdmin;
this.sender = sender;
this.logSender = logSender;
this.config = config;
subscriberMetrics.currentRetries(packageRetries::getSum);
this.resolverFactory = resolverFactory;
this.subscriberMetrics = subscriberMetrics;
// Error queues are enabled when the number
// of retry attempts is limited ; disabled otherwise
this.errorQueueEnabled = (config.getMaxRetries() >= 0);
this.statusStore = new LocalStore(resolverFactory, STORE_TYPE_STATUS, config.getSubAgentName());
this.processedOffsets = new LocalStore(resolverFactory, config.getPackageNodeName(), config.getSubAgentName());
this.clearStore = new LocalStore(resolverFactory, config.getCommandNodeName(), config.getSubAgentName());
this.importPreProcessor = importPreProcessor;
this.importPostProcessor = importPostProcessor;
this.invalidationProcessor = invalidationProcessor;
log.info("Started bookkeeper {}.", config);
}