in src/main/java/org/apache/sling/distribution/journal/impl/publisher/MessagingCacheCallback.java [92:104]
public QueueState getQueueState(String pubAgentName, String subAgentId) {
TopologyView view = discoveryService.getTopologyView();
State state = view.getState(subAgentId, pubAgentName);
if (state == null) {
return null;
}
ClearCallback editableCallback = offset -> sendClearCommand(pubAgentName, new AgentId(subAgentId), offset);
ClearCallback clearCallback = state.isEditable() ? editableCallback : null;
long curOffset = state.getOffset();
int headRetries = state.getRetries();
int maxRetries = state.getMaxRetries();
return new QueueState(curOffset, headRetries, maxRetries, clearCallback);
}