public class ImmutableNormalizedNodeStreamWriter extends Object implements org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter
NormalizedNodeStreamWriter, which constructs immutable instances of
NormalizedNodes.
This writer supports two modes of behaviour one is using from(NormalizedNodeResult) where resulting
NormalizedNode will be stored in supplied result object.
Other mode of operation is using from(NormalizedNodeContainerBuilder), where all created nodes will be
written to this builder.
| Modifier and Type | Class and Description |
|---|---|
protected static class |
ImmutableNormalizedNodeStreamWriter.NormalizedNodeResultBuilder |
| Modifier | Constructor and Description |
|---|---|
protected |
ImmutableNormalizedNodeStreamWriter(NormalizedNodeContainerBuilder topLevelBuilder) |
protected |
ImmutableNormalizedNodeStreamWriter(NormalizedNodeResult result) |
| Modifier and Type | Method and Description |
|---|---|
void |
anyxmlNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
Object value) |
void |
close() |
void |
endNode() |
void |
flush() |
static org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter |
from(NormalizedNodeContainerBuilder<?,?,?,?> builder)
Creates a
NormalizedNodeStreamWriter which creates instances of supplied NormalizedNodes
and writes them to supplied builder as child nodes. |
static org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter |
from(NormalizedNodeResult result)
Creates a
NormalizedNodeStreamWriter which creates one instance of top-level NormalizedNode
(type of NormalizedNode) is determined by first start event. |
protected Deque<NormalizedNodeContainerBuilder> |
getBuilders() |
protected NormalizedNodeContainerBuilder |
getCurrent() |
void |
leafNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
Object value) |
void |
leafSetEntryNode(org.opendaylight.yangtools.yang.common.QName name,
Object value) |
void |
nextDataSchemaNode(org.opendaylight.yangtools.yang.model.api.DataSchemaNode schema) |
void |
startAugmentationNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier identifier) |
void |
startChoiceNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startContainerNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startLeafSet(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startMapEntryNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates identifier,
int childSizeHint) |
void |
startMapNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startOrderedLeafSet(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startOrderedMapNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startUnkeyedList(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startUnkeyedListItem(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
void |
startYangModeledAnyXmlNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint) |
protected void |
writeChild(org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> child) |
protected ImmutableNormalizedNodeStreamWriter(NormalizedNodeContainerBuilder topLevelBuilder)
protected ImmutableNormalizedNodeStreamWriter(NormalizedNodeResult result)
public static org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter from(NormalizedNodeContainerBuilder<?,?,?,?> builder)
NormalizedNodeStreamWriter which creates instances of supplied NormalizedNodes
and writes them to supplied builder as child nodes.
Type of supplied NormalizedNodeContainerBuilder affects, which events could be emitted in order
to ensure proper construction of data.
builder - Builder to which data will be written.NormalizedNodeStreamWriter which writes datapublic static org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter from(NormalizedNodeResult result)
NormalizedNodeStreamWriter which creates one instance of top-level NormalizedNode
(type of NormalizedNode) is determined by first start event.
Result is built when endNode() associated with that start event is emitted.
Writer properly creates also nested NormalizedNode instances, if their are supported inside the scope
of the first event.
This method is useful for clients, which knows there will be one top-level node written, but does not know which
type of NormalizedNode will be written.
result - NormalizedNodeResult object which will hold result value.NormalizedNodeStreamWriter which will write item to supplied result holder.protected Deque<NormalizedNodeContainerBuilder> getBuilders()
protected NormalizedNodeContainerBuilder getCurrent()
protected void writeChild(org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> child)
public void endNode()
endNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void leafNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
Object value)
leafNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startLeafSet(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startLeafSet in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void leafSetEntryNode(org.opendaylight.yangtools.yang.common.QName name,
Object value)
leafSetEntryNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startOrderedLeafSet(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startOrderedLeafSet in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void anyxmlNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
Object value)
anyxmlNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startContainerNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startContainerNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startYangModeledAnyXmlNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startYangModeledAnyXmlNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startUnkeyedList(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startUnkeyedList in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startUnkeyedListItem(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startUnkeyedListItem in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startMapNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startMapNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startMapEntryNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates identifier,
int childSizeHint)
startMapEntryNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startOrderedMapNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startOrderedMapNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startChoiceNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name,
int childSizeHint)
startChoiceNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void startAugmentationNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier identifier)
startAugmentationNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void flush()
public void close()
close in interface Closeableclose in interface AutoCloseableclose in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterpublic void nextDataSchemaNode(@Nonnull org.opendaylight.yangtools.yang.model.api.DataSchemaNode schema)
nextDataSchemaNode in interface org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriterCopyright © 2018 OpenDaylight. All rights reserved.