Partially revert "Adjust for RPCService methods changing"
[controller.git] / opendaylight / md-sal / sal-remoterpc-connector / src / main / java / org / opendaylight / controller / remote / rpc / messages / ExecuteAction.java
index 5f9d99f698688d58d483ff751f02061a610908b9..4fb9c614298799f82167dc745ad4485eca201c49 100644 (file)
@@ -16,13 +16,13 @@ import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 import org.eclipse.jdt.annotation.NonNull;
-import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeDataInput;
-import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeDataOutput;
-import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeInputOutput;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.mdsal.dom.api.DOMDataTreeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
+import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataInput;
+import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataOutput;
+import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 
 public final class ExecuteAction extends AbstractExecute<@NonNull ContainerNode> {
@@ -73,9 +73,9 @@ public final class ExecuteAction extends AbstractExecute<@NonNull ContainerNode>
 
         @Override
         public void writeExternal(final ObjectOutput out) throws IOException {
-            try (NormalizedNodeDataOutput stream = NormalizedNodeInputOutput.newDataOutput(out)) {
+            try (NormalizedNodeDataOutput stream = NormalizedNodeStreamVersion.current().newDataOutput(out)) {
                 stream.writeSchemaPath(executeAction.getType());
-                // FIXME: deal with data store types?
+                executeAction.getPath().getDatastoreType().writeTo(out);
                 stream.writeYangInstanceIdentifier(executeAction.getPath().getRootIdentifier());
                 stream.writeOptionalNormalizedNode(executeAction.getInput());
             }
@@ -83,13 +83,13 @@ public final class ExecuteAction extends AbstractExecute<@NonNull ContainerNode>
 
         @Override
         public void readExternal(final ObjectInput in) throws IOException {
-            final NormalizedNodeDataInput stream = NormalizedNodeInputOutput.newDataInput(in);
+            final NormalizedNodeDataInput stream = NormalizedNodeDataInput.newDataInput(in);
             final SchemaPath name = stream.readSchemaPath();
+            final LogicalDatastoreType type = LogicalDatastoreType.readFrom(in);
             final YangInstanceIdentifier path = stream.readYangInstanceIdentifier();
             final ContainerNode input = (ContainerNode) stream.readOptionalNormalizedNode().orElse(null);
 
-            executeAction = new ExecuteAction(name, new DOMDataTreeIdentifier(LogicalDatastoreType.OPERATIONAL, path),
-                input);
+            executeAction = new ExecuteAction(name, new DOMDataTreeIdentifier(type, path), input);
         }
 
         private Object readResolve() {