Add MultipleEntryDataWithSchema interface
[yangtools.git] / yang / yang-data-util / src / main / java / org / opendaylight / yangtools / yang / data / util / ListNodeDataWithSchema.java
index 2cfd2470751a1227b70aba97d9c4f6e578bb1ed9..65f967d4affdf7af7d515e827fba13550b9fd0ad 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.yangtools.yang.data.util;
 
 import java.io.IOException;
-import org.opendaylight.yangtools.rfc7952.data.api.NormalizedMetadataStreamWriter;
+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.ListSchemaNode;
 
@@ -19,14 +19,14 @@ import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
  * <p>
  * Represents a YANG list node.
  */
-public class ListNodeDataWithSchema extends CompositeNodeDataWithSchema<ListSchemaNode> {
-
+public class ListNodeDataWithSchema extends CompositeNodeDataWithSchema<ListSchemaNode>
+        implements MultipleEntryDataWithSchema<ListEntryNodeDataWithSchema> {
     public ListNodeDataWithSchema(final ListSchemaNode schema) {
         super(schema);
     }
 
     @Override
-    public void write(final NormalizedNodeStreamWriter writer, final NormalizedMetadataStreamWriter metaWriter)
+    public void write(final NormalizedNodeStreamWriter writer, final StreamWriterMetadataExtension metaWriter)
             throws IOException {
         final ListSchemaNode schema = getSchema();
         writer.nextDataSchemaNode(schema);
@@ -41,4 +41,10 @@ public class ListNodeDataWithSchema extends CompositeNodeDataWithSchema<ListSche
         writer.endNode();
     }
 
+    @Override
+    public final ListEntryNodeDataWithSchema newChildEntry() {
+        final ListEntryNodeDataWithSchema child = ListEntryNodeDataWithSchema.forSchema(getSchema());
+        addChild(child);
+        return child;
+    }
 }