X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fcommands%2FReadTransactionSuccessProxyV1.java;h=f755d3ef86bab2dbf219b548cc5e97f2ae901817;hp=dafc26b125471e026a755c0706763d14b10351e9;hb=b998131396132a7630f271f9baea225b45fde789;hpb=db9a673c114febc785fbd324947ac2c3e3095d06 diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessProxyV1.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessProxyV1.java index dafc26b125..f755d3ef86 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessProxyV1.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessProxyV1.java @@ -7,13 +7,14 @@ */ package org.opendaylight.controller.cluster.access.commands; -import com.google.common.base.Optional; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; +import java.util.Optional; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeDataOutput; import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeInputOutput; +import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeStreamVersion; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; /** @@ -24,7 +25,9 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; */ final class ReadTransactionSuccessProxyV1 extends AbstractTransactionSuccessProxy { private static final long serialVersionUID = 1L; + private Optional> data; + private transient NormalizedNodeStreamVersion streamVersion; // checkstyle flags the public modifier as redundant however it is explicitly needed for Java serialization to // be able to create instances via reflection. @@ -36,6 +39,7 @@ final class ReadTransactionSuccessProxyV1 extends AbstractTransactionSuccessProx ReadTransactionSuccessProxyV1(final ReadTransactionSuccess request) { super(request); this.data = request.getData(); + this.streamVersion = request.getVersion().getStreamVersion(); } @Override @@ -44,7 +48,7 @@ final class ReadTransactionSuccessProxyV1 extends AbstractTransactionSuccessProx if (data.isPresent()) { out.writeBoolean(true); - try (NormalizedNodeDataOutput nnout = NormalizedNodeInputOutput.newDataOutput(out)) { + try (NormalizedNodeDataOutput nnout = NormalizedNodeInputOutput.newDataOutput(out, streamVersion)) { nnout.writeNormalizedNode(data.get()); } } else { @@ -59,7 +63,7 @@ final class ReadTransactionSuccessProxyV1 extends AbstractTransactionSuccessProx if (in.readBoolean()) { data = Optional.of(NormalizedNodeInputOutput.newDataInput(in).readNormalizedNode()); } else { - data = Optional.absent(); + data = Optional.empty(); } }