Disconnect NormalizedNodeBuilder from Builder
[yangtools.git] / data / yang-data-api / src / main / java / org / opendaylight / yangtools / yang / data / api / schema / builder / NormalizedNodeBuilder.java
index b85c3553fe7ba1f2c3008f22b11aa8edc4cde3f1..d6ed91cea2084dbe9ca33d30bb98f612c0160352 100644 (file)
@@ -9,17 +9,22 @@ package org.opendaylight.yangtools.yang.data.api.schema.builder;
 
 import com.google.common.annotations.Beta;
 import org.eclipse.jdt.annotation.NonNull;
-import org.opendaylight.yangtools.concepts.Builder;
+import org.opendaylight.yangtools.concepts.Mutable;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
 @Beta
-public interface NormalizedNodeBuilder<I extends PathArgument, V, R extends NormalizedNode> extends Builder<R> {
+public interface NormalizedNodeBuilder<I extends PathArgument, V, R extends NormalizedNode> extends Mutable {
 
     @NonNull NormalizedNodeBuilder<I, V, R> withValue(V value);
 
     @NonNull NormalizedNodeBuilder<I, V, R> withNodeIdentifier(I nodeIdentifier);
 
-    @Override
-    R build();
+    /**
+     * Return an implementation of the {@link R} NormalizedNode contract.
+     *
+     * @return A built NormalizedNode
+     * @throws IllegalStateException if this builder does not have sufficient state
+     */
+    @NonNull R build();
 }