*/
package org.opendaylight.yangtools.yang.data.codec.gson;
-import static org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter.UNKNOWN_SIZE;
-
import java.io.IOException;
-
-import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
+import org.opendaylight.yangtools.yang.data.api.schema.stream.SchemaAwareNormalizedNodeStreamWriter;
import org.opendaylight.yangtools.yang.model.api.ChoiceCaseNode;
-import org.opendaylight.yangtools.yang.model.api.ChoiceNode;
+import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode;
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
/**
private CaseNodeDataWithSchema caseNodeDataWithSchema;
- public ChoiceNodeDataWithSchema(final ChoiceNode schema) {
+ public ChoiceNodeDataWithSchema(final ChoiceSchemaNode schema) {
super(schema);
}
@Override
- public CompositeNodeDataWithSchema addCompositeChild(final DataSchemaNode schema) {
+ protected CompositeNodeDataWithSchema addCompositeChild(final DataSchemaNode schema) {
CaseNodeDataWithSchema newChild = new CaseNodeDataWithSchema((ChoiceCaseNode) schema);
caseNodeDataWithSchema = newChild;
addCompositeChild(newChild);
}
@Override
- protected void writeToStream(final NormalizedNodeStreamWriter nnStreamWriter) throws IOException {
- nnStreamWriter.startChoiceNode(provideNodeIdentifier(), UNKNOWN_SIZE);
- super.writeToStream(nnStreamWriter);
- nnStreamWriter.endNode();
+ public void write(final SchemaAwareNormalizedNodeStreamWriter writer) throws IOException {
+ writer.nextDataSchemaNode(getSchema());
+ writer.startChoiceNode(provideNodeIdentifier(), childSizeHint());
+ super.write(writer);
+ writer.endNode();
}
}