InstanceIdentifierContext does not take generics
[netconf.git] / restconf / restconf-nb-bierman02 / src / main / java / org / opendaylight / netconf / sal / rest / impl / NormalizedNodeXmlBodyWriter.java
index 48f4aa0806e8fe72f8e17dbfc498e5057ef390f9..39eecad79c1955c7d2c9e39ec90dfb92f33dcd4b 100644 (file)
@@ -32,7 +32,6 @@ import org.opendaylight.netconf.sal.rest.api.RestconfNormalizedNodeWriter;
 import org.opendaylight.netconf.sal.rest.api.RestconfService;
 import org.opendaylight.netconf.util.NetconfUtil;
 import org.opendaylight.restconf.common.context.InstanceIdentifierContext;
-import org.opendaylight.restconf.common.context.NormalizedNodeContext;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.DOMSourceAnyxmlNode;
@@ -53,8 +52,13 @@ import org.xml.sax.SAXException;
  */
 @Deprecated
 @Provider
-@Produces({ Draft02.MediaTypes.API + RestconfService.XML, Draft02.MediaTypes.DATA + RestconfService.XML,
-        Draft02.MediaTypes.OPERATION + RestconfService.XML, MediaType.APPLICATION_XML, MediaType.TEXT_XML })
+@Produces({
+    Draft02.MediaTypes.API + RestconfService.XML,
+    Draft02.MediaTypes.DATA + RestconfService.XML,
+    Draft02.MediaTypes.OPERATION + RestconfService.XML,
+    MediaType.APPLICATION_XML,
+    MediaType.TEXT_XML
+})
 public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<NormalizedNodeContext> {
 
     private static final XMLOutputFactory XML_FACTORY;
@@ -84,7 +88,7 @@ public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<Normalized
         for (final Entry<String, Object> entry : context.getNewHeaders().entrySet()) {
             httpHeaders.add(entry.getKey(), entry.getValue());
         }
-        final InstanceIdentifierContext<?> pathContext = context.getInstanceIdentifierContext();
+        final InstanceIdentifierContext pathContext = context.getInstanceIdentifierContext();
         if (context.getData() == null) {
             return;
         }
@@ -98,14 +102,14 @@ public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<Normalized
         } catch (final XMLStreamException | FactoryConfigurationError e) {
             throw new IllegalStateException(e);
         }
-        final NormalizedNode<?, ?> data = context.getData();
+        final NormalizedNode data = context.getData();
         final SchemaPath schemaPath = pathContext.getSchemaNode().getPath();
 
         writeNormalizedNode(xmlWriter, schemaPath, pathContext, data, context.getWriterParameters().getDepth());
     }
 
     private static void writeNormalizedNode(final XMLStreamWriter xmlWriter, final SchemaPath schemaPath,
-            final InstanceIdentifierContext<?> pathContext, NormalizedNode<?, ?> data, final @Nullable Integer depth)
+            final InstanceIdentifierContext pathContext, NormalizedNode data, final @Nullable Integer depth)
             throws IOException {
         final RestconfNormalizedNodeWriter nnWriter;
         final EffectiveModelContext schemaCtx = pathContext.getSchemaContext();
@@ -115,7 +119,7 @@ public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<Normalized
                 try {
                     writeElements(xmlWriter, nnWriter,
                             (ContainerNode) NetconfUtil.transformDOMSourceToNormalizedNode(schemaCtx,
-                                    ((DOMSourceAnyxmlNode)data).getValue()).getResult());
+                                    ((DOMSourceAnyxmlNode)data).body()).getResult());
                 } catch (XMLStreamException | URISyntaxException | SAXException e) {
                     throw new IOException("Cannot write anyxml", e);
                 }
@@ -131,7 +135,9 @@ public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<Normalized
             if (data instanceof MapEntryNode) {
                 // Restconf allows returning one list item. We need to wrap it
                 // in map node in order to serialize it properly
-                data = ImmutableNodes.mapNodeBuilder(data.getNodeType()).addChild((MapEntryNode) data).build();
+                data = ImmutableNodes.mapNodeBuilder(data.getIdentifier().getNodeType())
+                    .addChild((MapEntryNode) data)
+                    .build();
             }
             nnWriter.write(data);
         }
@@ -151,12 +157,12 @@ public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<Normalized
 
     private static void writeElements(final XMLStreamWriter xmlWriter, final RestconfNormalizedNodeWriter nnWriter,
             final ContainerNode data) throws IOException {
-        final QName name = data.getNodeType();
+        final QName name = data.getIdentifier().getNodeType();
         try {
             xmlWriter.writeStartElement(XMLConstants.DEFAULT_NS_PREFIX, name.getLocalName(),
                     name.getNamespace().toString());
             xmlWriter.writeDefaultNamespace(name.getNamespace().toString());
-            for (final NormalizedNode<?,?> child : data.getValue()) {
+            for (final NormalizedNode child : data.body()) {
                 nnWriter.write(child);
             }
             nnWriter.flush();