From 26f97be06e796fbd152be49c5875e01a5656b4a7 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Thu, 31 Aug 2023 23:42:40 +0100 Subject: [PATCH] inherit GeneratorBase close --- .../jackson/dataformat/csv/CsvGenerator.java | 12 +++--------- .../dataformat/javaprop/JavaPropsGenerator.java | 13 +------------ .../jackson/dataformat/toml/TomlGenerator.java | 8 ++------ .../jackson/dataformat/yaml/YAMLGenerator.java | 11 +++-------- 4 files changed, 9 insertions(+), 35 deletions(-) diff --git a/csv/src/main/java/com/fasterxml/jackson/dataformat/csv/CsvGenerator.java b/csv/src/main/java/com/fasterxml/jackson/dataformat/csv/CsvGenerator.java index 224209ccc..007854d58 100644 --- a/csv/src/main/java/com/fasterxml/jackson/dataformat/csv/CsvGenerator.java +++ b/csv/src/main/java/com/fasterxml/jackson/dataformat/csv/CsvGenerator.java @@ -145,8 +145,6 @@ private Feature(boolean defaultState) { EMPTY_SCHEMA = CsvSchema.emptySchema(); } - protected final IOContext _ioContext; - /** * @since 2.16 */ @@ -246,8 +244,7 @@ private Feature(boolean defaultState) { public CsvGenerator(IOContext ctxt, int jsonFeatures, int csvFeatures, ObjectCodec codec, Writer out, CsvSchema schema) { - super(jsonFeatures, codec); - _ioContext = ctxt; + super(jsonFeatures, codec, ctxt); _streamWriteConstraints = ctxt.streamWriteConstraints(); _formatFeatures = csvFeatures; _schema = schema; @@ -261,8 +258,7 @@ public CsvGenerator(IOContext ctxt, int jsonFeatures, int csvFeatures, public CsvGenerator(IOContext ctxt, int jsonFeatures, int csvFeatures, ObjectCodec codec, CsvEncoder csvWriter) { - super(jsonFeatures, codec); - _ioContext = ctxt; + super(jsonFeatures, codec, ctxt); _streamWriteConstraints = ctxt.streamWriteConstraints(); _formatFeatures = csvFeatures; _writer = csvWriter; @@ -505,8 +501,6 @@ public final void flush() throws IOException { public void close() throws IOException { if (!isClosed()) { - super.close(); - // Let's mark row as closed, if we had any... finishRow(); @@ -516,7 +510,7 @@ public void close() throws IOException } _writer.close(_ioContext.isResourceManaged() || isEnabled(JsonGenerator.Feature.AUTO_CLOSE_TARGET), isEnabled(JsonGenerator.Feature.FLUSH_PASSED_TO_STREAM)); - _ioContext.close(); + super.close(); } } diff --git a/properties/src/main/java/com/fasterxml/jackson/dataformat/javaprop/JavaPropsGenerator.java b/properties/src/main/java/com/fasterxml/jackson/dataformat/javaprop/JavaPropsGenerator.java index cfb87d475..283cac465 100644 --- a/properties/src/main/java/com/fasterxml/jackson/dataformat/javaprop/JavaPropsGenerator.java +++ b/properties/src/main/java/com/fasterxml/jackson/dataformat/javaprop/JavaPropsGenerator.java @@ -36,8 +36,6 @@ public abstract class JavaPropsGenerator extends GeneratorBase /********************************************************** */ - protected final IOContext _ioContext; - /** * @since 2.16 */ @@ -80,8 +78,7 @@ public abstract class JavaPropsGenerator extends GeneratorBase public JavaPropsGenerator(IOContext ctxt, int stdFeatures, ObjectCodec codec) { - super(stdFeatures, codec, BOGUS_WRITE_CONTEXT); - _ioContext = ctxt; + super(stdFeatures, codec, ctxt, BOGUS_WRITE_CONTEXT); _streamWriteConstraints = ctxt.streamWriteConstraints(); _jpropContext = JPropWriteContext.createRootContext(); } @@ -222,14 +219,6 @@ public JsonGenerator overrideFormatFeatures(int values, int mask) { } /********************************************************** */ - @Override - public void close() throws IOException { - if (!isClosed()) { - super.close(); - _ioContext.close(); - } - } - // public void flush() throws IOException @Override diff --git a/toml/src/main/java/com/fasterxml/jackson/dataformat/toml/TomlGenerator.java b/toml/src/main/java/com/fasterxml/jackson/dataformat/toml/TomlGenerator.java index 36325e534..a56d8d51f 100644 --- a/toml/src/main/java/com/fasterxml/jackson/dataformat/toml/TomlGenerator.java +++ b/toml/src/main/java/com/fasterxml/jackson/dataformat/toml/TomlGenerator.java @@ -28,8 +28,6 @@ final class TomlGenerator extends GeneratorBase /********************************************************************** */ - protected final IOContext _ioContext; - /** * @since 2.16 */ @@ -86,8 +84,7 @@ final class TomlGenerator extends GeneratorBase */ public TomlGenerator(IOContext ioCtxt, int stdFeatures, int tomlFeatures, ObjectCodec codec, Writer out) { - super(stdFeatures, codec); - _ioContext = ioCtxt; + super(stdFeatures, codec, ioCtxt); _streamWriteConstraints = ioCtxt.streamWriteConstraints(); _tomlFeatures = tomlFeatures; _streamWriteContext = TomlWriteContext.createRootContext(); @@ -121,7 +118,6 @@ public Version version() { @Override public void close() throws IOException { if (!isClosed()) { - super.close(); _flushBuffer(); _outputTail = 0; // just to ensure we don't think there's anything buffered @@ -135,7 +131,7 @@ public void close() throws IOException { } // Internal buffer(s) generator has can now be released as well _releaseBuffers(); - _ioContext.close(); + super.close(); } } diff --git a/yaml/src/main/java/com/fasterxml/jackson/dataformat/yaml/YAMLGenerator.java b/yaml/src/main/java/com/fasterxml/jackson/dataformat/yaml/YAMLGenerator.java index 8a5a62a66..2d9786e9e 100644 --- a/yaml/src/main/java/com/fasterxml/jackson/dataformat/yaml/YAMLGenerator.java +++ b/yaml/src/main/java/com/fasterxml/jackson/dataformat/yaml/YAMLGenerator.java @@ -226,8 +226,6 @@ private Feature(boolean defaultState) { /********************************************************************** */ - protected final IOContext _ioContext; - /** * @since 2.16 */ @@ -298,8 +296,7 @@ public YAMLGenerator(IOContext ctxt, int jsonFeatures, int yamlFeatures, org.yaml.snakeyaml.DumperOptions.Version version) throws IOException { - super(jsonFeatures, codec); - _ioContext = ctxt; + super(jsonFeatures, codec, ctxt); _streamWriteConstraints = ctxt.streamWriteConstraints(); _formatFeatures = yamlFeatures; _quotingChecker = (quotingChecker == null) @@ -324,8 +321,7 @@ public YAMLGenerator(IOContext ctxt, int jsonFeatures, int yamlFeatures, org.yaml.snakeyaml.DumperOptions dumperOptions) throws IOException { - super(jsonFeatures, codec); - _ioContext = ctxt; + super(jsonFeatures, codec, ctxt); _streamWriteConstraints = ctxt.streamWriteConstraints(); _formatFeatures = yamlFeatures; _quotingChecker = (quotingChecker == null) @@ -567,7 +563,6 @@ public void close() throws IOException _emitEndDocument(); _emit(new StreamEndEvent(null, null)); - super.close(); /* 25-Nov-2008, tatus: As per [JACKSON-16] we are not to call close() * on the underlying Reader, unless we "own" it, or auto-closing @@ -583,7 +578,7 @@ public void close() throws IOException _writer.flush(); } } - _ioContext.close(); + super.close(); } }