Disconnect NormalizedNodeBuilder from Builder 29/99329/1
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 17 Jan 2022 16:28:15 +0000 (17:28 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 17 Jan 2022 16:30:55 +0000 (17:30 +0100)
concepts.Builder is going away, disconnect it from
NormalizedNodeBuilder.

Change-Id: I2e4f07a81695f23bc9833708af5905efc8acb5aa
JIRA: YANGTOOLS-1327
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
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();
 }