Merge branch 'master' of ../controller
[yangtools.git] / yang / yang-data-util / src / main / java / org / opendaylight / yangtools / yang / data / util / ContainerNodeDataWithSchema.java
index 9a61c0cef9a6e8054ffc038cd45854dd82193218..e70d2786c61557704f653b664307cc0a329b37a8 100644 (file)
@@ -8,9 +8,7 @@
 package org.opendaylight.yangtools.yang.data.util;
 
 import java.io.IOException;
-import java.util.Map;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamAttributeWriter;
+import org.opendaylight.yangtools.rfc7952.data.api.StreamWriterMetadataExtension;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
 
@@ -21,25 +19,21 @@ import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
  * <p>
  * Represents a YANG container node.
  */
-public class ContainerNodeDataWithSchema extends CompositeNodeDataWithSchema<ContainerSchemaNode> {
+public class ContainerNodeDataWithSchema extends AbstractMountPointDataWithSchema<ContainerSchemaNode> {
 
     public ContainerNodeDataWithSchema(final ContainerSchemaNode schema) {
         super(schema);
     }
 
     @Override
-    public void write(final NormalizedNodeStreamWriter writer) throws IOException {
+    public void write(final NormalizedNodeStreamWriter writer, final StreamWriterMetadataExtension metaWriter)
+            throws IOException {
         writer.nextDataSchemaNode(getSchema());
 
         writer.startContainerNode(provideNodeIdentifier(), childSizeHint());
-        if (writer instanceof NormalizedNodeStreamAttributeWriter) {
-            final Map<QName, String> attrs = getAttributes();
-            if (attrs != null) {
-                ((NormalizedNodeStreamAttributeWriter) writer).attributes(attrs);
-            }
-        }
+        writeMetadata(metaWriter);
 
-        super.write(writer);
+        super.write(writer, metaWriter);
         writer.endNode();
     }
 }