Add schema-aware builders
[yangtools.git] / data / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / builder / impl / ImmutableContainerNodeBuilder.java
index 35abfd734fbbd23653cf8df9092b18afe2df4b01..41b30f55466f668eff45671bb7a01ad37ccb510e 100644 (file)
@@ -14,6 +14,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.nodes.AbstractImmutableDataContainerNode;
+import org.opendaylight.yangtools.yang.model.api.ContainerLike;
 
 public class ImmutableContainerNodeBuilder
         extends AbstractImmutableDataContainerNodeBuilder<NodeIdentifier, ContainerNode> {
@@ -44,6 +45,20 @@ public class ImmutableContainerNodeBuilder
         return new ImmutableContainerNodeBuilder((ImmutableContainerNode) node);
     }
 
+    @Deprecated(since = "6.0.7", forRemoval = true)
+    public static @NonNull DataContainerNodeBuilder<NodeIdentifier, ContainerNode> create(final ContainerLike schema) {
+        return new SchemaAwareImmutableContainerNodeBuilder(schema);
+    }
+
+    @Deprecated(since = "6.0.7", forRemoval = true)
+    public static @NonNull DataContainerNodeBuilder<NodeIdentifier, ContainerNode> create(final ContainerLike schema,
+            final ContainerNode node) {
+        if (!(node instanceof ImmutableContainerNode)) {
+            throw new UnsupportedOperationException("Cannot initialize from class " + node.getClass());
+        }
+        return new SchemaAwareImmutableContainerNodeBuilder(schema, (ImmutableContainerNode)node);
+    }
+
     @Override
     public ContainerNode build() {
         return new ImmutableContainerNode(getNodeIdentifier(), buildValue());