diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-11-23 16:07:43 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-11-23 16:12:51 +0100 |
commit | ef535f6c51393d945d9fe07de38de224d5ae443f (patch) | |
tree | 2f5976537a200aebbf6644b8e1ef93f2c669319d /container-search/src/main/java/com | |
parent | f966346429c85fc31c8ea962b518e02a19f77f46 (diff) |
jackson 2.16 changes some of its default settings so we consolidate our use of the ObjectMapper.
Unless special options are used, use a common instance, or create via factory metod.
Diffstat (limited to 'container-search/src/main/java/com')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/handler/Json2SingleLevelMap.java | 7 | ||||
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java | 14 |
2 files changed, 9 insertions, 12 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/handler/Json2SingleLevelMap.java b/container-search/src/main/java/com/yahoo/search/handler/Json2SingleLevelMap.java index 2fc032c0e44..d04ddc0c2ac 100644 --- a/container-search/src/main/java/com/yahoo/search/handler/Json2SingleLevelMap.java +++ b/container-search/src/main/java/com/yahoo/search/handler/Json2SingleLevelMap.java @@ -1,6 +1,7 @@ // Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.search.handler; +import ai.vespa.json.Jackson; import com.fasterxml.jackson.core.JsonFactoryBuilder; import com.fasterxml.jackson.core.JsonLocation; import com.fasterxml.jackson.core.JsonParseException; @@ -42,11 +43,9 @@ class Json2SingleLevelMap { } private static ObjectMapper createMapper() { - var jsonFactory = new JsonFactoryBuilder() + return Jackson.createMapper(new JsonFactoryBuilder() .streamReadConstraints(StreamReadConstraints.builder().maxStringLength(Integer.MAX_VALUE).build()) - .configure(JsonReadFeature.ALLOW_SINGLE_QUOTES, true) - .build(); - return new ObjectMapper(jsonFactory); + .configure(JsonReadFeature.ALLOW_SINGLE_QUOTES, true)); } Map<String, String> parse() { diff --git a/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java b/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java index 2a44250904b..e2fc5baa4e3 100644 --- a/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java +++ b/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java @@ -1,13 +1,13 @@ // Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.search.rendering; +import ai.vespa.json.Jackson; import com.fasterxml.jackson.core.JsonEncoding; import com.fasterxml.jackson.core.JsonFactory; import com.fasterxml.jackson.core.JsonFactoryBuilder; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.StreamReadConstraints; import com.fasterxml.jackson.core.TreeNode; -import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.base.Preconditions; import com.yahoo.container.logging.TraceRenderer; import com.yahoo.data.JsonProducer; @@ -177,11 +177,9 @@ public class JsonRenderer extends AsynchronousSectionedRenderer<Result> { } private static JsonFactory createGeneratorFactory() { - var factory = new JsonFactoryBuilder() - .streamReadConstraints(StreamReadConstraints.builder().maxStringLength(Integer.MAX_VALUE).build()) - .build(); - factory.setCodec(new ObjectMapper(factory).disable(FLUSH_AFTER_WRITE_VALUE)); - return factory; + return Jackson.createMapper(new JsonFactoryBuilder() + .streamReadConstraints(StreamReadConstraints.builder().maxStringLength(Integer.MAX_VALUE).build())) + .disable(FLUSH_AFTER_WRITE_VALUE).getFactory(); } @Override @@ -358,7 +356,7 @@ public class JsonRenderer extends AsynchronousSectionedRenderer<Result> { generator.writeNumberField(RELEVANCE, hit.getRelevance().getScore()); - if (hit.types().size() > 0) { + if (!hit.types().isEmpty()) { generator.writeArrayFieldStart(TYPES); for (String t : hit.types()) { generator.writeString(t); @@ -505,7 +503,7 @@ public class JsonRenderer extends AsynchronousSectionedRenderer<Result> { private boolean shouldRenderJsonCallback() { String jsonCallback = getJsonCallback(); - return jsonCallback != null && !"".equals(jsonCallback); + return jsonCallback != null && !jsonCallback.isEmpty(); } private String getJsonCallback() { |