Add NormalizedNode.BuilderFactory
[yangtools.git] / codec / yang-data-codec-gson / src / main / java / org / opendaylight / yangtools / yang / data / codec / gson / JSONCodecFactory.java
index 76a1fc50ffa73a00a44e846f3f15d68f6dfd1254..f8a7c0fdf900b8d226d73ba7f972a9bf8e063c96 100644 (file)
@@ -26,6 +26,7 @@ import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
+import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode.BuilderFactory;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizationException;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizationResult;
 import org.opendaylight.yangtools.yang.data.impl.codec.AbstractIntegerStringCodec;
@@ -35,7 +36,7 @@ import org.opendaylight.yangtools.yang.data.impl.codec.BooleanStringCodec;
 import org.opendaylight.yangtools.yang.data.impl.codec.DecimalStringCodec;
 import org.opendaylight.yangtools.yang.data.impl.codec.EnumStringCodec;
 import org.opendaylight.yangtools.yang.data.impl.codec.StringStringCodec;
-import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
+import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNormalizedNodeStreamWriter;
 import org.opendaylight.yangtools.yang.data.impl.schema.NormalizationResultHolder;
 import org.opendaylight.yangtools.yang.data.util.codec.AbstractInputStreamNormalizer;
@@ -112,6 +113,8 @@ public abstract sealed class JSONCodecFactory extends AbstractInputStreamNormali
         }
     }
 
+    private static final BuilderFactory BUILDER_FACTORY = ImmutableNodes.builderFactory();
+
     private final @NonNull JSONInstanceIdentifierCodec iidCodec;
 
     @SuppressFBWarnings(value = "MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR",
@@ -280,7 +283,7 @@ public abstract sealed class JSONCodecFactory extends AbstractInputStreamNormali
                 throw NormalizationException.ofMessage("Expected name '" + expected + "', got '" + name + "'");
             }
 
-            final var builder = Builders.containerBuilder().withNodeIdentifier(containerName);
+            final var builder = BUILDER_FACTORY.newContainerBuilder().withNodeIdentifier(containerName);
 
             if (reader.peek() == JsonToken.BEGIN_OBJECT) {
                 try (var writer = ImmutableNormalizedNodeStreamWriter.from(builder)) {