[serde-*] Make data readers and writers AutoCloseable

This commit is contained in:
2025-08-03 20:36:28 +02:00
parent 1fc418970f
commit 7ce3aaac06
16 changed files with 117 additions and 63 deletions

View File

@@ -3,8 +3,9 @@ package de.siphalor.tweed5.defaultextensions.comment.impl;
import de.siphalor.tweed5.core.api.entry.ConfigEntry;
import de.siphalor.tweed5.core.api.middleware.Middleware;
import de.siphalor.tweed5.data.extension.api.TweedEntryWriter;
import de.siphalor.tweed5.dataapi.api.DelegatingTweedDataVisitor;
import de.siphalor.tweed5.dataapi.api.DelegatingTweedDataWriter;
import de.siphalor.tweed5.dataapi.api.TweedDataVisitor;
import de.siphalor.tweed5.dataapi.api.TweedDataWriter;
import de.siphalor.tweed5.dataapi.api.decoration.TweedDataCommentDecoration;
import de.siphalor.tweed5.dataapi.api.decoration.TweedDataDecoration;
import de.siphalor.tweed5.patchwork.api.PatchworkPartAccess;
@@ -48,7 +49,7 @@ class TweedEntryWriterCommentMiddleware implements Middleware<TweedEntryWriter<?
};
}
private static class MapEntryKeyDeferringWriter extends DelegatingTweedDataVisitor {
private static class MapEntryKeyDeferringWriter extends DelegatingTweedDataWriter {
private final Deque<TweedDataDecoration> decorationQueue = new ArrayDeque<>();
private @Nullable String mapEntryKey;

View File

@@ -36,4 +36,9 @@ public class PathTrackingDataReader implements TweedDataReader {
}
return token;
}
@Override
public void close() throws Exception {
delegate.close();
}
}

View File

@@ -6,6 +6,7 @@ import de.siphalor.tweed5.core.api.middleware.Middleware;
import de.siphalor.tweed5.data.extension.api.*;
import de.siphalor.tweed5.data.extension.api.extension.ReadWriteExtensionSetupContext;
import de.siphalor.tweed5.data.extension.api.extension.ReadWriteRelatedExtension;
import de.siphalor.tweed5.dataapi.api.DelegatingTweedDataWriter;
import de.siphalor.tweed5.dataapi.api.TweedDataReader;
import de.siphalor.tweed5.dataapi.api.TweedDataVisitor;
import de.siphalor.tweed5.defaultextensions.pather.api.PathTracking;