[comment-loader-extension] Introduce comment loader extension

This commit is contained in:
2025-08-05 18:15:53 +02:00
parent 32831c7c22
commit 6f2e715b2a
13 changed files with 467 additions and 4 deletions

View File

@@ -21,5 +21,7 @@ public interface CommentExtension extends TweedExtension {
void setBaseComment(ConfigEntry<?> configEntry, String baseComment);
void recomputeFullComments();
@Nullable String getFullComment(ConfigEntry<?> configEntry);
}

View File

@@ -65,9 +65,16 @@ public class CommentExtensionImpl implements ReadWriteRelatedExtension, CommentE
}
@Override
public void initEntry(ConfigEntry<?> configEntry) {
CustomEntryData entryData = getOrCreateCustomEntryData(configEntry);
entryData.commentProducer(middlewareContainer.process(entry -> entryData.baseComment()));
public void initialize() {
recomputeFullComments();
}
@Override
public void recomputeFullComments() {
configContainer.rootEntry().visitInOrder(entry -> {
CustomEntryData entryData = getOrCreateCustomEntryData(entry);
entryData.commentProducer(middlewareContainer.process(_entry -> entryData.baseComment()));
});
}
private CustomEntryData getOrCreateCustomEntryData(ConfigEntry<?> entry) {