X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=yang%2Fyang-data-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fdata%2Fimpl%2Fschema%2Fbuilder%2Fimpl%2FAbstractImmutableNormalizedNodeBuilder.java;h=bd8618049cda438934e655901e7b305325e080e2;hb=970923b5f47f7507ec78021965fa5df1a878af48;hp=ff6a2354ade52d09642319936c2f15ab33f89520;hpb=6e5d0f5533b9c7eb029f477a5fe2f74b0c8882e8;p=yangtools.git diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/AbstractImmutableNormalizedNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/AbstractImmutableNormalizedNodeBuilder.java index ff6a2354ad..bd8618049c 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/AbstractImmutableNormalizedNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/AbstractImmutableNormalizedNodeBuilder.java @@ -7,27 +7,38 @@ */ package org.opendaylight.yangtools.yang.data.impl.schema.builder.impl; -import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier; +import static com.google.common.base.Preconditions.checkState; +import static java.util.Objects.requireNonNull; + +import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder; -abstract class AbstractImmutableNormalizedNodeBuilder> - implements NormalizedNodeBuilder { +abstract class AbstractImmutableNormalizedNodeBuilder + implements NormalizedNodeBuilder { + private @Nullable I nodeIdentifier = null; + private @Nullable V value = null; + + protected final I getNodeIdentifier() { + checkState(nodeIdentifier != null, "Identifier has not been set"); + return nodeIdentifier; + } - protected V value; - protected I nodeIdentifier; + protected final V getValue() { + checkState(value != null, "Value has not been set"); + return value; + } @Override - public NormalizedNodeBuilder withValue(V value) { - this.value = value; + public NormalizedNodeBuilder withValue(final V withValue) { + this.value = requireNonNull(withValue); return this; } - @Override - public NormalizedNodeBuilder withNodeIdentifier(I nodeIdentifier) { - this.nodeIdentifier = nodeIdentifier; + public NormalizedNodeBuilder withNodeIdentifier(final I withNodeIdentifier) { + this.nodeIdentifier = requireNonNull(withNodeIdentifier); return this; } - }