Add support for reusable streaming
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / modification / WriteModification.java
index da1fb70485442cedeaa50b25cdc27bd49d252a09..609503f568cd64a2253571d10cad3118b13431e0 100644 (file)
@@ -19,6 +19,7 @@ import org.opendaylight.mdsal.dom.spi.store.DOMStoreWriteTransaction;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification;
+import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter;
 
 /**
  * WriteModification stores all the parameters required to write data to the specified path.
@@ -78,9 +79,9 @@ public class WriteModification extends AbstractModification {
         SerializationUtils.writeNodeAndPath(out, getPath(), data);
     }
 
-    public static WriteModification fromStream(final NormalizedNodeDataInput in, final short version)
-            throws IOException {
-        final NormalizedNode<?, ?> node = in.readNormalizedNode();
+    public static WriteModification fromStream(final NormalizedNodeDataInput in, final short version,
+            final ReusableImmutableNormalizedNodeStreamWriter writer) throws IOException {
+        final NormalizedNode<?, ?> node = in.readNormalizedNode(writer);
         final YangInstanceIdentifier path = in.readYangInstanceIdentifier();
         return new WriteModification(version, path, node);
     }