From 7c267c8be0334fb1367f360d03a88467650bf311 Mon Sep 17 00:00:00 2001 From: kostya05983 Date: Wed, 12 Jul 2023 13:55:25 +0700 Subject: [PATCH] Fix class path scaning on each deserialization --- .../jackson/datatype/jsonp/JsonPatchDeserializer.java | 6 ++++-- .../jackson/datatype/jsr353/JsonPatchDeserializer.java | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/jakarta-jsonp/src/main/java/com/fasterxml/jackson/datatype/jsonp/JsonPatchDeserializer.java b/jakarta-jsonp/src/main/java/com/fasterxml/jackson/datatype/jsonp/JsonPatchDeserializer.java index ac3da145..2b67c58d 100644 --- a/jakarta-jsonp/src/main/java/com/fasterxml/jackson/datatype/jsonp/JsonPatchDeserializer.java +++ b/jakarta-jsonp/src/main/java/com/fasterxml/jackson/datatype/jsonp/JsonPatchDeserializer.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.databind.deser.std.StdDeserializer; import com.fasterxml.jackson.databind.type.LogicalType; -import jakarta.json.Json; import jakarta.json.JsonPatch; +import jakarta.json.spi.JsonProvider; public class JsonPatchDeserializer extends StdDeserializer { @@ -30,6 +30,8 @@ public LogicalType logicalType() { public JsonPatch deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { - return Json.createPatch(jsonValueDeser._deserializeArray(p, ctxt)); + return provider.createPatch(jsonValueDeser._deserializeArray(p, ctxt)); } + + private final static JsonProvider provider = JsonProvider.provider(); } diff --git a/jsr-353/src/main/java/com/fasterxml/jackson/datatype/jsr353/JsonPatchDeserializer.java b/jsr-353/src/main/java/com/fasterxml/jackson/datatype/jsr353/JsonPatchDeserializer.java index 7d76e382..3edb12e5 100644 --- a/jsr-353/src/main/java/com/fasterxml/jackson/datatype/jsr353/JsonPatchDeserializer.java +++ b/jsr-353/src/main/java/com/fasterxml/jackson/datatype/jsr353/JsonPatchDeserializer.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.databind.exc.InvalidFormatException; import com.fasterxml.jackson.databind.type.LogicalType; -import javax.json.Json; import javax.json.JsonPatch; +import javax.json.spi.JsonProvider; import java.io.IOException; public class JsonPatchDeserializer extends StdDeserializer { @@ -31,6 +31,8 @@ public JsonPatch deserialize(JsonParser p, DeserializationContext ctxt) throws I throw InvalidFormatException.from(p, "JSON patch has to be an array of objects", p.getText(), handledType()); } - return Json.createPatch(jsonValueDeser._deserializeArray(p, ctxt)); + return provider.createPatch(jsonValueDeser._deserializeArray(p, ctxt)); } + + private final static JsonProvider provider = JsonProvider.provider(); }