addBuilder() is called after previous check for seal from all callers,
who do not have any side-effects aside allocating arguments to
addBuilder().
Move the call to checkNotSealed() to addBuilder(), making the code
more straightforward and possibly preventing bugs from creeping in.
JIRA: CONTROLLER-1887
Change-Id: I127385378957deb7f38f1203870a0e52cd630644
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
@Override
public void startLeafSet(final NodeIdentifier nodeIdentifier, final int count) {
@Override
public void startLeafSet(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.leafSetBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startOrderedLeafSet(final NodeIdentifier nodeIdentifier, final int str) {
addBuilder(Builders.leafSetBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startOrderedLeafSet(final NodeIdentifier nodeIdentifier, final int str) {
addBuilder(Builders.orderedLeafSetBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
addBuilder(Builders.orderedLeafSetBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startContainerNode(final NodeIdentifier nodeIdentifier, final int count) {
@Override
public void startContainerNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.containerBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
addBuilder(Builders.containerBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startUnkeyedList(final NodeIdentifier nodeIdentifier, final int count) {
@Override
public void startUnkeyedList(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.unkeyedListBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startUnkeyedListItem(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.unkeyedListBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startUnkeyedListItem(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.unkeyedListEntryBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startMapNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.unkeyedListEntryBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startMapNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.mapBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startMapEntryNode(final NodeIdentifierWithPredicates nodeIdentifierWithPredicates, final int count) {
addBuilder(Builders.mapBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startMapEntryNode(final NodeIdentifierWithPredicates nodeIdentifierWithPredicates, final int count) {
addBuilder(Builders.mapEntryBuilder().withNodeIdentifier(nodeIdentifierWithPredicates),
nodeIdentifierWithPredicates);
}
@Override
public void startOrderedMapNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.mapEntryBuilder().withNodeIdentifier(nodeIdentifierWithPredicates),
nodeIdentifierWithPredicates);
}
@Override
public void startOrderedMapNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.orderedMapBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startChoiceNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.orderedMapBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startChoiceNode(final NodeIdentifier nodeIdentifier, final int count) {
addBuilder(Builders.choiceBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startAugmentationNode(final AugmentationIdentifier augmentationIdentifier) {
addBuilder(Builders.choiceBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
}
@Override
public void startAugmentationNode(final AugmentationIdentifier augmentationIdentifier) {
addBuilder(Builders.augmentationBuilder().withNodeIdentifier(augmentationIdentifier), augmentationIdentifier);
}
addBuilder(Builders.augmentationBuilder().withNodeIdentifier(augmentationIdentifier), augmentationIdentifier);
}
private NormalizedNodeBuilderWrapper addBuilder(final NormalizedNodeContainerBuilder<?, ?, ?, ?> builder,
final PathArgument identifier) {
private NormalizedNodeBuilderWrapper addBuilder(final NormalizedNodeContainerBuilder<?, ?, ?, ?> builder,
final PathArgument identifier) {
final DataSchemaContextNode<?> schemaNode;
final NormalizedNodeBuilderWrapper parent = stack.peek();
if (parent != null) {
final DataSchemaContextNode<?> schemaNode;
final NormalizedNodeBuilderWrapper parent = stack.peek();
if (parent != null) {