Integrate RestconfNormalizedNodeWriter
[netconf.git] / restconf / restconf-nb / src / main / java / org / opendaylight / restconf / nb / rfc8040 / jersey / providers / XmlNormalizedNodeBodyWriter.java
index 3b1dda67a43cda73c388a88e0924df3c97cb11da..8da763cfcb2485f9a33fc71cc220b837377d9fd9 100644 (file)
@@ -16,8 +16,8 @@ import javax.xml.XMLConstants;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 import org.opendaylight.restconf.api.MediaTypes;
-import org.opendaylight.restconf.nb.rfc8040.jersey.providers.api.RestconfNormalizedNodeWriter;
-import org.opendaylight.restconf.nb.rfc8040.legacy.QueryParameters;
+import org.opendaylight.restconf.api.query.PrettyPrintParam;
+import org.opendaylight.restconf.nb.rfc8040.legacy.WriterParameters;
 import org.opendaylight.restconf.server.spi.FormattableBodySupport;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
@@ -33,8 +33,8 @@ import org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack.Inference
 @Produces({ MediaTypes.APPLICATION_YANG_DATA_XML, MediaType.APPLICATION_XML, MediaType.TEXT_XML })
 public final class XmlNormalizedNodeBodyWriter extends AbstractNormalizedNodeBodyWriter {
     @Override
-    void writeData(final SchemaInferenceStack stack, final QueryParameters writerParameters, final NormalizedNode data,
-            final OutputStream entityStream) throws IOException {
+    void writeData(final SchemaInferenceStack stack, final NormalizedNode data, final WriterParameters writerParameters,
+            final PrettyPrintParam prettyPrint, final OutputStream out) throws IOException {
         final boolean isRoot;
         if (!stack.isEmpty()) {
             stack.exit();
@@ -43,7 +43,7 @@ public final class XmlNormalizedNodeBodyWriter extends AbstractNormalizedNodeBod
             isRoot = true;
         }
 
-        final var xmlWriter = FormattableBodySupport.createXmlWriter(entityStream, writerParameters);
+        final var xmlWriter = FormattableBodySupport.createXmlWriter(out, prettyPrint);
         final var nnWriter = createNormalizedNodeWriter(xmlWriter, stack.toInference(), writerParameters);
         if (data instanceof MapEntryNode mapEntry) {
             // Restconf allows returning one list item. We need to wrap it
@@ -65,8 +65,8 @@ public final class XmlNormalizedNodeBodyWriter extends AbstractNormalizedNodeBod
     }
 
     private static RestconfNormalizedNodeWriter createNormalizedNodeWriter(final XMLStreamWriter xmlWriter,
-            final Inference inference, final QueryParameters writerParameters) {
-        return ParameterAwareNormalizedNodeWriter.forStreamWriter(
+            final Inference inference, final WriterParameters writerParameters) {
+        return RestconfNormalizedNodeWriter.forStreamWriter(
             XMLStreamNormalizedNodeStreamWriter.create(xmlWriter, inference),
             writerParameters.depth(), writerParameters.fields());
     }